#database-design #time-series
Вопрос:
Я разрабатываю решение для хранения данных, собранных с устройств, и в настоящее время обдумываю разработку схемы. В частности, моя проблема заключается в хранении экземпляров одной и той же метрики. Например, при сборе текущей загрузки процессора 8-ядерного чипа метрика «cpu_load» будет поступать в базу данных 8 раз за одну и ту же дату и время. Я хотел бы иметь следующую структуру таблицы временных рядов (пока не уверен, что временная шкала или база данных influx), но не уверен, как обрабатывать экземпляры одной и той же метрики:
- время,
- идентификатор устройства,
- metric_id,
- ценность
Я уверен, что это распространенный сценарий, но я не могу найти элегантного решения.
Ответ №1:
Я не уверен насчет элегантности, но здесь все просто.
Value
-----
Value ID
Device ID
Metric ID
Timestamp
Value
Где Идентификатор значения-это автоматически обновляемый целочисленный первичный ключ, и у вас есть уникальный индекс (Идентификатор устройства, идентификатор метрики, Временная метка по убыванию).