Avro-sémakompatibilitás ellenőrző
Ellenőrizze, hogy egy új Avro-séma továbbra is képes-e olvasni a régivel írt adatokat, vagy fordítva. Minden kompatibilitást akadályozó mező, típus és felsorolásszimbólum az elérési útjával együtt jelenik meg.
Legfeljebb 1 000 000 karakteres Avro-sémákat fogad JSON-ként, legfeljebb 50 000 JSON-értékkel és 64 beágyazási szinttel, valamint legfeljebb 50 korábbi verzióval a tranzitív módokhoz. Az ellenőrzés a böngészőben, háttérben futó feldolgozóban történik. JSON-jelentés és a problémák CSV-listája tölthető le. Az író sémája JSON-ként, vagy {"versions":[...]} a korábbi sémákkal, a legrégebbitől kezdve a tranzitív módokhoz. Legfeljebb 1 000 000 karakter. Futtatás előtt tekintsd át a beállításokat.
Az eredményed
Avro-sémakompatibilitás ellenőrző
- Illessze be a korábbi Avro-sémát a fő mezőbe, vagy {"versions":[...]} értéket tranzitív módhoz.
- Illessze be az új sémát az Új séma mezőbe.
- Válasszon visszafelé, előrefelé vagy teljes kompatibilitást.
- Futtassa az ellenőrzést, és töltse le a JSON-jelentést vagy a problémák CSV-listáját.
Mire számíthatsz
Legfeljebb 1 000 000 karakteres Avro-sémákat fogad JSON-ként, legfeljebb 50 000 JSON-értékkel és 64 beágyazási szinttel, valamint legfeljebb 50 korábbi verzióval a tranzitív módokhoz. Az ellenőrzés a böngészőben, háttérben futó feldolgozóban történik. JSON-jelentés és a problémák CSV-listája tölthető le.
Módok
A visszafelé kompatibilitás azt jelenti, hogy az új séma képes olvasni a régivel írt adatokat, amire a fogyasztó frissítésekor van szükség. Az előrefelé kompatibilitás azt jelenti, hogy a régi séma képes olvasni az újjal írt adatokat. A teljes mód mindkettőt ellenőrzi. A tranzitív módok az új sémát minden felsorolt korábbi verzióval ellenőrzik, a legrégebbitől kezdve, nem csak a legutóbbival.
Sémafeloldási szabályok
Az ellenőrzések az Avro 1.11 specifikáció Schema Resolution részét követik: az int long, float és double típusra, a long float és double típusra, a float double típusra tágítható, a string és bytes pedig egymásra. A rekordok teljes név, minősítés nélküli név vagy olvasói álnév alapján egyeznek. Az íróból hiányzó olvasói mezőhöz érvényes alapérték kell. Az olvasó felsorolásának minden írói szimbólumot tartalmaznia kell, ha nincs alapértéke. Az író uniójának minden ágát fel kell tudni oldani az olvasóban.
Az ellenőrzés korlátai
Ez az Avro-sémafeloldást ellenőrzi, nem egy adott sémaregiszter további szabályait. Az érvényes decimális logikai típusok pontosságának és skálájának egyeznie kell bytes és fixed kódolásnál is. Az ismeretlen vagy érvénytelen logikai típusok az alapul szolgáló Avro-típust használják. Az uniók alapértékeit az első ághoz képest ellenőrzi; a beágyazott alapértékeket rekurzívan validálja.