Time Series-model in Azure Time Series Insights Gen2
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.
In dit artikel worden time series-modellen, de mogelijkheden en het bouwen en bijwerken van uw eigen modellen in de Azure Time Series Insights Gen2-omgeving beschreven.
Tip
- Meer informatie over het werken met Time Series Model met behulp van azure Time Series Insights Explorer.
Samenvatting
Traditioneel ontbreken de gegevens die van IoT-apparaten worden verzameld contextuele informatie, waardoor het moeilijk is om sensoren snel te vinden en te analyseren. De belangrijkste motivatie voor Het Time Series-model is om het zoeken en analyseren van IoT- of Time Series-gegevens te vereenvoudigen. Het bereikt dit doel door het inschakelen van de curatie, het onderhoud en de verrijking van tijdreeksgegevens om te helpen bij het voorbereiden van gegevens die gereed zijn voor de consument voor analyse.
Scenario: De nieuwe slimme oven van Contoso
Bekijk het fictieve scenario van een slimme Contoso-oven. Stel in dit scenario dat elke Contoso-slimme oven vijf temperatuursensoren heeft, één voor elk van de vier bovenste branders en één voor de oven zelf. Tot voor kort heeft elke Contoso-temperatuursensor de gegevens afzonderlijk verzonden, opgeslagen en gevisualiseerd. Voor de bewaking van het keukenapparaat heeft Contoso gebruik gemaakt van basisgrafieken, één voor elke afzonderlijke sensor.
Hoewel Contoso tevreden was met de eerste gegevens- en visualisatieoplossing, werden verschillende beperkingen zichtbaar:
- Klanten wilden weten hoe warm de algehele oven zou worden wanneer de meeste van de bovenste branders waren ingeschakeld. Contoso had meer moeite met het analyseren en presenteren van een uniform antwoord over de voorwaarden van de algehele oven.
- Contoso-technici wilden controleren of de bovenste branders die tegelijkertijd worden uitgevoerd, niet tot inefficiënte stroomstroom zouden leiden. Er was problemen met kruisverwijzing welke temperatuur- en spanningssensoren aan elkaar waren gekoppeld en hoe ze in de winkel te vinden waren.
- Het contoso-kwaliteitscontroleteam wilde de geschiedenis tussen twee sensorversies controleren en vergelijken. Er is een probleem opgetreden bij het bepalen van welke gegevens tot welke sensorversie behoren.
Zonder de mogelijkheid om het overkoepelende model voor slimme oventijdreeksen te structureren, organiseren en definiëren, blijft elke temperatuursensor losgekoppeld, geïsoleerd en minder informatieve gegevenspunten behouden. Het omzetten van deze gegevenspunten in bruikbare inzichten was moeilijker omdat elke gegevensset onafhankelijk van de andere gegevenssets leefde.
Deze beperkingen hebben het belang aangetoond van hulpprogramma's voor slimme gegevensaggregatie en visualisatie bij de nieuwe oven van Contoso:
- Gegevensvisualisatie is handig wanneer u gegevens kunt koppelen en combineren in een handige weergave. Een voorbeeld is het weergeven van spanningssensoren samen met temperatuursensoren.
- Het beheren van multidimensionale gegevens voor verschillende entiteiten, samen met vergelijkings-, zoom- en tijdsbereikfunctionaliteiten kan moeilijk te bereiken zijn.
Time Series Model biedt een handige oplossing voor veel van de scenario's die in dit fictieve voorbeeld zijn opgetreden:
- Time Series Model speelt een belangrijke rol in query's en navigatie, omdat hiermee gegevens worden contextueel gemaakt door vergelijkingen tussen tijdsbereiken en tussen sensor- en apparaattypen mogelijk te maken. (A)
- Gegevens worden verder gecontextualiseerd omdat gegevens die in het Time Series-model worden bewaard, tijdreeksqueryberekeningen behouden blijven als variabelen en deze opnieuw gebruiken tijdens het uitvoeren van query's.
- Time Series Model organiseert en aggregeert gegevens voor verbeterde visualisatie- en beheermogelijkheden. (B)
Belangrijke mogelijkheden
Met het doel om het eenvoudig en moeiteloos te maken om contextuele tijdreeksen te beheren, maakt Time Series Model de volgende mogelijkheden mogelijk in Azure Time Series Insights Gen2. Dit helpt u bij het volgende:
- Ontwerp en beheer berekeningen of formules die gebruikmaken van scalaire functies, statistische bewerkingen, enzovoort.
- Definieer relaties tussen bovenliggende en onderliggende elementen om navigatie, zoekopdrachten en verwijzingen in te schakelen.
- Definieer eigenschappen die zijn gekoppeld aan de exemplaren, gedefinieerd als exemplaarvelden en gebruik ze om hiërarchieën te maken.
Onderdelen
Het Time Series-model heeft drie kernonderdelen:
Deze onderdelen worden gecombineerd om een tijdreeksmodel op te geven en uw gegevens te ordenen.
Een tijdreeksmodel kan worden gemaakt en beheerd via azure Time Series Insights Explorer. Time Series-modelinstellingen kunnen worden beheerd via de API voor modelinstellingen.
Time Series Model-exemplaren
Time Series Model-exemplaren zijn virtuele weergaven van de tijdreeks zelf.
In de meeste gevallen worden exemplaren uniek geïdentificeerd door deviceId of assetId, die worden opgeslagen als tijdreeks-id's.
Exemplaren hebben beschrijvende informatie die eraan is gekoppeld, genaamd exemplaareigenschappen, zoals een tijdreeks-id, type, naam, beschrijving, hiërarchieën en exemplaarvelden. Instantie-eigenschappen bevatten minimaal hiërarchiegegevens.
Exemplaarvelden zijn een verzameling beschrijvende informatie die waarden kan bevatten voor hiërarchieniveaus, evenals fabrikant, operator, enzovoort.
Nadat een gebeurtenisbron is geconfigureerd voor de Azure Time Series Insights Gen2-omgeving, worden exemplaren automatisch gedetecteerd en gemaakt in een tijdreeksmodel. De exemplaren kunnen worden gemaakt of bijgewerkt via azure Time Series Insights Explorer met behulp van Time Series Model-query's.
Exemplaareigenschappen
Exemplaren worden gedefinieerd door timeSeriesId, typeId, name, description, hierarchyIds en instanceFields. Elk exemplaar wordt toegewezen aan slechts één type en een of meer hiërarchieën.
Eigenschappen | Beschrijving |
---|---|
timeSeriesId | De unieke id van de tijdreeks waarmee het exemplaar is gekoppeld. In de meeste gevallen worden exemplaren uniek geïdentificeerd door een eigenschap zoals deviceId of assetId. In sommige gevallen kan een specifiekere samengestelde id met maximaal 3 eigenschappen worden gecombineerd. |
typeId | De hoofdlettergevoelige unieke tekenreeks-id van het Time Series-modeltype waarmee het exemplaar is gekoppeld. Standaard worden alle gedetecteerde nieuwe exemplaren gekoppeld aan een standaardtype. |
naam | De naameigenschap is optioneel en hoofdlettergevoelig. Als de naam niet beschikbaar is, wordt deze standaard ingesteld op timeSeriesId. Als er een naam wordt opgegeven, is timeSeriesId nog steeds beschikbaar in de bron. |
beschrijving | Een tekstbeschrijving van het exemplaar. |
hierarchyIds | Hiermee definieert u tot welke hiërarchieën het exemplaar behoort. |
instanceFields | De eigenschappen van een exemplaar en eventuele statische gegevens die een exemplaar definiëren. Ze definiëren waarden van hiërarchie- of niet-hiërarchie-eigenschappen en ondersteunen ook indexering om zoekbewerkingen uit te voeren. |
Notitie
Hiërarchieën worden gebouwd met behulp van exemplaarvelden. Extra instanceFields kunnen worden toegevoegd voor verdere eigenschapsdefinities van exemplaren.
Exemplaren hebben de volgende JSON-weergave:
{
"timeSeriesId": ["PU2"],
"typeId": "545314a5-7166-4b90-abb9-fd93966fa39b",
"hierarchyIds": ["95f0a8d1-a3ef-4549-b4b3-f138856b3a12"],
"description": "Pump #2",
"instanceFields": {
"Location": "Redmond",
"Fleet": "Fleet 5",
"Unit": "Pump Unit 3",
"Manufacturer": "Contoso",
"ScalePres": "0.54",
"scaleTemp": "0.54"
}
}
Tip
Voor ondersteuning voor het maken, lezen, bijwerken en verwijderen van de API (CRUD), leest u het artikel over het uitvoeren van gegevensquery's en de REST-documentatie van de Instantie-API.
Time Series-modelhiërarchieën
Time Series Model-hiërarchieën organiseren exemplaren door eigenschapsnamen en hun relaties op te geven.
U kunt meerdere hiërarchieën configureren in een bepaalde Azure Time Series Insights Gen2-omgeving. Een Time Series Model-exemplaar kan worden toegewezen aan één hiërarchie of meerdere hiërarchieën (veel-op-veel-relatie).
Hiërarchiedefinitie
Hiërarchieën worden gedefinieerd door de hiërarchie-id, naam en bron.
Eigenschappen | Description |
---|---|
id | De unieke id voor de hiërarchie, die bijvoorbeeld wordt gebruikt wanneer u een exemplaar definieert. |
naam | Een tekenreeks die wordt gebruikt om een naam voor de hiërarchie op te geven. |
source | Hiermee geeft u de hiërarchie of het pad van de organisatie op. Dit is een bovenliggende en onderliggende volgorde van de hiërarchie die gebruikers willen maken. De bovenliggende en onderliggende eigenschappen wijzen instantievelden toe. |
Hiërarchieën worden in JSON weergegeven als:
{
"hierarchies": [
{
"id": "6e292e54-9a26-4be1-9034-607d71492707",
"name": "Location",
"source": {
"instanceFieldNames": [
"state",
"city"
]
}
},
{
"id": "a28fd14c-6b98-4ab5-9301-3840f142d30e",
"name": "ManufactureDate",
"source": {
"instanceFieldNames": [
"year",
"month"
]
}
}
]
}
In het vorige JSON-voorbeeld:
Location
definieert een hiërarchie met bovenliggendestates
en onderliggendecities
elementen. Elklocation
kan meerderestates
hebben, wat op zijn beurt meerderecities
kan hebben.ManufactureDate
definieert een hiërarchie met bovenliggendeyear
en onderliggendemonth
elementen. ElkManufactureDate
kan meerdereyears
hebben, wat op zijn beurt meerderemonths
kan hebben.
Tip
Lees voor ondersteuning voor het maken, lezen, bijwerken en verwijderen van hiërarchie-API's het artikel over gegevensquery's en de REST-documentatie van de Hierarchy API.
Voorbeeld van een hiërarchie
Bekijk een voorbeeld waarin hiërarchie H1 heeft building
, floor
en room
als onderdeel van de definitie van instanceFieldNames :
{
"id": "aaaaaa-bbbbb-ccccc-ddddd-111111",
"name": "H1",
"source": {
"instanceFieldNames": [
"building",
"floor",
"room"
]
}
}
Gezien de instantievelden die in de vorige definitie en verschillende tijdreeksen worden gebruikt, worden de hiërarchiekenmerken en -waarden weergegeven zoals wordt weergegeven in de volgende tabel:
Tijdreeks-id | Exemplaarvelden |
---|---|
ID1 | "gebouw" = "1000", "floor" = "10", "room" = "55" |
ID2 | "gebouw" = "1000", "kamer" = "55" |
Id3 | "floor" = "10" |
ID4 | "gebouw" = "1000", "floor" = "10" |
ID5 | Er is geen 'gebouw', 'vloer' of 'kamer' ingesteld. |
Time Series ID1 en ID4 worden weergegeven als onderdeel van de hiërarchie H1 in de Azure Time Series Insights Explorer , omdat ze volledig gedefinieerde en correct geordende gebouw-, vloer- en ruimteparameters hebben.
De andere exemplaren worden geclassificeerd onder Niet-gepareerde exemplaren omdat ze niet voldoen aan de opgegeven gegevenshiërarchie.
Time Series-modeltypen
Time Series-modeltypen helpen u bij het definiëren van variabelen of formules voor het uitvoeren van berekeningen. Typen zijn gekoppeld aan een specifiek exemplaar.
Een type kan een of meer variabelen hebben. Een Time Series Model-exemplaar kan bijvoorbeeld van het type Temperatuursensor zijn, dat bestaat uit de variabelen gemiddelde temperatuur, minimumtemperatuur en maximale temperatuur.
Tip
Lees het artikel Over het uitvoeren van gegevensquery's en de restdocumentatie van de Type API voor typen API's maken, lezen, bijwerken en verwijderen.
Typeeigenschappen
Time Series-modeltypen worden gedefinieerd door id, naam, beschrijving en variabelen.
Eigenschappen | Description |
---|---|
id | De hoofdlettergevoelige unieke tekenreeks-id voor het type. |
naam | Een tekenreeks die wordt gebruikt om een naam op te geven voor het type. |
beschrijving | Een tekenreeksbeschrijving voor het type. |
variabelen | Geef variabelen op die zijn gekoppeld aan het type. |
Typen voldoen aan het volgende JSON-voorbeeld:
{
"types": [
{
"id": "1be09af9-f089-4d6b-9f0b-48018b5f7393",
"name": "DefaultType",
"description": "Default type",
"variables": {
"EventCount": {
"kind": "aggregate",
"value": null,
"filter": null,
"aggregation": {
"tsx": "count()"
}
},
"Interpolated Speed": {
"kind": "numeric",
"value": {
"tsx": "$event['Speed-Sensor'].Double"
},
"filter": null,
"interpolation": {
"kind": "step",
"boundary": {
"span": "P1D"
}
},
"aggregation": {
"tsx": "right($value)"
}
}
}
}
]
}
Time Series-modeltypen kunnen veel variabelen bevatten waarmee formule- en rekenregels voor gebeurtenissen worden opgegeven. Meer informatie over het definiëren van time series-modelvariabelen
Volgende stappen
Lees de referentiedocumentatie voor Time Series-modellen voor meer informatie over het bewerken van het model via API's.
De formules en berekeningen verkennen die u kunt maken met Time Series-modelvariabelen
Meer informatie over het opvragen van gegevens in Azure Time Series Insights Gen2