Preverjevalnik združljivosti shem Avro
Preverite, ali lahko nova shema Avro še vedno bere podatke, zapisane s staro shemo, ali obratno. Navedeno je vsako polje, tip in simbol enum, ki preprečuje združljivost, skupaj s potjo.
Sprejme sheme Avro v obliki JSON, velike do 1.000.000 znakov posamezno, z največ 50.000 vrednostmi JSON in 64 ravnmi gnezdenja ter do 50 starejšimi različicami v prehodnih načinih. Preverjanje se izvede v vašem brskalniku v opravilu v ozadju. Prenesete lahko poročilo JSON in seznam težav CSV. Shema zapisovalnika kot JSON ali {"versions":[...]} s starejšimi shemami od najstarejše naprej za prehodne načine. Do 1.000.000 znakov. Pred zagonom preglejte nastavitve.
Vaš rezultat
Preverjevalnik združljivosti shem Avro
- Prilepite starejšo shemo Avro v glavno polje ali {"versions":[...]} za prehodni način.
- Prilepite novo shemo v polje Nova shema.
- Izberite združljivost za nazaj, naprej ali popolno združljivost.
- Zaženite preverjanje in prenesite poročilo JSON ali seznam težav CSV.
Kaj lahko pričakujete
Sprejme sheme Avro v obliki JSON, velike do 1.000.000 znakov posamezno, z največ 50.000 vrednostmi JSON in 64 ravnmi gnezdenja ter do 50 starejšimi različicami v prehodnih načinih. Preverjanje se izvede v vašem brskalniku v opravilu v ozadju. Prenesete lahko poročilo JSON in seznam težav CSV.
Načini
Združljivost za nazaj pomeni, da lahko nova shema bere podatke, zapisane s staro shemo, kar je potrebno pri nadgradnji porabnika. Združljivost naprej pomeni, da lahko stara shema bere podatke, zapisane z novo. Popolno preverjanje zajame oboje. Prehodni načini preverijo novo shemo glede na vsako navedeno starejšo različico, od najstarejše naprej, ne le glede na zadnjo.
Pravila razreševanja
Preverjanja sledijo razdelku Schema Resolution iz specifikacije Avro 1.11: int se pretvori v long, float ali double; long v float ali double; float v double; string in bytes pa se pretvorita drug v drugega. Zapisi se ujemajo po polnem imenu, nekvalificiranem imenu ali vzdevku bralnika. Polje bralnika, ki ga zapisovalnik nima, potrebuje veljavno privzeto vrednost. Enum bralnika potrebuje vsak simbol zapisovalnika, razen če ima privzeto vrednost. Vsaka veja unije zapisovalnika mora biti razrešljiva v bralniku.
Omejitve preverjanja
To preverja razreševanje shem Avro, ne dodatnih pravil določenega registra shem. Veljavni logični decimalni tipi morajo imeti enako natančnost in merilo tako za bytes kot za fiksne zapise. Neznani ali neveljavni logični tipi uporabljajo osnovni tip Avro. Privzete vrednosti unije se preverijo glede na prvo vejo; ugnezdene privzete vrednosti se preverjajo rekurzivno.