Share via


Azure Digital Twins-adatelőzmények (az Azure Data Explorerrel)

Az adatelőzmények az Azure Digital Twins integrációs funkciója. Lehetővé teszi egy Azure Digital Twins-példány Azure Data Explorer-fürthöz való csatlakoztatását, hogy a gráffrissítések automatikusan az Azure Data Explorerbe legyenek tárolva. Ezek a historizált frissítések közé tartoznak az ikertulajdonság-frissítések, az iker életciklus-események és a kapcsolat életciklus-eseményei.

Miután a gráffrissítéseket az Azure Data Explorerbe historizálta, az Azure Data Explorer Azure Digital Twins beépülő moduljával közös lekérdezéseket futtathat a digitális ikerpéldányok, a kapcsolatok és az idősoradatok okának okára. Ezzel visszatekinthet az időben a gráf állapotára, vagy betekintést nyerhet a modellezett környezetek viselkedésébe. Ezekre a lekérdezésekre emellett üzemeltetési irányítópultokat is építhet, 2D-s és 3D-s webalkalmazásokat bővíthet velük, és modern kiterjesztett/vegyes valóságú élményeket hozhat létre az Azure Digital Twins szolgáltatásban modellezett eszközök, folyamatok és személyek aktuális állapotának és állapotelőzményeinek közvetítéséhez.

Az adatelőzmények , köztük egy gyors bemutató további bemutatásáért tekintse meg az alábbi IoT-bemutató videót:

Az adatelőzmények által kibocsátott üzenetek mérése az Üzenet díjszabási dimenziója alatt zajlik.

Előfeltételek: Erőforrások és engedélyek

Az adatelőzményekhez a következő erőforrások szükségesek:

Ezek az erőforrások a következő folyamathoz csatlakoznak:

Diagram showing the flow of device telemetry data into Azure Digital Twins, through an event hub, to Azure Data Explorer.

A digitális ikergráf frissítésekor az információk átjutnak az eseményközponton a cél Azure Data Explorer-fürtbe, ahol az Azure Data Explorer időbélyegző rekordként tárolja az adatokat a megfelelő táblában.

Az adatelőzmények használatakor ajánlott az API-k 2023-01-31-es vagy újabb verziójának használata. A 2022-05-31-es verzióval csak az ikertulajdonságok (az iker életciklus vagy a kapcsolat életciklus-eseményei nem) tárolhatók. A korábbi verziókban az adatelőzmények nem érhetők el.

Szükséges engedélyek

Az adatelőzmény-kapcsolat beállításához az Azure Digital Twins-példánynak az alábbi engedélyekkel kell rendelkeznie az Event Hubs és az Azure Data Explorer erőforrásainak eléréséhez. Ezek a szerepkörök lehetővé teszik, hogy az Azure Digital Twins konfigurálja az eseményközpontot és az Azure Data Explorer-adatbázist az Ön nevében (például hozzon létre egy táblát az adatbázisban). Ezek az engedélyek opcionálisan eltávolíthatók az adatelőzmények beállítása után.

  • Event Hubs-erőforrás: Azure Event Hubs-adattulajdonos
  • Azure Data Explorer-fürt: Közreműködő (hatóköre a teljes fürtre vagy egy adott adatbázisra terjed ki)
  • Azure Data Explorer-adatbázis egyszerű hozzárendelése: Rendszergazda (a használt adatbázis hatóköre)

Később az Azure Digital Twins-példánynak a következő engedélyekkel kell rendelkeznie az Event Hubs-erőforráson az adatelőzmények használata közben: Azure Event Hubs-adatküldő (az Azure Event Hubs-adattulajdonost az adatelőzmények beállításától is megtarthatja).

Ezek az engedélyek az Azure CLI vagy az Azure Portal használatával rendelhetők hozzá.

Ha korlátozni szeretné az adatelőzményekben (az Azure Digital Twins-példányban, az eseményközpontban vagy az Azure Data Explorer-fürtben) érintett erőforrásokhoz való hálózati hozzáférést, az adatelőzmény-kapcsolat beállítása után be kell állítania ezeket a korlátozásokat. A folyamatról további információt az adatelőzmény-erőforrásokhoz való hálózati hozzáférés korlátozása című témakörben talál.

Adatelőzmény-kapcsolat létrehozása és kezelése

Ez a szakasz az adatelőzmény-kapcsolat létrehozásához, frissítéséhez és törléséhez szükséges információkat tartalmazza.

Adatelőzmény-kapcsolat létrehozása

Miután az összes erőforrás és engedély be van állítva, az Azure CLI, az Azure Portal vagy az Azure Digital Twins SDK használatával létrehozhatja közöttük az adatelőzmények közötti kapcsolatot. A parancssori felület parancskészlete az dt data-history.

A parancs mindig létrehoz egy táblát a historizált ikertulajdonság-eseményekhez, amely az alapértelmezett nevet vagy az Ön által megadott egyéni nevet használhatja. Az ikertulajdonságok törlése opcionálisan szerepelhet ebben a táblában. Táblaneveket is megadhat a kapcsolat életciklus-eseményeihez és az iker életciklus-eseményekhez, és a parancs táblákat hoz létre azokkal a névvel az eseménytípusok historizálásához.

Az adatelőzmények kapcsolatának beállításával kapcsolatos részletes útmutatásért lásd : Adatelőzmény-kapcsolat létrehozása.

Több Azure Digital Twins-példány előzményei

Ha szeretné, több Azure Digital Twins-példány is tárolhatja ugyanahhoz az Azure Data Explorer-fürthöz tartozó frissítéseket.

Minden Azure Digital Twins-példány saját adatelőzmény-kapcsolattal rendelkezik, amely ugyanazt az Azure Data Explorer-fürtöt célozza. A fürtön belül a példányok elküldhetik az ikeradatukat...

  • az Azure Data Explorer-fürtben lévő táblák külön készlete.
  • ugyanaz a táblakészlet az Azure Data Explorer-fürtben. Ehhez adja meg ugyanazokat az Azure Data Explorer-táblaneveket az adatelőzmény-kapcsolatok létrehozásakor. Az adatelőzménytáblák sémáiban az ServiceId egyes táblák oszlopa tartalmazza a forrás Azure Digital Twins-példány URL-címét, így ezzel a mezővel megoldhatja, hogy melyik Azure Digital Twins-példány bocsátotta ki az egyes rekordokat a megosztott táblákban.

Csak tulajdonságokat tartalmazó adatelőzmény-kapcsolat frissítése

2023 februárjáig az adatelőzmények csak a historizált ikertulajdonság-frissítéseket támogatják. Ha ettől az időtől kezdve csak tulajdonságokat használó adatelőzményekkel rendelkezik, frissítheti az Azure Data Explorer összes gráffrissítésének (beleértve az ikertulajdonságokat, az iker életciklus-eseményeket és a kapcsolat életciklus-eseményeit).

Ehhez új táblákat kell létrehoznia az Azure Data Explorer-fürtben az új típusú historizált frissítésekhez (iker életciklus-események és kapcsolati életciklus-események). Ikertulajdonság-események esetén eldöntheti, hogy az új kapcsolat az eredeti adatelőzmény-kapcsolatból származó táblával folytatja-e az ikertulajdonság-frissítések jövőbeni tárolását, vagy azt szeretné, hogy az új kapcsolat teljesen új táblakészletet használjon. Ezután kövesse az alábbi utasításokat a kívánt beállításhoz.

Ha továbbra is a meglévő táblát szeretné használni az ikertulajdonság-frissítésekhez: Az adatelőzmény-kapcsolat létrehozása című témakörben található utasításokat követve hozzon létre új adatelőzmény-kapcsolatot az új képességekkel. Az adatelőzmények kapcsolatának neve lehet ugyanaz, mint az eredeti, vagy egy másik név. A paraméterbeállítások segítségével új neveket adhat meg a két új eseménytípustáblához, és az ikertulajdonság-frissítési tábla eredeti táblanevét adja meg. Az új kapcsolat felülbírálja a régit, és továbbra is az eredeti táblát fogja használni a jövőbeli historizált ikertulajdonság-frissítésekhez.

Ha az összes új táblát használni szeretné: Először törölje az eredeti adatelőzmény-kapcsolatot. Ezután az adatelőzmény-kapcsolat létrehozása című témakör utasításait követve hozzon létre egy új adatelőzmény-kapcsolatot az új képességekkel. Az adatelőzmények kapcsolatának neve lehet ugyanaz, mint az eredeti, vagy egy másik név. A paraméterbeállítások használatával adjon meg új neveket mindhárom eseménytípustáblához.

Adatelőzmény-kapcsolat törlése

Az Azure CLI, az Azure Portal vagy az Azure Digital Twins API-k és SDK-k használatával törölheti az adatelőzmény-kapcsolatokat. A CLI-parancs az dt data-history connection delete.

A kapcsolat törlése lehetővé teszi az adatelőzmény-kapcsolathoz társított erőforrások törlését is (a CLI-parancs esetében a hozzáadni kívánt paraméter az --clean true). Ha ezt a lehetőséget használja, a parancs törli az Azure Data Explorer azon erőforrásait, amelyek a fürtöt az eseményközponthoz kapcsolják, beleértve az adatbázis adatkapcsolatait és a táblához társított betöltési leképezéseket. Az "erőforrások törlése" lehetőség nem törli az adatelőzmény-kapcsolathoz használt tényleges eseményközpontot és Azure Data Explorer-fürtöt.

A törlés a legjobb megoldás, és a parancsot futtató fióknak törlési engedéllyel kell rendelkeznie ezekhez az erőforrásokhoz.

Feljegyzés

Ha több olyan adatelőzmény-kapcsolattal rendelkezik, amelyek ugyanazt az eseményközpontot vagy Az Azure Data Explorer-fürtöt használják, az "erőforrások törlése" lehetőség használata az ilyen kapcsolatok törlésekor megzavarhatja az ezen erőforrásokra támaszkodó többi adatelőzmény-kapcsolatot.

Adattípusok és sémák

Az adatelőzmények három típusú eseménytípust tárolnak az Azure Digital Twins-példányból az Azure Data Explorerbe: kapcsolati életciklus-eseményeket, iker életciklus-eseményeket és ikertulajdonság-frissítéseket (amelyek opcionálisan ikertulajdonság-törléseket is tartalmazhatnak). Ezek az eseménytípusok az Azure Data Explorer-adatbázisban található saját táblában vannak tárolva, ami azt jelenti, hogy az adatelőzmények összesen három táblát tárolnak. Az adatelőzmény-kapcsolat beállításakor egyéni neveket adhat meg a táblákhoz.

A szakasz további része részletesen ismerteti a három Azure Data Explorer-táblát, beleértve az egyes táblák adatsémát is.

Ikertulajdonság-frissítések

Az ikertulajdonság-frissítésekhez készült Azure Data Explorer-tábla alapértelmezett neve AdtPropertyEvents. A kapcsolat létrehozásakor meghagyhatja az alapértelmezett nevet, vagy megadhat egy egyéni táblanevet.

Az ikertulajdonság-frissítések idősoradatai a következő sémával lesznek tárolva:

Attribútum Típus Leírás
TimeStamp Dátum/idő A tulajdonságfrissítési üzenet Azure Digital Twins általi feldolgozásának dátuma/időpontja. Ezt a mezőt a rendszer állítja be, és a felhasználók nem írhatók.
SourceTimeStamp Dátum/idő Nem kötelező, írható tulajdonság, amely azt az időbélyeget jelöli, amikor a tulajdonságfrissítést a valós világban figyelték meg. Ez a tulajdonság csak az Azure Digital Twins API-k/SDK-k 2022-05-31-es verziójával írható, és az értéknek meg kell felelnie az ISO 8601 dátum- és időformátumának. A tulajdonság frissítéséről további információt a tulajdonság sourceTime-jának frissítése című témakörben talál.
ServiceId Sztring A rekordot naplózó Azure IoT-szolgáltatás szolgáltatáspéldány-azonosítója
Id Sztring Az ikerazonosító
ModelId Sztring A DTDL-modell azonosítója (DTMI)
Key Sztring A frissített tulajdonság neve
Value Dinamikus A frissített tulajdonság értéke
RelationshipId Sztring Ha egy kapcsolaton definiált tulajdonság (szemben az ikerpéldányokkal vagy eszközökkel) frissül, ez a mező a kapcsolat azonosítójával lesz feltöltve. Az ikertulajdonság frissítésekor ez a mező üres.
RelationshipTarget Sztring Ha egy kapcsolaton definiált tulajdonság (szemben az ikerpéldányokkal vagy eszközökkel) frissül, ez a mező a kapcsolat által megcélzott ikerpéldány ikerazonosítójával lesz feltöltve. Az ikertulajdonság frissítésekor ez a mező üres.
Action Sztring Ez az oszlop csak akkor létezik, ha a tulajdonságtörlés eseményeinek historizálása mellett dönt. Ha igen, ez az oszlop tartalmazza az ikertulajdonság-esemény típusát (frissítés vagy törlés)

Az alábbiakban egy példatábla látható az Azure Data Explorerben tárolt ikertulajdonság-frissítésekről.

TimeStamp SourceTimeStamp ServiceId Id ModelId Key Value RelationshipTarget RelationshipID
2022-12-15 20:23:29.8697482 2022-12-15 20:22:14.3854859 dairyadtinstance.api.wcus.digitaltwins.azure.net PasteurizationMachine_A01 dtmi:assetGen:PasteurizationMachine;1 Hozam 130
2022-12-15 20:23:39.3235925 2022-12-15 20:22:26.5837559 dairyadtinstance.api.wcus.digitaltwins.azure.net PasteurizationMachine_A01 dtmi:assetGen:PasteurizationMachine;1 Hozam 140
2022-12-15 20:23:47.078367 2022-12-15 20:22:34.9375957 dairyadtinstance.api.wcus.digitaltwins.azure.net PasteurizationMachine_A01 dtmi:assetGen:PasteurizationMachine;1 Hozam 130
2022-12-15 20:23:57.3794198 2022-12-15 20:22:50.1028562 dairyadtinstance.api.wcus.digitaltwins.azure.net PasteurizationMachine_A01 dtmi:assetGen:PasteurizationMachine;1 Hozam 123

Tulajdonságok megjelenítése több mezővel

Előfordulhat, hogy több mezőt tartalmazó tulajdonságot kell tárolnia. Ezek a tulajdonságok egy JSON-objektummal jelennek meg a Value séma attribútumában.

Ha például egy három mezőből álló tulajdonságot jelöl a roll, a pitch és a yaw számára, az adatelőzmények a következő JSON-objektumot tárolják a Valuekövetkezőként: {"roll": 20, "pitch": 15, "yaw": 45}.

Iker életciklus-események

Az iker életciklus-eseményekHez készült Azure Data Explorer-tábla egy egyéni névvel rendelkezik, amelyet az adatelőzmény-kapcsolat létrehozásakor fog megadni.

Az iker életciklus-események idősoradatai a következő sémával lesznek tárolva:

Attribútum Típus Leírás
TwinId Sztring Az ikerazonosító
Action Sztring Az iker életciklus-esemény típusa (létrehozás vagy törlés)
TimeStamp Dátum/idő Az iker életciklus eseményének az Azure Digital Twins általi feldolgozásának dátuma/időpontja. Ezt a mezőt a rendszer állítja be, és a felhasználók nem írhatók.
ServiceId Sztring A rekordot naplózó Azure IoT-szolgáltatás szolgáltatáspéldány-azonosítója
ModelId Sztring A DTDL-modell azonosítója (DTMI)

Az alábbiakban egy példatábla látható az Azure Data Explorerben tárolt iker életciklus-frissítésekről.

TwinId Action TimeStamp ServiceId ModelId
PasteurizationMachine_A01 Létrehozás 2022-12-15 07:14:12.4160 dairyadtinstance.api.wcus.digitaltwins.azure.net dtmi:assetGen:PasteurizationMachine;1
PasteurizationMachine_A02 Létrehozás 2022-12-15 07:14:12.4210 dairyadtinstance.api.wcus.digitaltwins.azure.net dtmi:assetGen:PasteurizationMachine;1
SaltMachine_C0 Létrehozás 2022-12-15 07:14:12.5480 dairyadtinstance.api.wcus.digitaltwins.azure.net dtmi:assetGen:SaltMachine;1
PasteurizationMachine_A02 Törlés 2022-12-15 07:15:49.6050 dairyadtinstance.api.wcus.digitaltwins.azure.net dtmi:assetGen:PasteurizationMachine;1

Kapcsolat életciklus-eseményei

A kapcsolat életciklus-eseményeinek Azure Data Explorer-táblája egy egyéni névvel rendelkezik, amelyet az adatelőzmény-kapcsolat létrehozásakor fog megadni.

A kapcsolat életciklus-eseményeinek idősoradatai a következő sémával lesznek tárolva:

Attribútum Típus Leírás
RelationshipId Sztring A kapcsolat azonosítója. Ezt a mezőt a rendszer állítja be, és a felhasználók nem írhatók.
Name Sztring A kapcsolat neve
Action A kapcsolat életciklusának típusa (létrehozás vagy törlés)
TimeStamp Dátum/idő A kapcsolat életciklus-eseményének az Azure Digital Twins általi feldolgozásának dátuma/időpontja. Ezt a mezőt a rendszer állítja be, és a felhasználók nem írhatók.
ServiceId A rekordot naplózó Azure IoT-szolgáltatás szolgáltatáspéldány-azonosítója
Source A forrás ikerpéldány azonosítója. Ez annak az ikernek az azonosítója, ahonnan a kapcsolat származik.
Target A cél ikerpéldány azonosítója. Ez annak az ikernek az azonosítója, ahová a kapcsolat érkezik.

Az alábbiakban egy példatábla látható az Azure Data Explorerben tárolt kapcsolati életciklus-frissítésekről.

RelationshipId Name Action TimeStamp ServiceId Source Target
PasteurizationMachine_A01_feeds_Relationship0 Eszik Létrehozás 2022-12-15 07:16:12.7120 dairyadtinstance.api.wcus.digitaltwins.azure.net PasteurizationMachine_A01 SaltMachine_C0
PasteurizationMachine_A02_feeds_Relationship0 Eszik Létrehozás 2022-12-15 07:16:12.7160 dairyadtinstance.api.wcus.digitaltwins.azure.net PasteurizationMachine_A02 SaltMachine_C0
PasteurizationMachine_A03_feeds_Relationship0 Eszik Létrehozás 2022-12-15 07:16:12.7250 dairyadtinstance.api.wcus.digitaltwins.azure.net PasteurizationMachine_A03 SaltMachine_C1
OsloFactory_contains_Relationship0 contains Törlés 2022-12-15 07:16:13.1780 dairyadtinstance.api.wcus.digitaltwins.azure.net OsloFactory SaltMachine_C0

A végpontok közötti betöltési késés

Az Azure Digital Twins adatelőzményei az Azure Data Explorer által biztosított meglévő betöltési mechanizmusra épülnek. Az Azure Digital Twins biztosítja, hogy a gráffrissítési események kevesebb mint két másodpercen belül elérhetővé legyenek téve az Azure Data Explorer számára. További késést okozhat, ha az Azure Data Explorer betölti az adatokat.

Az Azure Data Explorerben két módszer létezik az adatok betöltésére: kötegelt betöltés és streambetöltés. Ezeket a betöltési módszereket az igényeinek és az adott adatbetöltési forgatókönyvnek megfelelően konfigurálhatja az egyes táblákhoz.

A streambetöltés a legalacsonyabb késéssel rendelkezik. A feldolgozási többletterhelés miatt azonban ezt a módot csak akkor szabad használni, ha óránként kevesebb mint 4 GB adat van betöltve. A batch-betöltés akkor működik a legjobban, ha magas betöltési adatok várhatók. Az Azure Data Explorer alapértelmezés szerint kötegelt betöltést használ. Az alábbi táblázat összefoglalja a várható legrosszabb végpontok közötti késést:

Az Azure Data Explorer konfigurálása A végpontok közötti várható késés Ajánlott adatsebesség
Streamek feldolgozása <12 mp (<jellemzően 3 másodperc) <4 GB / óra
Batch-betöltés Változó (12 mp-15 m, a konfigurációtól függően) >4 GB / óra

A szakasz többi része az egyes betöltési típusok engedélyezésének részleteit tartalmazza.

Batch-betöltés (alapértelmezett)

Ha másként nincs konfigurálva, az Azure Data Explorer kötegbetöltést fog használni. Az alapértelmezett beállítások azt eredményezhetik, hogy az adatok csak 5–10 perccel a digitális ikerpéldány frissítése után érhetők el a lekérdezéshez. A betöltési szabályzat módosítható, így a kötegfeldolgozás legfeljebb 10 másodpercenként történik (legalább 15 percenként). A betöltési szabályzat módosításához a következő parancsot kell kiadni az Azure Data Explorer lekérdezési nézetében:

.alter table <table_name> policy ingestionbatching @'{"MaximumBatchingTimeSpan":"00:00:10", "MaximumNumberOfItems": 500, "MaximumRawDataSizeMB": 1024}' 

Győződjön meg arról, hogy <table_name> a rendszer lecseréli az Ön számára beállított tábla nevére. A MaximumBatchingTimeSpan értéket az előnyben részesített kötegelési időközre kell állítani. A szabályzat érvénybe lépése 5–10 percet is igénybe vehet. A betöltési kötegelésről a következő hivatkozáson olvashat bővebben: Kusto IngestionBatching policy management command.

Streamek feldolgozása

A streambetöltés engedélyezése kétlépéses folyamat:

  1. Engedélyezze a streambetöltést a fürthöz. Ezt a műveletet csak egyszer kell végrehajtani. (Figyelmeztetés: Ez hatással lesz a gyorsgyorsítótárhoz rendelkezésre álló tárhely mennyiségére, és további korlátozásokat eredményezhet). Útmutatásért lásd : Streambetöltés konfigurálása az Azure Data Explorer-fürtön.
  2. Adjon hozzá egy streamelési betöltési szabályzatot a kívánt táblához. A fürt streambetöltésének engedélyezéséről az Azure Data Explorer dokumentációjában olvashat bővebben: Kusto IngestionBatching policy management command.

Az Azure Digital Twins-adatelőzménytáblához tartozó streambetöltés engedélyezéséhez a következő parancsot kell kiadni az Azure Data Explorer lekérdezéspaneljén:

.alter table <table_name> policy streamingingestion enable 

Győződjön meg arról, hogy <table_name> a rendszer lecseréli az Ön számára beállított tábla nevére. A szabályzat érvénybe lépése 5–10 percet is igénybe vehet.

Historizált tulajdonságok megjelenítése

Az Azure Digital Twins Explorer, az Azure Digital Twins-adatok vizualizációját és az azokkal való interakciót lehetővé tevő fejlesztői eszköz adatelőzmény-kezelő funkciót kínál, amellyel a diagramokban vagy táblázatokban időbelileg megtekintheti a historizált tulajdonságokat. Ez a funkció a 3D Scenes Studióban is elérhető, amely egy modern 3D-s környezet, a 3D-s eszközök vizuális környezetének biztosítása az Azure Digital Twins számára.

Screenshot of data history explorer for 3D Scenes Studio.

Az adatelőzmény-kezelő használatával kapcsolatos részletesebb információkért lásd a historizált tulajdonságok érvényesítése és feltárása című témakört.

Feljegyzés

Ha problémákba ütközik egy tulajdonság kiválasztásával a Visual Data History Explorer felületén, ez azt jelentheti, hogy hiba történt a példány egy modelljében. Ha például egy modell attribútumaiban nem egyedi enumerálási értékek szerepelnek, az megszakítja ezt a vizualizációs funkciót. Ha ez történik, tekintse át a modelldefiníciókat, és győződjön meg arról, hogy minden tulajdonság érvényes.

Következő lépések

Miután az ikeradatokat az Azure Data Explorerbe historizálta, az Azure Data Explorer Azure Digital Twins lekérdezési beépülő moduljával lekérdezéseket futtathat az adatok között. A beépülő modulról itt olvashat bővebben: Lekérdezés az Azure Data Explorer beépülő modullal.

Vagy részletesebben is megismerkedhet az adatelőzményekkel a létrehozási utasítások és egy példaforgatókönyv segítségével: Adatelőzmény-kapcsolat létrehozása.