Best practices voor het kiezen van een tijdreeks-id

In dit artikel wordt het belang van de tijdreeks-id voor uw Azure Time Series Insights Gen2-omgeving samengevat en worden de best practices voor het kiezen van een id beschreven.

Een Time Series-id kiezen

Het selecteren van een geschikte tijdreeks-id is essentieel. Het kiezen van een Time Series-id is net als het kiezen van een partitiesleutel voor een database. Dit is vereist wanneer u een Azure Time Series Insights Gen2-omgeving.

Bekijk de zelfstudie over het inrichten van de omgeving voor een gedetailleerde uitleg van de Time Series-id. U bekijkt twee verschillende voorbeelden van nettoladingen van JSON-telemetrie en de juiste tijdreeks-id voor elk daarvan.

Belangrijk

Time Series-ID's zijn:

  • Een hoofdlettergevoelige eigenschap: hoofdletters en hoofdletters worden gebruikt in zoekopdrachten, vergelijkingen, updates en bij partitionering.
  • Een onveranderbare eigenschap: nadat deze is gemaakt, kan deze niet meer worden gewijzigd.

Tip

Als uw gebeurtenisbron een IoT-hub is, is uw Tijdreeks-id waarschijnlijk iothub-connection-device-id. Als u van plan bent IoT Plug en Play-apparaatmodellen te gebruiken of als u ze zonder onderdelen gebruikt, moet u dt-subject opnemen als onderdeel van de samengestelde sleutel voor het geval u deze in de toekomst nodig hebt.

De belangrijkste best practices die u moet volgen zijn:

  • Kies een partitiesleutel met veel verschillende waarden (bijvoorbeeld honderden of duizenden). In veel gevallen kan dit de apparaat-id, sensor-id of tag-id in uw JSON zijn.
  • De Tijdreeks-id moet uniek zijn op het niveau van het leaf-knooppunt van uw Time Series-model.
  • De tekenlimiet voor de tekenreeks van de eigenschapsnaam van de Tijdreeks-id is 128. Voor de eigenschapswaarde van de tijdreeks-id is de tekenlimiet 1024.
  • Als er een unieke eigenschapswaarde voor de tijdreeks-id ontbreekt, wordt deze beschouwd als een null-waarde en volgt deze dezelfde regel van de uniekheidsbeperking.
  • Als uw tijdreeks-id is genest in een complex JSON-object, moet u de regels voor het afvlakken van toegangsobjecten volgen bij het geven van de naam van uw eigenschap. Bekijk het voorbeeld B.
  • U kunt ook maximaal drie belangrijke eigenschappen selecteren als uw tijdreeks-id. De combinatie is een samengestelde sleutel die de Tijdreeks-id vertegenwoordigt.

    Notitie

    Uw drie belangrijkste eigenschappen moeten tekenreeksen zijn. U moet dan een query uitvoeren op deze samengestelde sleutel in plaats van één eigenschap tegelijk.

Selecteer meer dan één sleutel-eigenschap

In de volgende scenario's wordt beschreven hoe u meer dan één sleutel-eigenschap als uw tijdreeks-id selecteert.

Voorbeeld 1: Tijdreeks-id met een unieke sleutel

  • U hebt verouderde assets. Elk heeft een unieke sleutel.
  • Eén vloot wordt uniek geïdentificeerd door de eigenschap deviceId. Voor een andere vloot is de unieke eigenschap objectId. Geen van beide vloot bevat de unieke eigenschap van de andere vloot. In dit voorbeeld selecteert u twee sleutels, deviceId en objectId, als unieke sleutels.
  • We accepteren null-waarden en het ontbreken van de aanwezigheid van een eigenschap in de nettolading van de gebeurtenis telt als een null-waarde. Dit is ook de juiste manier om het verzenden van gegevens naar twee gebeurtenisbronnen af te handelen waarbij de gegevens in elke gebeurtenisbron een unieke tijdreeks-id hebben.

Voorbeeld 2: Tijdreeks-id met een samengestelde sleutel

  • U wilt dat meerdere eigenschappen uniek zijn binnen dezelfde groep assets.
  • U bent een fabrikant van slimme gebouwen en implementeert sensoren in elke ruimte. In elke ruimte hebt u doorgaans dezelfde waarden voor sensorId. Voorbeelden zijn sensor1, sensor2 en sensor3.
  • Uw gebouw heeft overlappende vloer- en kamernummers op verschillende locaties in de eigenschap flrRm. Deze getallen hebben waarden zoals 1a, 2b en 3a.
  • U hebt een eigenschap, locatie, die waarden bevat, zoals Redmond, Moet en Tokio. Als u uniekheid wilt maken, wijst u de volgende drie eigenschappen aan als uw Tijdreeks-id-sleutels: sensorId, flrRm en location.

Voorbeeld van onbewerkte gebeurtenis:

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

In de Azure Portal kunt u de samengestelde sleutel als volgt invoeren:

Configureer de Time Series-id voor de omgeving.

Notitie

Voer Azure Portal door komma's gescheiden namen van eigenschappen niet in één texbox in, anders wordt het beschouwd als een enkele eigenschapsnaam die komma's bevat. Voer elke eigenschapsnaam in een eigen texbox in.

Volgende stappen