Best practices voor het kiezen van een tijdreeks-id
Notitie
De Time Series Insights-service wordt op 7 juli 2024 buiten gebruik gesteld. Overweeg om bestaande omgevingen zo snel mogelijk naar alternatieve oplossingen te migreren. Raadpleeg onze documentatie voor meer informatie over de afschaffing en migratie.
Dit artikel bevat een overzicht van het belang van de Time Series-id voor uw Azure Time Series Insights Gen2-omgeving en aanbevolen procedures voor het kiezen van een omgeving.
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 maakt.
Bekijk de zelfstudie over het inrichten van omgevingen voor een gedetailleerde uitleg van de Time Series-id. U bekijkt twee verschillende voorbeelden van JSON-telemetrie nettoladingen en de juiste Time Series ID-selectie voor elk.
Belangrijk
Time Series-id's zijn:
- Een hoofdlettergevoelige tekenreekseigenschap : letters en tekens worden gebruikt in zoekopdrachten, vergelijkingen, updates en bij partitioneren.
- Een onveranderbare eigenschap: zodra deze is gemaakt, kan deze niet meer worden gewijzigd.
Tip
Als uw gebeurtenisbron een IoT-hub is, is uw Time Series-id waarschijnlijk iothub-connection-device-id. Als u van plan bent Om IoT Plug en Play apparaatmodellen te gebruiken of deze zonder onderdelen gebruikt, moet u dt-subject opnemen als onderdeel van de samengestelde sleutel voor het geval u deze in de toekomst nodig hebt.
Belangrijke aanbevolen procedures zijn onder andere:
- Kies een partitiesleutel met veel afzonderlijke 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 eigenschapsnaamtekenreeks van de Time Series-id is 128. Voor de eigenschapswaarde van de Time Series-id is de tekenlimiet 1024.
- Als een unieke eigenschapswaarde voor de Time Series-id ontbreekt, wordt deze beschouwd als een null-waarde en volgt u dezelfde regel van de beperking voor uniekheid.
- Als uw Time Series-id is genest binnen een complex JSON-object, moet u de regels voor het afvlakken van inkomend verkeer volgen bij het opgeven van de naam van uw eigenschap. Bekijk voorbeeld B.
- U kunt ook maximaal drie sleuteleigenschappen selecteren als uw Time Series-id. De combinatie is een samengestelde sleutel die de Tijdreeks-id vertegenwoordigt.
Notitie
Uw drie sleuteleigenschappen moeten tekenreeksen zijn. U moet een query uitvoeren op deze samengestelde sleutel in plaats van één eigenschap tegelijk.
Meer dan één sleuteleigenschap selecteren
In de volgende scenario's wordt beschreven hoe u meer dan één sleuteleigenschap selecteert als uw Time Series-id.
Voorbeeld 1: Tijdreeks-id met een unieke sleutel
- U hebt verouderde vloot van activa. Elk heeft een unieke sleutel.
- Eén vloot wordt uniek geïdentificeerd door de deviceId van de eigenschap. Voor een andere vloot is de unieke eigenschap objectId. Noch de 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 te verwerken, 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 vloot van 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 locaties in de accommodatie flrRm. Deze getallen hebben waarden zoals 1a, 2b en 3a.
- U hebt een woning, locatie, die waarden bevat zoals Redmond, Barcelona en Tokio. Als u uniek wilt zijn, wijst u de volgende drie eigenschappen aan als uw Time Series ID-sleutels: sensorId, flrRm en locatie.
Voorbeeld van onbewerkte gebeurtenis:
{
"sensorId": "sensor1",
"flrRm": "1a",
"location": "Redmond",
"temperature": 78
}
In Azure Portal kunt u de samengestelde sleutel als volgt invoeren:
Notitie
Voer in Azure Portal geen door komma's gescheiden namen van eigenschappen in één texbox in, anders wordt deze behandeld als één eigenschapsnaam die komma's bevat. Voer elke eigenschapsnaam in een eigen texbox in.
Volgende stappen
Lees de JSON-afvlakkings - en escaperegels om te begrijpen hoe gebeurtenissen worden opgeslagen.