Поддерживаемые типы данных
Примечание.
Служба "Аналитика временных рядов" будет прекращена 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
Следующие шаги
Ознакомьтесь с разделом Правила плоской обработки и экранирования JSON, чтобы понять, каким образом будет осуществляться хранение событий.
Изучите общие сведения об ограничениях пропускной способности среды.
Сведения об источниках событий для приема потоковых данных.