Skip to content
Данил Козловский edited this page Apr 6, 2023 · 2 revisions

Библиотека Core содержит модели, контроллеры, различные утилиты - для соединения с системными сервисами - PostgreSQL, S3, Redis
C++Go lang

Структура БД (pgSQL):

Таблицы:

  • classes
  • clients
  • datasets
  • clientsClasses
  • dsExamples
  • stats
  • telemetry

таблица сlasses

ПолеТипДоп параметрыОписание
idintautoincrement NOT NULL-
classvarchar(255)NOT NULLНазвание класса

таблица clients

ПолеТипДоп параметрыОписание
idintautoincrement NOT NULL-
clientNamevarchar(255)NOT NULLСистемное название
nametextNOT NULLЛокализованное название
ipAddrvarchar(255)NOT NULLIP адрес

таблица datasets

ПолеТипДоп параметрыОписание
idintautoincrement NOT NULL-
fileNametextNOT NULLНазвание файла(прим. изображения)/ "-" если данные не файл
statusintNOT NULLСтатус обработки изображения, может принимать значения:
0 - ожидаемый и опознанный классы в статистике совпадают, разметка имеется
1 - классы в статистике не совпадают, разметка имеется
2 - не распознан разметчиком, разметка отсутствует
3 - отфильтрованные выбросы
4 - проверенное человеком изображение
classIdvarchar(255)NOT NULLИдентификатор класса
xintNOT NULLКоордината Х области разметки
yintNOT NULLКоордината Y области разметки
wintNOT NULLШирина области разметки
hintNOT NULLВысота области разметки

таблица clientsClasses

ПолеТипДоп параметры
idintautoincrement NOT NULL
classIdintNOT NULL
clientIdintNOT NULL

таблица dsExamples

ПолеТипДоп параметрыОписание
idintautoincrement NOT NULL-
classIdvarchar(255)NOT NULLИдентификатор класса
datatextNOT NULLДанные, текст, изображение(Base64)

таблица stats

ПолеТипДоп параметрыОписание
idintautoincrement NOT NULL-
waitClassvarchar(255)NOT NULLОжидаемый класс (может принимать значение "-", значит, что клиент не имеет ожидаемого класса)
detectedClassvarchar(255)NOT NULLРаспознанный класс
probefloatNOT NULL% выданный детектором
timestampbigintNOT NULLМетка времени, она же является именем изображения в хранилище
notetextNOT NULLПримечание, доп. данные, которые собираются детектором с СУ
clientIdintNOT NULLИдентификатор клиента
statusintNOT NULLСтатус обработки ошибки, может принимать значения:
0 - не ошибка
1 - ошибка еще не обработана
2 - ошибка детектора
3 - нарушение ожидаемого класса
inDatasettinyIntNOT NULLСодержится ли данный элемент в наборе данных

таблица telemetry

ПолеТипДоп параметрыОписание
idintautoincrement NOT NULL-
classIdvarchar(255)NOT NULLИдентификатор класса
datatextNOT NULLJSON данные, текущее состояние CPU, GPU, RAM