Самый эффективный способ хранить конкретную c модель данных в influenxdb? - PullRequest
0 голосов
/ 02 марта 2020

Каков наилучший / наиболее эффективный способ хранения данных в influenxdb? У меня есть следующая информация из нескольких установок (около 150+) в формате JSON:

  • Название завода
  • Адрес завода
  • Исторические данные
    • отметка времени 1
    • значение 1
    • значение 2
    • значение 3
    • отметка времени 2
    • значение 1
    • Значение 2
    • Значение 3
    • Отметка времени 3 (и т. Д.)
    • Значение 1
    • Значение 2
    • Значение 3

Несколько исторических отметок времени с данными хранятся в исторических данных.

Я хотел бы импортировать их в базу данных InfxDB для эффективной оценки. Как будет выглядеть лучший способ? Для каждого клиента (150+) одна запись (измерение) на значение? или разные базы данных?

Большое спасибо

1 Ответ

1 голос
/ 02 марта 2020
time  |tags                      |fields
time, plant_name, plant_address, value_1, value_2, value_3

По сути, плоская структура в одном измерении, где временная метка + сведения, относящиеся к заводу (в виде тегов), создают уникальный ключ для значений поля.

Если вы не предоставляете прямой доступ к данным клиентам можно было бы сохранить все их данные в одной базе данных или даже в одном измерении, добавив тег client_id к каждой точке данных. Но я бы go использовал отдельные базы данных, особенно если вам не нужно проводить анализ или сравнение данных между клиентами.

В общем, вы должны использовать как можно меньше деталей (метаданных) о растениях как бирках. В идеале вы должны использовать только plant_id в качестве тега. завод_имя, завод_адрес, et c. go попадет в реляционную базу данных, и вы получите их по запросу. Однако, в зависимости от вашего использования, вы можете захотеть сохранить некоторые детали в infldsb. В основном все, что вы хотите группировать или фильтровать по тегу. Однако помните, что значения тегов нельзя изменить. Если вы добавили много данных с помощью plant_name MyPlan и поняли, что сделали опечатку или клиент переименовал ее, вам придется удалить все данные и повторно импортировать их с правильным именем, чтобы устранить проблему. РЕДАКТИРОВАТЬ: С другой стороны, если вы не добавите имя_сетки в качестве тега, вам придется работать с идентификаторами в своих запросах и результатах. Вам нужно «обогатить» результаты именами, чтобы вы не задавались вопросом, что есть что.

...