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


Поддерживаемые типы данных

Примечание.

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

В следующей таблице перечислены типы данных, поддерживаемые службой "Аналитика временных рядов Azure" 2-го поколения

Тип данных Description Пример Синтаксис выражения временных рядов Имя столбца свойств в Parquet
bool Тип данных, имеющий одно из двух состояний: true или false. "isQuestionable" : true $event.isQuestionable.Bool или $event['isQuestionable'].Bool isQuestionable_bool
datetime Представляет текущее время, обычно выраженное как дата и время суток. Выражено в формате ISO 8601. Свойства DateTime всегда хранятся в формате UTC. Смещения часового пояса, если они правильно отформатированы, будут применены, а затем получится значение, хранящееся в формате UTC. Дополнительные сведения о свойстве timestamp среды и смещениях DateTime см. в этом разделе "eventProcessedLocalTime": "2020-03-20T09:03:32.8301668Z" Если меткой времени источника события является eventProcessedLocalTime: $event.$ts. Если это другое свойство JSON: $event.eventProcessedLocalTime.DateTime или $event['eventProcessedLocalTime'].DateTime eventProcessedLocalTime_datetime
double 64-разрядное значение с двойной точностью "value": 31.0482941 $event.value.Double или $event['value'].Double value_double
long 64-разрядное целое число со знаком "value" : 31 $event.value.Long или $event['value'].Long value_long
string Текстовые значения должны состоять из допустимых символов UTF-8. Строки, приравненные к NULL, и пустые строки считаются одинаковыми. "site": "DIM_MLGGG" $event.site.String или $event['site'].String site_string
Динамический Сложный (не являющийся примитивом) тип, состоящий из массива или контейнера свойств (словаря). Сейчас только переведенные в строку массивы JSON примитивов или массивов объектов, не содержащих идентификатор TS или свойство timestamp, будут храниться как динамические. Ознакомьтесь с этой статьей, чтобы понять, каким образом осуществляется сведение объектов и правила разворачивания массивов. Свойства полезных данных, хранящиеся в этом типе, доступны только при выборе Explore Events в обозревателе Аналитики временных рядов для просмотра необработанных событий или через запрос API GetEvents для синтаксического анализа на стороне клиента. "values": "[197, 194, 189, 188]" Ссылки на динамические типы в выражении временных рядов пока не поддерживаются values_dynamic

Примечание.

64-разрядные целые значения поддерживаются, но максимальное число, которое обозреватель службы "Аналитика временных рядов Azure" может безопасно выразить, равно 9 007 199 254 740 991 (2 ^ 53-1) из-за ограничений JavaScript. При работе с более громоздкими числами в модели данных можно уменьшить размер, создав переменную модели временных рядов и преобразовав ее значение.

Примечание.

Тип строки не допускает значения NULL.

  • Выражение временного ряда (TSX), выраженное в виде Запроса временных рядов, в сравнении значения пустой строки ('') со значением NULL, будет вести себя так: $event.siteid.String = NULL эквивалентно $event.siteid.String = ''.
  • API может возвращать значения NULL, даже если исходные события содержат пустые строки.
  • Не задавайте зависимости от значений NULL в строковых столбцах для сравнения или вычисления, обрабатывайте их так же, как пустые строки.

Отправка смешанных типов данных

Среда службы "Аналитика временных рядов Azure" 2-го поколения характеризуется сильной типизацией. Если устройства или теги отправляют данные различных типов для свойства устройства, значения будут храниться в двух отдельных столбцах, а при определении выражений переменных временных рядов в вызовах API должна использоваться функция coalesce().

В обозревателе службы "Аналитика временных рядов Azure" предусмотрен способ автоматического объединения отдельных столбцов одного и того же свойства устройства. В приведенном ниже примере датчик отправляет свойство PresentValue, которое может одновременно иметь тип Long и Double. Чтобы запросить все сохраненные значения (независимо от типа данных) свойства PresentValue, выберите PresentValue (Double | Long), и столбцы будут объединены.

Автоматическое объединение в обозревателе

Объекты и массивы

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

Следующие шаги