Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk az Azure Stream Analytics kompatibilitási szintjét ismerteti.
A Stream Analytics egy felügyelt szolgáltatás, amely rendszeres funkciófrissítésekkel és folyamatos teljesítménybeli fejlesztésekkel rendelkezik. A szolgáltatás futtatókörnyezetének legtöbb frissítése automatikusan elérhetővé válik a végfelhasználók számára a kompatibilitási szinttől függetlenül. Ha azonban egy új funkció megváltoztatja a meglévő feladatok viselkedését, vagy megváltozik az adatok felhasználása a futó feladatokban, ezt a módosítást egy új kompatibilitási szinten vezetjük be. A kompatibilitási szint beállításának csökkentésével a meglévő Stream Analytics-feladatok jelentős módosítások nélkül is futtathatók. Ha készen áll a legújabb futtatókörnyezeti viselkedésre, a kompatibilitási szint növelésével is bejelentkezhet.
Kompatibilitási szint kiválasztása
A kompatibilitási szint szabályozza a streamelemzési feladatok futtatókörnyezeti viselkedését.
Az Azure Stream Analytics jelenleg három kompatibilitási szintet támogat:
- 1.2 – Legújabb viselkedés a legújabb fejlesztésekkel
- 1.1 – Korábbi viselkedés
- 1.0 – Az Azure Stream Analytics néhány évvel ezelőtti általános elérhetősége során bevezetett eredeti kompatibilitási szint.
Új Stream Analytics-feladat létrehozásakor ajánlott a legújabb kompatibilitási szinttel létrehozni. Kezdje el a feladattervezést a legújabb viselkedésre támaszkodva, hogy később elkerülhesse a további módosításokat és összetettségeket.
A kompatibilitási szint beállítása
A Stream Analytics-feladatok kompatibilitási szintjét az Azure Portalon vagy a rest API-hívás létrehozásakor állíthatja be.
A feladat kompatibilitási szintjének frissítése az Azure Portalon:
- Az Azure Portal használatával keresse meg a Stream Analytics-feladatot.
- Állítsa le a feladatot a kompatibilitási szint frissítése előtt. Nem frissítheti a kompatibilitási szintet, ha a feladat futó állapotban van.
- A Konfigurálás fejléc alatt válassza a Kompatibilitási szintet.
- Válassza ki a kívánt kompatibilitási szint értékét.
- Válassza a Lap alján található Mentés lehetőséget.
A kompatibilitási szint frissítésekor a T-fordító a kiválasztott kompatibilitási szintnek megfelelő szintaxissal ellenőrzi a feladatot.
Kompatibilitási szint 1.2
Az 1.2 kompatibilitási szinten a következő főbb változások lépnek életbe:
AMQP üzenetkezelési protokoll
1.2 szint: Az Azure Stream Analytics az Advanced Message Queueing Protocol (AMQP) üzenetkezelési protokollt használja a Service Bus üzenetsoraiba és témaköreibe való íráshoz. Az AMQP lehetővé teszi, hogy platformfüggetlen, hibrid alkalmazásokat hozzon létre nyílt standard protokoll használatával.
Térinformatikai funkciók
Korábbi szintek: Az Azure Stream Analytics földrajzi számításokat használt.
1.2 szint: Az Azure Stream Analytics lehetővé teszi geometriai előrejelzett geokoordináták kiszámítását. A térinformatikai függvények szignatúrája nem változik. Szemantikája azonban kissé eltérő, így pontosabb számítást tesz lehetővé, mint korábban.
Az Azure Stream Analytics támogatja a térinformatikai referenciaadatok indexelését. A térinformatikai elemeket tartalmazó referenciaadatok indexelhetők a gyorsabb illesztési számítások érdekében.
A frissített térinformatikai függvények a jól ismert szöveg (WKT) térinformatikai formátum teljes kifejezőképességét eredményezik. Megadhatja azokat a térinformatikai összetevőket, amelyeket korábban nem támogatott a GeoJson.
További információ: Az Azure Stream Analytics térinformatikai funkcióinak frissítése – Felhő és IoT Edge.
Párhuzamos lekérdezésvégrehajtás több partícióval rendelkező bemeneti forrásokhoz
Korábbi szintek: Az Azure Stream Analytics-lekérdezésekhez a PARTITION BY záradék használata szükséges a lekérdezésfeldolgozás párhuzamossá tételéhez a bemeneti forráspartíciók között.
1.2 szint: Ha a lekérdezési logika párhuzamosítható a bemeneti forráspartíciók között, az Azure Stream Analytics külön lekérdezéspéldányokat hoz létre, és párhuzamosan futtat számításokat.
Natív tömeges API-integráció az Azure Cosmos DB-kimenettel
Előző szintek: A frissítési viselkedés beszúrás vagy egyesítés volt.
1.2 szint: Az Azure Cosmos DB kimenettel való natív Bulk API integráció maximalizálja az átviteli sebességet, és hatékonyan kezeli a terhelés-kiegyenlítő kéréseket. További információkért tekintse meg az Azure Stream Analytics Azure Cosmos DB-be irányuló kimenetét.
Az "upsert" művelet viselkedése: beszúrás vagy csere.
DateTimeOffset sql-kimenetbe való íráskor
Korábbi szintek:A DateTimeOffset típusok UTC-hez lettek igazítva.
1.2 szint: A DateTimeOffset már nincs módosítva.
Hosszú az SQL-kimenetbe való íráskor
Korábbi szintek: Az értékek csonkolva lettek a céltípus alapján.
1.2 szint: A céltípusba nem illeszkedő értékeket a kimeneti hibaházirend szerint kezeli a rendszer.
Rekord- és tömb szerializálás sql-kimenetbe való íráskor
Korábbi szintek: A rekordokat "Rekord" néven, a tömböket pedig "Tömb" néven írták.
1.2 szint: A rekordok és tömbök JSON formátumban vannak szerializálva.
A függvények előtagjának szigorú ellenőrzése
Előző szintek: A függvényelőtagok nem voltak szigorúan érvényesítve.
1.2 szint: Az Azure Stream Analytics szigorúan ellenőrzi a függvényelőtagokat. Ha előtagot ad hozzá egy beépített függvényhez, az hibát okoz. Példáulmyprefix.ABS(…) nem támogatott.
Ha előtagot ad hozzá a beépített aggregátumokhoz, az szintén hibát eredményez. Például myprefix.SUM(…) nem támogatott.
A felhasználó által definiált függvények "rendszer" előtagjának használata hibát eredményez.
Tömb és objektum letiltása kulcstulajdonságként az Azure Cosmos DB kimeneti adapterben
Korábbi szintek: A tömb- és objektumtípusok kulcstulajdonságként lettek támogatva.
1.2 szint: A tömb- és objektumtípusok már nem támogatottak kulcstulajdonságként.
Logikai típus deszerializálása JSON-ban, AVRO-ban és PARQUET-ben
Előző szintek: Az Azure Stream Analytics deszerializálja a logikai értéket BIGINT típusba – hamis térképek 0-ra, igaz térképek 1-esre. A kimenet csak akkor hoz létre logikai értékeket JSON, AVRO és PARQUET nyelven, ha explicit módon konvertálja az eseményeket BIT-vé.
Például egy olyan átmenő lekérdezés, mint egy SELECT value INTO output1 FROM input1 JSON { "value": true } beolvasása az 1. bemenetből, JSON-értéket { "value": 1 }ír a kimenet1-be.
1.2 szint: Az Azure Stream Analytics deszerializálja a logikai értéket BIT típusba. Hamis térképek 0-ra, igaz térképek 1-re. Az olyan átmenő lekérdezések, mint a SELECT value INTO output1 FROM input1 JSON { "value": true } beolvasása az 1. bemenetből, JSON-értéket { "value": true }írnak a kimenet1-be. Az értéket BIT típussá alakíthatja a lekérdezésben, hogy az eredményben igazként és hamisként jelenjen meg az olyan formátumokban, amelyek támogatják a logikai típust.
Kompatibilitási szint 1.1
Az 1.1 kompatibilitási szinten a következő főbb változások lépnek életbe:
Service Bus XML-formátum
1.0 szint: Az Azure Stream Analytics a DataContractSerializert használta, így az üzenet tartalma XML-címkéket tartalmazott. Példa:
@\u0006string\b3http://schemas.microsoft.com/2003/10/Serialization/\u0001{ "SensorId":"1", "Temperature":64\}\u0001
1.1 szint: Az üzenet tartalma közvetlenül, további címkék nélkül tartalmazza a streamet. Például: { "SensorId":"1", "Temperature":64}
A mezőnevek kis- és nagybetű-érzékenységének megőrzése
1.0 szint: A mezőnevek kisbetűsre változtak, amikor az Azure Stream Analytics-motor feldolgozta őket.
1.1 szint: a mezőnevek esetében a kis- és nagybetűk érzékenysége megmarad, amikor az Azure Stream Analytics-motor feldolgozta őket.
Feljegyzés
A kis- és nagybetűk megkülönböztetésének megőrzése épp jelenleg nem érhető el az Edge környezetben üzemeltetett Stream analitikai feladat esetében. Ennek eredményeképpen a rendszer az összes mezőnevet kisbetűssé alakítja, ha a feladat az Edge-en fut.
FloatNaNDeserializationDisabled (Float típusú NaN értékek deszerializálása letiltva)
1.0 szint: A CREATE TABLE parancs nem szűrte az eseményeket a NaN (Not-a-Number) használatával. Például: Infinity, -Infinity) egy FLOAT oszloptípusban, mert nem szerepelnek a számokat tartalmazó dokumentált tartományban.
1.1 szint: A CREATE TABLE lehetővé teszi egy erős séma megadását. A Stream Analytics motor ellenőrzi, hogy az adatok megfelelnek-e ennek a sémának. Ezzel a modellel a parancs NaN-értékekkel szűrheti az eseményeket.
Datetime-sztringek DateTime-típussá való automatikus konvertálásának letiltása a JSON hozzáféréskor.
1.0 szint: A JSON-elemző automatikusan azokat a sztringértékeket, amelyek dátumot/időt/zónát tartalmaznak, DATETIME típusúvá alakítja át az érkező adatnál, így az érték azonnal elveszíti az eredeti formátumot és időzóna-adatokat. Mivel ez bejövő forgalom esetén történik, még akkor is, ha ezt a mezőt nem használták a lekérdezésben, az UTC DateTime-ra lesz konvertálva.
1.1 szint: A dátum/idő/zóna információval rendelkező sztringértékek nem konvertálnak automatikusan DATETIME típusra. Ennek eredményeképpen az időzónák adatai és az eredeti formázás megmaradnak. Ha azonban az NVARCHAR(MAX) mezőt egy DATETIME-kifejezés (például DATEADD függvény) részeként használják a lekérdezésben, akkor a számítás végrehajtásához DATETIME típussá konvertálja, és elveszíti eredeti formáját.