Az azure IoT-adatfeldolgozó előzetes verziójának utolsó ismert értékeinek használata
Fontos
Az Azure IoT Operations Előzetes verziója – az Azure Arc által engedélyezett verzió jelenleg előzetes verzióban érhető el. Ezt az előzetes verziójú szoftvert nem szabad éles környezetben használni.
A bétaverziójú, előzetes verziójú vagy másként még általánosan nem elérhető Azure-szolgáltatások jogi feltételeit lásd: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.
Az adatfeldolgozó folyamat utolsó ismert értékszakaszának (LKV) használatával naprakész és teljes rekordot állíthat be az adatokról. Az LKV szakasz nyomon követi a folyamat üzeneteinek kulcs-érték párjainak legújabb értékeit. A szakasz ezután a követett LKV-értékekkel bővítheti az üzeneteket. A legutóbbi ismert értékkövetés és -bővítés fontos a következő folyamatokra támaszkodó alsóbb rétegbeli folyamatok esetében:
- Több idősoros adatpont egy adott időbélyegen.
- Olyan hasznos adatok, amelyeknek mindig van értéke egy adott kulcshoz.
Az adatfeldolgozási folyamatban az LKV-fázis nem kötelező. Az LKV-szakasz használata esetén a következő műveletekre van lehetőség:
- Több LKV-fázis hozzáadása egy folyamathoz. Minden LKV-fázis több értéket is nyomon tud követni.
- Bővítse az üzeneteket a tárolt LKV-értékekkel, biztosítva, hogy az adatok teljesek és átfogóak maradnak.
- Az LKV-k automatikusan frissülnek a bejövő üzenetek legújabb értékeivel.
- Az LKV-k nyomon követése külön-külön minden logikai partícióhoz. Az LKV-fázis egymástól függetlenül működik minden logikai partícióban.
- Konfigurálja az egyes nyomon követett LKV-k lejárati idejét az érvényesség időtartamának kezeléséhez. Ezzel a vezérlővel biztosítható, hogy az üzenetek ne legyenek elavult értékekkel gazdagítva.
Az LKV-fázis fenntartja az időrendi adatintegritást. A szakasz biztosítja, hogy a korábbi időbélyeggel rendelkező üzenetek ne bírálják felül vagy cserélje le az LKV-ket a későbbi időbélyegekkel rendelkező üzenetekre.
Az LKV szakasz a legutóbbi ismert értékekkel bővíti a bejövő üzeneteket. Ezek a bővített értékek a korábban rögzített adatokat jelölik, és nem feltétlenül a jelenlegi valós idejű értékek. Győződjön meg arról, hogy ez a viselkedés megfelel az adatfeldolgozási elvárásoknak.
Előfeltételek
Az összesítő folyamatszakasz konfigurálásához és használatához az Azure IoT Data Processor Preview egy üzembe helyezett példányára van szükség, amely tartalmazza az opcionális adatfeldolgozó összetevőt.
A szakasz konfigurálása
Az LKV-fázis JSON-konfigurációja határozza meg a szakasz részleteit. A szakasz létrehozásához használhatja az űrlapalapú felhasználói felületet, vagy megadhatja a JSON-konfigurációt a Speciális lapon:
Mező | Leírás | Kötelező | Alapértelmezett | Példa |
---|---|---|---|---|
Név | A szakasz felhasználó által definiált neve. | Igen | - | lkv1 |
Leírás | A szakasz felhasználó által definiált leírása. | Nem | - | lkv1 |
Tulajdonságok > bemeneti elérési útja | A követendő kulcs elérési útja . | Igen | - | .payload.temperature |
Tulajdonságok > kimeneti elérési útja | A kimeneti üzenetben található hely elérési útja az LKV megírásához. | Igen | - | .payload.temperature_lkv |
Tulajdonságok > lejárati ideje | A nyomon követett LKV-k csak a felhasználó által megadott időintervallumra érvényesek, amely után a kimeneti üzenet nem lesz gazdagítva a tárolt értékkel. A rendszer nyomon követi az egyes LKV-kulcsok lejáratát. | Nem | - | 10h |
Tulajdonságok > időbélyegének elérési útja | A kimeneti üzenet helyének elérési útja az LKV legutóbbi frissítésének időbélyegének megírásához. | Nem | Hamis | - |
Ha tartalmazza az időbélyeg elérési útját, az segít pontosan megérteni, hogy mikor lettek rögzítve az LKV-k, és javítja az átláthatóságot és a nyomon követhetőséget.
inputPath
Egyenlő outputPath
A kimenő üzenet vagy a tényleges üzenetérték, vagy LKV, ha a nyomon követett kulcs hiányzik az üzenet hasznos adataiból. A bejövő értékek elsőbbséget élveznek, és a fázis nem bírálja felül LKV-val. Annak megállapításához, hogy az üzenet értéke LKV-érték-e, használja az időbélyeg elérési útját. Az időbélyeg elérési útja csak akkor szerepel a kimenő üzenetben, ha az üzenet értéke a nyomon követett LKV.
inputPath
nem egyenlő a outputPath
A szakasz az LKV-t az outputPath
összes bejövő üzenethez írja. Ezzel a konfigurációval nyomon követheti az üzenetek későbbi hasznos adatainak értékei közötti különbséget.
Mintakonfiguráció
Az alábbi példa egy mintaüzenetet mutat be az LKV-fázishoz a 10:02-kor érkező üzenettel és a nyomon követett .payload.temperature
LKV-értéket tartalmazó hasznos adattal:
{
{
"systemProperties":{
"partitionKey":"pump",
"partitionId":5,
"timestamp":"2023-01-11T10:02:07Z"
},
"qos":1,
"topic":"/assets/pump/#"
},
"payload":{
"humidity": 10,
"temperature":250,
"pressure":30,
"runningState": true
}
}
LKV-konfiguráció:
Mező | Érték |
---|---|
Bemeneti elérési út* | .payload.temperature |
Kimeneti elérési út | .payload.lkvtemperature |
Lejárati idő | 10h |
Időbélyeg elérési útja | .payload.lkvtemperature_timestamp |
A nyomon követett LKV-értékek a következők:
.payload.temperature
250.- Az LKV időbélyege a következő:
2023-01-11T10:02:07Z
A 11:05-kor érkező, a hőmérsékleti tulajdonsággal nem rendelkező hasznos adattal érkező üzenetek esetében az LKV szakasz a nyomon követett értékekkel bővíti az üzenetet:
Példa bemenet az LKV-fázisba 11:05-kor:
{
"systemProperties":{
"partitionKey":"pump",
"partitionId":5,
"timestamp":"2023-01-11T11:05:00Z"
},
"qos":1,
"topic":"/assets/pump/#"
},
"payload":{
"runningState": true
}
}
Példakimenet az LKV-fázisból 11:05-kor:
{
"systemProperties":{
"partitionKey":"pump",
"partitionId":5,
"timestamp":"2023-01-11T11:05:00Z"
},
"qos":1,
"topic":"/assets/pump/#"
},
"payload":{
"lkvtemperature":250,
"lkvtemperature_timestamp"":"2023-01-11T10:02:07Z"
"runningState": true
}
}