Bevorstehende Änderungen an den JSON-Vereinfachungs- und -Escaperegeln für neue Umgebungen
Hinweis
Der Time Series Insights-Dienst wird am 7. Juli 2024 eingestellt. Erwägen Sie, vorhandene Umgebungen so bald wie möglich zu alternativen Lösungen zu migrieren. Weitere Informationen zur Einstellung und Migration finden Sie in unserer Dokumentation.
Wichtig
Diese Änderungen werden nur auf neu erstellte Microsoft Azure Time Series Insights Gen2-Umgebungen angewandt. Sie gelten nicht für Gen1-Umgebungen.
Ihre Azure Time Series Insights Gen2-Umgebung erstellt die Speicherspalten dynamisch unter Berücksichtigung bestimmter Namenskonventionen. Wenn ein Ereignis erfasst wird, wendet Time Series Insights bestimmte Regeln auf die Namen der JSON-Nutzdaten und JSON-Eigenschaften an. Seit Juli 2020 gelten für neue Azure Time Series Insights Gen2-Umgebungen Änderungen an der Art und Weise, wie JSON-Daten vereinfacht und gespeichert werden. Dies betrifft Sie in den folgenden Fällen:
- Ihre JSON-Nutzdaten enthalten geschachtelte Objekte.
- Ihre JSON-Nutzdaten enthalten Arrays.
- Sie verwenden eines der folgenden vier Sonderzeichen in einem JSON-Eigenschaftennamen:
[
,\
,.
,'
. - Eine oder mehrere Ihrer Zeitreihen-ID-Eigenschaften sind in einem geschachtelten Objekt enthalten.
Wenn Sie eine neue Umgebung erstellen und mindestens einer der Fälle auf Ihre Ereignisnutzdaten zutrifft, werden Ihre Daten anders vereinfacht und gespeichert. Die Änderungen sind in der folgenden Tabelle zusammengefasst:
Aktuelle Regel | Neue Regel | Beispiel-JSON | Vorheriger Spaltenname | Neuer Spaltenname |
---|---|---|---|---|
Geschachtelter JSON-Code wird mithilfe eines Unterstrichs als Trennzeichen vereinfacht. | Geschachtelter JSON-Code wird mithilfe eines Punkts als Trennzeichen vereinfacht. | {"series" : { "value" : 19.338 }} |
series_value_double |
series.value_double |
Bei Sonderzeichen werden keine Escapezeichen verwendet. | Für JSON-Eigenschaftennamen, die die Sonderzeichen . , [ , \ oder ' enthalten, werden als Escapezeichen [' und '] verwendet. Zwischen [' und '] werden bei einfachen Anführungszeichen und umgekehrten Schrägstrichen ebenfalls Escapezeichen verwendet. Ein einfaches Anführungszeichen wird als \' geschrieben und ein umgekehrter Schrägstrich als \\ . |
"Foo's Law Value": "17.139999389648" |
Foo's Law Value_double |
['Foo\'s Law Value']_double |
Arrays von primitiven Typen werden als Zeichenfolgen gespeichert. | Arrays von primitiven Typen werden als dynamische Typen gespeichert. | "values": [154, 149, 147] |
values_string |
values_dynamic |
Arrays von Objekten werden immer vereinfacht, und es werden mehrere Ereignisse generiert. | Wenn die Objekte in einem Array weder über die Zeitreihen-ID noch über Zeitstempeleigenschaften verfügen, wird das gesamte Array von Objekten als dynamischer Typ gespeichert. | "values": [{"foo" : 140}, {"bar" : 149}] |
values_foo_long | values_bar_long |
values_dynamic |
Empfohlene Änderungen für neue Umgebungen
Wenn die TS-ID und/oder die Zeitstempeleigenschaft innerhalb eines Objekts geschachtelt ist
Alle neuen Bereitstellungen müssen den neuen Erfassungsregeln entsprechen. Wenn Ihre Zeitreihen-ID z. B. telemetry_tagId
lautet, müssen Sie alle Azure Resource Manager-Vorlagen oder automatisierten Bereitstellungsskripts so aktualisieren, dass telemetry.tagId
als Zeitreihen-ID für die Umgebung konfiguriert ist. Diese Änderung ist auch bei Zeitstempeln für Ereignisquellen in geschachteltem JSON-Code erforderlich.
Wenn Ihre Nutzlast geschachtelten JSON-Code oder Sonderzeichen enthält, und Sie die Erstellung von variablen Ausdrücken für das Zeitreihenmodell automatisieren
Aktualisieren Sie den Clientcode, über den TypesBatchPut ausgeführt wird, um ihn an die neuen Erfassungsregeln anzupassen. Beispielsweise sollte ein bisheriger Zeitreihenausdruck von "value": {"tsx": "$event.series_value.Double"}
in eine der folgenden Optionen geändert werden:
"value": {"tsx": "$event.series.value.Double"}
"value": {"tsx": "$event['series']['value'].Double"}
Nächste Schritte
Erfahren Sie mehr über Datenspeicherung und -erfassung in Azure Time Series Insights Gen2.
Erfahren Sie, wie Sie Ihre Daten mit Zeitreihenabfrage-APIs abfragen.
Erfahren Sie mehr über die neue Time Series-Ausdruckssyntax.