Jaa


Avaa peilauksena silausvyöhykevaatimukset ja muoto

Tässä artikkelissa kuvataan avoimien peilauksen saapumisvyöhykkeen ja taulukon/sarakkeen toimintavaatimukset Microsoft Fabricissa.

Tärkeä

Tämä ominaisuus on esikatselutilassa.

Kun olet luonut avoimen peilatun tietokannan Fabric-portaalin tai julkisen ohjelmointirajapinnan kautta Fabric-työtilassa, saat onelakessa aloitusalueen URL-osoitteen peilatun tietokantakohteesi aloitussivulta . Tällä saapumisalueella sovelluksesi luo metatietotiedoston ja maatiedot Parquet-muodossa (pakkaamaton, Snappy, GZIP, ZSTD).

Kangasportaalin näyttökuva, joka näyttää peilatun tietokantakohteen aloitussivulla olevan laskeutumisalueen URL-sijainnin.

Laskeutumisalue

Jokaiselle peilatulle tietokannalle on OneLakessa ainutlaatuinen tallennussijainti metatiedoja ja delta-taulukoita varten. Avoin peilaus tarjoaa sovellukselle saapumisvyöhykekansion, jossa voit luoda metatietotiedoston ja työntää tietoja OneLakeen. Peilaus valvoo näitä tiedostoja aloitusalueella ja lukee kansion uusille taulukoille ja lisätyille tiedoille.

Jos esimerkiksi aloitusalueelle on luotava taulukoita (Table A, Table B, Table C), luo kansioita, kuten seuraavat URL-osoitteet:

  • https://onelake.dfs.fabric.microsoft.com/<workspace id>/<mirrored database id>/LandingZone/TableA
  • https://onelake.dfs.fabric.microsoft.com/<workspace id>/<mirrored database id>/LandingZone/TableB
  • https://onelake.dfs.fabric.microsoft.com/<workspace id>/<mirrored database id>/LandingZone/TableC

Metatietotiedosto aloitusalueella

Jokaisessa taulukkokansiossa _metadata.json on oltava tiedosto.

Tämä taulukon metatietotiedosto sisältää JSON-tietueen, joka tällä hetkellä määrittää vain yksilöivät avainsarakkeet muodossa keyColumns.

Esimerkiksi sarakkeiden C1 ilmoittaminen ja C2 taulukon yksilöivän yhdistelmäavaimena:

{
   "keyColumns" : ["C1", "C2"]
}

Jos keyColumns tai _metadata.json ei määritetä, päivitystä/poistamista ei voi tehdä. Tämä tiedosto voidaan lisätä milloin tahansa, mutta lisäystä keyColumns ei voi muuttaa.

Datatiedosto ja muoto aloitusvyöhykkeellä

Avoin peilaus tukee Parquetia aloitusalueen tiedostomuodossa pakkaamisen kanssa tai ilman sitä. Tuettuja pakkausmuotoja ovat Snappy, GZIP ja ZSTD.

Kaikki maihinnousualueelle kirjoitetut Parquet-tiedostot ovat seuraavassa muodossa:

<RowMarker><DataColumns>

  • RowMarker: sarakkeen nimi on __rowMarker__ (mukaan lukien kaksi alaviivaa ennen ja jälkeen rowMarker).

    • RowMaker arvot:
      • 0 LISÄÄ-kohtaan
      • 1 PÄIVITYSTÄ VARTEN
      • 2 poista
      • 4 UPSERT:lle
  • Rivijärjestys: Tiedoston kaikkien lokien on oltava luonnollisessa järjestyksessä, kuten tapahtumassa käytetään. Tämä on tärkeää samalle riville, jota päivitetään useita kertoja. Avoin peilaus ottaa muutokset käyttöön tiedostojen järjestyksessä.

  • Tiedostojärjestys: Tiedostot tulee lisätä yksitoikkoisesti kasvavina lukuina.

  • Tiedostonimi: Tiedostonimi on 20 numeroa, kuten 00000000000000000001.parquet ensimmäisessä tiedostossa ja 00000000000000000002.parquet toisella. Tiedostonimien tulee olla jatkuvissa luvuissa. Peilauspalvelu poistaa tiedostot automaattisesti, mutta viimeinen tiedosto jätetään niin, että julkaisijajärjestelmä voi viitata siihen lisätäkseen seuraavan tiedoston järjestyksessä.

Alkuperäinen lataus

Tietojen ensimmäisen kuormituksen avoimeen peilattuun tietokantaan kaikilla riveillä tulee olla LISÄÄ rivimerkkinä. Ilman RowMarker tiedoston tietoja peilaus käsittelee koko tiedostoa INSERT-muodossa.

Lisäävät muutokset

Avoin peilaus lukee lisääviä muutoksia järjestyksessä ja ottaa ne käyttöön delta-kohdetaulukossa. Muutoslokin ja tiedostojen järjestyksen implisiittinen järjestys.

Päivitettyjen rivien on sisällettävä koko rivin tiedot kaikki sarakkeita käyttäen.

Tässä on joitakin rivihistorian esimerkkiparquet-tietoja, jotka muuttavat E0001:n EmployeeLocation EmployeeID Redmondista Bellevueen. Tässä skenaariossa EmployeeID sarake on merkitty aloitusvyöhykkeen metatietotiedoston avainsarakkeeksi.

__rowMarker__,EmployeeID,EmployeeLocation
0,E0001,Redmond
0,E0002,Redmond
0,E0003,Redmond
1,E0001,Bellevue

Jos avainsarakkeet päivitetään, sen pitäisi olla DELETE-funktiolla edellisissä avainsarakkeissa ja LISÄÄ-riveillä, joissa on uusi avain ja tiedot. Esimerkiksi rivihistoria, jonka avulla E0001: RowMarker n yksilöivä tunniste muutetaan E0001:ksi E0002:ksi EmployeeID . Sinun ei tarvitse antaa kaikkia saraketietoja DELETE-riville, vain avainsarakkeille.

__rowMarker__,EmployeeID,EmployeeLocation
0,E0001,Bellevue
2,E0001,NULL
0,E0002,Bellevue

Taulukkotoiminnot

Avoin peilaus tukee taulukkotoimintoja, kuten taulukoiden lisäämistä, pudottamista ja uudelleennimeämistä.

Lisää taulukko

Avoin peilaus poimii ylös minkä tahansa sovelluksen laskeutumisalueelle lisätyn taulukon. Avaa uusien taulukoiden peilauskuvaukset jokaisessa iteraatiossa.

Avattava taulukko

Avoin peilaus pitää kirjaa kansion nimestä. Jos taulukkokansio poistetaan, peilattu tietokanta pudottaa taulukon avoimeen peilattuun tietokantaan.

Jos kansio luodaan uudelleen, avoin peilaus pudottaa taulukon ja luo sen uudelleen kansion uusilla tiedoilla, jotka suoritetaan seuraamalla kansion ETag-mittaria.

Kun yrität pudottaa taulukon, voit yrittää poistaa kansion, mutta on olemassa mahdollisuus, että avoin peilaus käyttää edelleen tietoja kansiosta, mikä aiheuttaa poistovirheen julkaisijalle.

Taulukon nimeäminen uudelleen

Jos haluat nimetä taulukon uudelleen, pudota kansio uudelleen ja luo se uudelleen käyttäen alkuperäisiä ja lisääviä tietoja. Tiedot on lisättävä uudelleen nimettyun taulukkoon.

Rakenne

Taulukon polku voidaan määrittää rakennekansioon. Rakenteen aloitusvyöhykkeellä tulee olla kansion <schemaname>.schema nimi. Rakenteet voivat olla useita ja rakenteessa voi olla useita taulukoita.

Jos sinulla on esimerkiksi rakenteet (Schema1, Schema2) ja taulukot (Table A, Table B, Table C), jotka on luotava aloitusalueelle, luo kansioita, kuten seuraavat polut OneLakessa:

  • https://onelake.dfs.fabric.microsoft.com/<workspace id>/<mirrored database id>/LandingZone/Schema1.schema/TableA
  • https://onelake.dfs.fabric.microsoft.com/<workspace id>/<mirrored database id>/LandingZone/Schema1.schema/TableB
  • https://onelake.dfs.fabric.microsoft.com/<workspace id>/<mirrored database id>/LandingZone/Schema2.schema/TableC

Taulukon sarakkeet ja saraketoiminnot

Saraketyypit

  • Yksinkertaisia parquet-tyyppejä tuetaan aloitusvyöhykkeessä.
  • Monimutkaiset tyypit tulee kirjoittaa JSON-merkkijonona.
  • Binaarista monitasoisia tyyppejä, kuten maantiede, kuvat jne. voidaan tallentaa binaarityyppinä saapumisalueelle.

Lisää sarake

Jos uusia sarakkeita lisätään parquet-tiedostoihin, avoin peilaus lisää sarakkeet delta-taulukoihin.

Poista sarake

Jos sarake pudotetaan uusista lokitiedostoista, avaa kyseisten sarakkeiden peilaussäilöt NULL uusilla riveillä ja vanhoilla riveillä on sarakkeita tiedoissa. Jos haluat poistaa sarakkeen, pudota taulukko ja luo taulukkokansio uudelleen aloitusalueelle, jolloin Delta-taulukko luodaan uudelleen uudella rakenteella ja tiedoilla.

Avoin peilaus yhdistää aina kaikki lisättyjen tietojen aiemman version sarakkeet. Jos haluat poistaa sarakkeen, luo taulukko/kansio uudelleen.

Muuta saraketyyppiä

Jos haluat muuttaa saraketyyppiä, pudota ja luo kansio uudelleen käyttäen alkuperäisiä ja lisääviä tietoja uudella saraketyypillä. Uuden saraketyypin tarjoaminen ilman taulukon uudelleenluomista aiheuttaa virheen, ja tämän taulukon replikointi lopetetaan. Kun taulukkokansio on luotu uudelleen, replikointi jatkuu uusilla tiedoilla ja rakenteella.

Sarakkeen nimeäminen uudelleen

Jos haluat nimetä sarakkeen uudelleen, poista taulukkokansio ja luo kansio uudelleen kaikilla tiedoilla ja uudella sarakkeen nimellä.

Seuraava vaihe