Поделиться через


Рекомендации по выбору идентификатора временных рядов

Заметка

Служба "Аналитика временных рядов" будет прекращена 7 июля 2024 года. Рассмотрите возможность переноса существующих сред в альтернативные решения как можно скорее. Более подробную информацию об устаревании и миграции см. в нашей документации .

В этой статье приведены сведения о важности идентификатора временных рядов для среды Аналитики временных рядов Azure 2-го поколения и рекомендации по выбору.

Выбор идентификатора временных рядов

Выбор соответствующего идентификатора временных рядов имеет решающее значение. Выбор идентификатора временных рядов похож на выбор ключа секции для базы данных. Это необходимо при создании среды Аналитики временных рядов Azure 2-го поколения.

Посмотрите руководство по настройке окружающей среды, чтобы получить подробное объяснение идентификатора временных рядов. Вы увидите два разных примера полезных данных телеметрии JSON и правильный выбор идентификатора временных рядов для каждого из них.

Важный

Идентификаторы временных рядов:

  • Свойство строкового типа, чувствительного к регистру: буквы и символы учитываются при поисках, сравнениях, обновлениях и секционировании.
  • Неизменяемое свойство : после создания его нельзя изменить.

Совет

Если источник событий является центром Интернета вещей, идентификатор временных рядов, скорее всего, будет iothub-connection-device-id. Если вы планируете использовать модели устройств IoT Plug and Play или используете их без компонентов, необходимо включить dt-subject в составе составного ключа в случае необходимости.

Ниже приведены основные рекомендации.

  • Выберите ключ раздела с большим количеством различных значений (например, сотни или тысячи). Во многих случаях это может быть идентификатор устройства, идентификатор датчика или идентификатор тега в JSON.
  • Идентификатор временного ряда должен быть уникальным на уровне конечного узла вашей модели временных рядов .
  • Ограничение символа для строки имени свойства идентификатора временных рядов равно 128. Для значения свойства идентификатора временных рядов ограничение символа равно 1024.
  • Если уникальное значение свойства для идентификатора временных рядов отсутствует, оно обрабатывается как значение NULL и следует тому же правилу ограничения уникальности.
  • Если идентификатор временного ряда вложен в сложный объект JSON, обязательно следуйте правилам преобразования вложенных структур данных , при указании имени свойства. Ознакомьтесь с примером B.
  • Вы также можете выбрать до трех ключевых свойств в качестве идентификатора временных рядов. Их сочетание будет составным ключом, который представляет идентификатор временных рядов.

    Заметка

    Три ключевых свойства должны быть строками. Вам пришлось бы выполнять запрос по этому составному ключу вместо одного свойства за раз.

Выбор нескольких свойств ключа

В следующих сценариях описывается выбор нескольких ключевых свойств в качестве идентификатора временных рядов.

Пример 1. Идентификатор временных рядов с уникальным ключом

  • У вас есть устаревшие парки активов. Каждый из них имеет уникальный ключ.
  • Один флот однозначно определяется свойством deviceId. Для другого флота уникальное свойство — objectId. Ни один флот не содержит уникального свойства другого флота. В этом примере вы выберете два ключа, deviceId и objectIdв качестве уникальных ключей.
  • Мы принимаем значения NULL, а отсутствие присутствия свойства в полезных данных события учитывается как значение NULL. Это также подходящий способ обработки отправки данных в два источника событий, где данные в каждом источнике событий имеют уникальный идентификатор временных рядов.

Пример 2. Идентификатор временных рядов с составным ключом

  • Требуется, чтобы несколько свойств были уникальными в одном флоте ресурсов.
  • Вы производитель умных зданий и развертываете датчики в каждой комнате. В каждой комнате обычно одинаковые значения для sensorId. Примерами являются датчик1, датчик2и датчик3.
  • В вашем здании есть пересекающиеся номера этажей и комнат в разных частях имущества flrRm. Эти числа имеют такие значения, как 1a, 2bи 3a.
  • У вас есть свойство, расположение, которое содержит такие значения, как Редмонд, Барселонаи Токио. Чтобы создать уникальность, вы назначаете следующие три свойства в качестве ключей идентификатора временных рядов: sensorId, flrRmи местоположение.

Пример необработанного события:

{
  "sensorId": "sensor1",
  "flrRm": "1a",
  "location": "Redmond",
  "temperature": 78
}

На портале Azure можно ввести составной ключ следующим образом:

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

Заметка

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

Дальнейшие действия

  • Прочтите правила свёртки и экранирования JSON , чтобы понять, как будут храниться события.

  • Запланируйте среду Azure Time Series Insights Gen2.