Oszlopminták használata az adatfolyamok leképezésében

A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics

Tipp.

Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!

Számos leképezési adatfolyam-átalakítás lehetővé teszi, hogy a sablonoszlopokra minták alapján hivatkozzon a kemény kóddal kódolt oszlopnevek helyett. Ezt az egyezést oszlopmintáknak nevezzük. A pontos mezőnevek megkövetelése helyett a név, adattípus, stream, forrás vagy pozíció alapján definiálhat olyan mintákat, amelyek megfelelnek az oszlopoknak. Az oszlopminták két esetben hasznosak:

  • Ha a bejövő forrásmezők gyakran változnak, például a szövegfájlokban vagy a NoSQL-adatbázisokban lévő oszlopok módosításakor. Ezt a forgatókönyvet sémaeltolódásnak nevezzük.
  • Ha egy gyakori műveletet szeretne végrehajtani egy nagy oszlopcsoporton. Például minden olyan oszlopot, amelynek oszlopnevében "total" szerepel, dupla értékre szeretné helyezni.

Oszlopminták származtatott oszlopban és összesítésben

Ha oszlopmintát szeretne hozzáadni egy származtatott oszlopban, összesítésben vagy ablakátalakításban, kattintson a Hozzáadás gombra az oszloplista fölött, vagy a meglévő származtatott oszlop melletti plusz ikonra. Válassza az Oszlopminta hozzáadása lehetőséget.

Screenshot shows the plus icon to Add column pattern.

A kifejezésszerkesztő használatával adja meg az egyeztetési feltételt. Hozzon létre egy logikai kifejezést, amely megfelel az oszlopoknak a name, type, stream, originés position az oszlop alapján. A minta hatással lesz minden olyan oszlopra, elsodródott vagy definiált oszlopra, ahol a feltétel igaz értéket ad vissza.

Screenshot shows the Derived column's settings tab.

A fenti oszlopminta megegyezik minden dupla típusú oszloptal, és egyezésenként egy származtatott oszlopot hoz létre. Az oszlopnév mezőként való megjelöléssel $$ minden egyező oszlop ugyanazzal a névvel frissül. Az egyes oszlopok értéke a két tizedespontra kerekített meglévő érték.

Az egyező feltétel helyességének ellenőrzéséhez ellenőrizheti a megadott oszlopok kimeneti sémáját a Vizsgálat lapon, vagy lekérheti az adatok pillanatképét az Adatok előnézete lapon.

Screenshot shows the Output schema tab.

Hierarchikus mintaegyezés

Összetett hierarchikus struktúrákon belül is létrehozhat mintaegyezést. Bontsa ki azt a szakaszt Each MoviesStruct that matches , amelyben a rendszer kérni fogja az adatfolyam minden egyes hierarchiáját. Ezután létrehozhat egyező mintákat a kiválasztott hierarchián belüli tulajdonságokhoz.

Screenshot shows hierarchical column pattern.

Szerkezetek simítása

Ha az adatok összetett struktúrákkal( például tömbök, hierarchikus struktúrák és térképek) vannak, az Összesimított átalakítás használatával megszüntetheti a tömbök regisztrációját, és denormalizálhatja az adatokat. Struktúrák és térképek esetén használja a származtatott oszlopátalakítást oszlopmintákkal az összesimított relációs táblázat hierarchiákból való létrehozásához. Használhatja a mintához hasonló oszlopmintákat, amelyek a földrajzi hierarchiát egy relációs táblaűrlapra simítják:

Screenshot shows the Derived column's flatten structure.

Szabályalapú leképezés a kiválasztásban és a fogadóban

A forrásoszlopok leképezése és az átalakítások kiválasztásakor rögzített vagy szabályalapú leképezéseket is hozzáadhat. Egyezés a name, type, stream, originés position az oszlopok alapján. A rögzített és szabályalapú leképezések bármilyen kombinációjával rendelkezhet. Alapértelmezés szerint az 50 oszlopnál nagyobb vetítések alapértelmezés szerint szabályalapú leképezésre kerülnek, amelyek minden oszlopon megegyeznek, és a bemeneti nevet adja ki.

Szabályalapú leképezés hozzáadásához kattintson a Leképezés hozzáadása elemre, és válassza a Szabályalapú megfeleltetés lehetőséget.

Screenshot shows Rule-based mapping selected from Add mapping.

Minden szabályalapú megfeleltetéshez két bemenet szükséges: az a feltétel, amely alapján egyezni kell, és hogy mit nevezze el az egyes megfeleltetett oszlopoknak. Mindkét érték bevitele a kifejezésszerkesztőn keresztül van megadva. A bal oldali kifejezésmezőbe írja be a logikai egyezés feltételét. A jobb oldali kifejezésmezőben adja meg, hogy a megfeleltetett oszlop mire lesz megfeleltetve.

Screenshot shows a mapping.

Szintaxissal $$ hivatkozhat egy egyeztetett oszlop bemeneti nevére. Ha például a fenti képet használja, tegyük fel, hogy egy felhasználó az összes olyan sztringoszlopon egyezni szeretne, amelynek a neve hat karakternél rövidebb. Ha egy bejövő oszlop neve el lett nevezve test, a kifejezés $$ + '_short' átnevezi az oszlopot test_short. Ha ez az egyetlen leképezés, a rendszer minden olyan oszlopot elvet a kimeneti adatokból, amelyek nem felelnek meg a feltételnek.

A minták egyeznek a sodródott és a definiált oszlopokkal is. Ha látni szeretné, hogy mely definiált oszlopokat képezi le egy szabály, kattintson a szabály melletti szemüveg ikonra. Ellenőrizze a kimenetet az adatelőnézet használatával.

Regex-leképezés

Ha a lefelé mutató sáv ikonra kattint, megadhatja a regex-leképezési feltételt. A regex-leképezési feltétel megegyezik az összes olyan oszlopnévvel, amely megfelel a megadott regex feltételnek. Ez standard szabályalapú leképezésekkel kombinálva használható.

Screenshot shows the regex-mapping condition with Hierarchy level and Name matches.

A fenti példa egyezik a regex mintával (r) vagy az r kisbetűs oszlopnévvel. A normál szabályalapú leképezéshez hasonlóan az összes egyező oszlopot a jobb oldali állapot szintaxissal $$ módosítja.

Szabályalapú hierarchiák

Ha a definiált kivetítés hierarchiával rendelkezik, szabályalapú leképezéssel megfeleltetheti a hierarchiák almappáit. Adjon meg egy megfelelő feltételt és azt az összetett oszlopot, amelynek almappáit le szeretné képezni. A rendszer minden egyező almappát a jobb oldalon megadott "Név mint" szabály alapján ad ki.

Screenshot shows a rule-based mapping using for a hierarchy.

A fenti példa az összetett oszlop aösszes almappáján megegyezik. a két almappát b és c. A kimeneti séma két oszlopot b fog tartalmazni, és c mivel a "Név mint" feltétel az $$.

Mintamegfeleltetési kifejezésértékek

  • $$ a futtatáskor az egyes egyezések nevére vagy értékére fordítja le. Gondoljon úgy $$ , mint a this
  • $0 a skaláris típusok futtatási idején az aktuális oszlopnévegyezésre fordít. Hierarchikus típusok $0 esetén az aktuális megfeleltethető oszlophierarchia elérési útját jelöli.
  • name az egyes bejövő oszlopok nevét jelöli
  • type az egyes bejövő oszlopok adattípusát jelöli. Az adatfolyam-típusrendszer adattípusainak listája itt található .
  • stream az egyes adatfolyamokhoz vagy a folyamat átalakításához társított nevet jelöli
  • position az adatfolyam oszlopainak sorszáma
  • origin az az átalakítás, amelyből egy oszlop származik vagy legutóbb frissült