Sorozat Generator Transzformáció az informatikában

⚡ Okos összefoglaló

Sorozat Generator Az Informaticában a transzformáció egy passzív, összekapcsolt objektum, amely numerikus sorozatokat állít elő a helyettes és elsődleges kulcs oszlopaihoz, és minden sornak egy értéket ad át két fix kimeneti porton, a NEXTVAL-on és a CURRVAL-on keresztül.

  • 🔢 Két fix port: A NEXTVAL függvény a generált számokat tartalmazza, a CURRVAL pedig a NEXTVAL értéket adja vissza, plusz a Növekmény mértéke értéket.
  • 🇧🇷 Négy fő tulajdonság: A Kezdőérték, a Növekmény mértéke, a Záróérték és a Ciklus határozza meg az egyes előállított sorozatok alakját.
  • 🧪 Működő példa: Nyolc térképping A tervezői lépések betöltik a generált számokat egy EMP_SEQUENCE cél SNO oszlopába.
  • ♻️ Újrafelhasználható opció: Egy újrafelhasználható szekvencia Generator több térkép is megosztjapingés alapértelmezés szerint 1,000 értéket gyorsítótáraz.
  • 🔒 A portok rögzítve vannak: A portok nem adhatók hozzá, szerkeszthetők vagy törölhetők, így minden viselkedésük a Tulajdonságok lapon vezérelhető.
  • 🗝️ Helyettesítő kulcsok: A raktári dimenziótáblák generált kulcsokat használnak a forrásrendszerből származó természetes kulcsok helyett.

Sorozat Generator Transzformáció az informatikában

Mi az a Sequence Generator Átalakítás?

Sorozat Generator A transzformáció passzív, tehát nem befolyásolja a bemeneti sorok számát. Generator elsődleges kulcsértékek generálására szolgál, és numerikus sorozatértékek, például 1, 2, 3, 4, 5 stb. generálására szolgál.

Például, ha sorozatértékeket szeretne hozzárendelni a forrásrekordokhoz, akkor használhatja a Sorozat függvényt. GeneratorA generált szekvenciaértékek lehetnek például 5, 10, 15, 20, 25 stb. vagy 10, 20, 30, 40, 50 stb., a transzformáció konfigurált tulajdonságaitól függően.

A legtöbb transzformációval ellentétben ennek egyáltalán nincsenek bemeneti portjai. Nem olvassa be a bejövő sorokat, egyszerűen csak átadja a következő számot annak a portnak, amelyhez kapcsolódik, ezért biztonságosan elhelyezhető bármelyik pipeline mellett egy térképping.

Portok egy szekvenciában Generator Átalakítás

Sorozat Generator két kimeneti porttal rendelkezik

  • CURRVAL
  • NEXTVAL

A CURRVAL port értéke mindig a NEXTVAL plusz a Növelés mértéke érték, tehát csak NEXTVAL+1-ként olvasható, míg a Növelés mértéke az alapértelmezett 1-en marad.

A sorszámok generálásához mindig a NEXTVAL oszlopot használjuk. Az alábbi táblázat összefoglalja a két port viselkedését.

Kikötő Mit ad vissza Mikor kell csatlakoztatni
NEXTVAL A folyamaton áthaladó minden sor szekvenciájának következő száma. Szinte mindig. Ez az a port, amely egy kulcsoszlopot táplál a célállomáson.
CURRVAL NEXTVAL plusz a Növekmény mértéke érték. Csak a NEXTVAL mellett. Önmagában összekapcsolva minden sorhoz ugyanazt a konstans értéket adja át.

Egyik port sem nevezhető át vagy távolítható el, és harmadik port sem adható hozzá, így a generált számok minden módosítása a Tulajdonságok lapon történik, nem pedig a portokon.

A szekvencia tulajdonságai Generator Átalakítás

  • Kezdő érték – Ez az első érték, amelyet az átalakítás generál, az alapértelmezett érték 0.
  • Növelés: Ez az a szám, amellyel növelni szeretné az értékeket. Az alapértelmezett érték 1.
  • Végérték – Ez az a maximális érték, amelyet a transzformációnak generálnia kell.
  • Ciklus – ha ez az opció be van állítva, akkor az érték végének elérése után a transzformáció újraindul a kezdőértéktől.

Három további beállítás jelenik meg ugyanazon a lapon, és akkor lépnek életbe, amint a transzformációt megosztják vagy a munkamenetet újrafuttatják.

Ingatlanok Mit szabályoz alapértelmezett
Jelenlegi érték Az az érték, amelyről a következő munkamenet-futtatás indul. Az Integrációs szolgáltatás frissíti ezt a tárházban a sorok generálásakor. 1
Gyorsítótárazott értékek száma Hány érték legyen lefoglalva a memóriában egyszerre, hogy az egyidejű munkamenetek soha ne adják ki kétszer ugyanazt a számot. 0 az egyszer használatos, 1000 az újrafelhasználható
vissza Minden munkamenetet az eredeti aktuális értékről indít a folytatás helyett. Újrafelhasználható szekvenciák esetén nem érhető el. Generators. mozgássérült
Tracszint A munkamenet-naplóba írt részletek mennyisége: Tömör, Normál, Részletes inicializálás vagy Részletes adatok. Normál

A szekvencia használata Generator Transzformáció az informatikában

Ebben a példában sorszámokat fogunk generálni és tárolni a célállomáson. Végezze el az alábbi nyolc lépést a Térképen.ping Tervező.

Step 1) Hozzon létre egy céltáblát a következő szkripttel.

Töltse le a fenti emp_sequence.sql fájlt

Step 2) Importálja a táblázatot az Informaticában céltáblaként.

Step 3) Hozzon létre egy új térképetping és importálja az EMP forrás- és az EMP_SEQUENCE céltáblát. Mindkét definíció most már a vásznon található, az alábbiak szerint.

Térképping Tervező az EMP forrással és az importált EMP_SEQUENCE céldefinícióval

Step 4) Új transzformáció létrehozása a térképenping

  1. Válassza ki típusként a sorozattranszformációt
  2. Írja be a transzformáció nevét: „seq_emp”
  3. Válassza a Létrehozás lehetőséget

Transzformációs ablak létrehozása szekvenciával Generator kiválasztottuk és beírtuk a seq_emp nevet

Step 5) Sorozat Generator A transzformáció létrejön, válaszd a kész opciót. A seq_emp objektum most megjelenik a vásznon a két portjával.

Sorozat Generator A térképen létrehozott seq_emp transzformációping vászon

Step 6) A Sequence NEXTVAL oszlopának összekapcsolása Generator az SNO oszlopba a célban.

A seq_emp NEXTVAL portja az EMP_SEQUENCE cél SNO oszlopához van kapcsolva.

Step 7) Kapcsolja össze a többi oszlopot innen forrásminősítő átalakítás a céltáblába.

Az EMP_SEQUENCE céltáblához csatolt fennmaradó forrásminősítő oszlopok

Step 8) Double kattintson a Sorozatra Generator a tulajdonságablak megnyitásához, majd

  1. Válassza ki a tulajdonságok lapot
  2. Adja meg a tulajdonságokat a Start érték =1 értékkel, a többi tulajdonságot hagyja alapértelmezettként
  3. Válassza az OK gombot

A szekvencia Tulajdonságok lapja Generator transzformáció 1-re beállított kezdőértékkel

Most mentsd el a térképetping és végrehajtása a létrehozása után ülés és a munkafolyamat.

A cél sno oszlopa tartalmazza a Sequence által generált sorszámokat. Generator átalakulás.

A példánkban a sorozatok a következőképpen alakulnak: 1 – Scott, 2 – King, 3 – Adam, 4 – Miller stb.

Újrafelhasználható és nem újrafelhasználható szekvencia Generators

A fent épített átalakulás egyetlen térképen belül élpingHa ehelyett a Transformation Developerben hozzuk létre, akkor újrafelhasználhatóvá válik, és a kettő másképp viselkedik, ha egynél több munkamenetet vesz igénybe.

Összehasonlítási pont Újrafelhasználhatatlan Többször
Hol jön létre Egyetlen térképen belülping, a térképenping Tervező Az Átalakításfejlesztőben, majd tetszőleges számú térképhez hozzáadvapings
Gyorsítótárazott értékek száma Alapértelmezés szerint 0, így az értékek nincsenek előre lefoglalva Alapértelmezés szerint 1000-re van állítva, így minden munkamenet saját számblokkot tart fenn.
Tulajdonság visszaállítása Elérhető, és újraindítja a szekvenciát az eredeti aktuális értéktől. Nem elérhető, mert az újraindítás egy másik, már használt munkamenetet eredményezne.
Tipikus felhasználás Egy célkulcs oszlop egy térképenping Megosztott helyettesítő kulcs több térképen keresztülpingugyanazon dimenzió betöltése

A gyorsítótárazás az, ami elválasztja az egyidejű munkameneteket. Minden munkamenet egy számblokkot fogad el előre, ami azt jelenti, hogy a számok egyediek maradnak, de nem összefüggőek: a munkamenet végén fel nem használt értékek elvetik, és a következő blokk utánuk kezdődik.

A szekvencia szabályai és korlátai Generator Átalakítás

Ezek közül néhány csak a térkép feltűnése után kerül elő.ping lefutott, így olcsóbb tudni őket, mielőtt a portok összekapcsolódnak.

  • A portok fixek. A NEXTVAL és a CURRVAL nem szerkeszthető vagy törölhető, és további portok nem adhatók hozzá a transzformációhoz.
  • A CURRVAL önmagában egy konstans értéket ad vissza. A CURRVAL függvényt csak akkor csatlakoztasd, ha a NEXTVAL is csatlakozik a downstream ághoz, ellenkező esetben minden sor ugyanazt az értéket kapja.
  • Két célpontot töltenek be egymás után. Amikor a NEXTVAL két céltáblázatot tölt be, az első céltábla a második céltábla számaival töltődik be, mielőtt a második céltábla elkezdődne, így a két halmaz nem fonódik össze.
  • A rések normálisak. A munkamenet által nem használt gyorsítótárazott értékek soha nem kerülnek visszaadásra, így egy sikertelen vagy rövid munkamenet lyukakat hagy a sorozatban. A kulcs oszlopát úgy tervezze meg, hogy tolerálja a hézagokat.
  • A ciklus képes duplikátumokat létrehozni. Miután a ciklus engedélyezve van, eléri a végértéket, a számozás a kezdőértéktől újraindul, amely ütközik a meglévő kulcsokkal, kivéve, ha a cél ezt engedélyezi.

Mivel soha nem olvas be sort, a transzformáció szinte semmit sem ad hozzá a munkamenet futásidejéhez, ezért ritkán jelenik meg szűk keresztmetszetként a folyamat során. teljesítmény növelésAhol egy kulcsnak magától az adattól kell függenie, nem pedig egy számlálótól, egy Összesítő or Asztalos átalakulás a tárgy végzi azt a munkát, nem ez.

GYIK

A helyettesítő kulcs egy jelentés nélküli szám, amely egy raktári sort azonosít a forrásrendszer azonosítója helyett. Stabil marad, amikor a forrás megváltoztatja a kódjait, és egy generált sorozat a legegyszerűbb módja annak, hogy létrehozzunk egyet.

Mert a számozás akkor benne van a térképenping ahelyett, hogy egyetlen adatbázisban lenne. A lapos fájlok és más nem relációs célpontok ugyanúgy kapják meg a kulcsokat, és ugyanaz az újrafelhasználható objektum több célpontot is számozhat anélkül, hogy táblánként adatbázis-objektumot kellene létrehozni.

A záróérték (Záróérték) maximum 9 223 372 036 854 775 807-et fogad el, ami a legnagyobb előjeles 64 bites egész szám. Ennek elérése túlcsordulási hibával leállítja a munkamenetet, kivéve, ha a Ciklus engedélyezve van, ebben az esetben a számozás a kezdőértéktől újraindul.

Igen. A NEXTVAL függvény bármilyen további transzformációhoz kapcsolódik, leggyakrabban egy összetett kulcsot létrehozó kifejezéshez, vagy egy kereséshez, amely ellenőrzi, hogy létezik-e már kulcs. A generált szám ezután a sorral együtt halad tovább.

Igen, de először ellenőrizd a célt. A Kezdőérték vagy az Aktuális érték szerkesztése egy élő kulcsoszlopon olyan számokat adhat ki, amelyeket a cél már tartalmaz, ezért a legmagasabb kulcs fölé kell emelni az értéket, ahelyett, hogy csökkentenéd.

Alig. Nem olvas sorokat és nem épít gyorsítótár fájlokat, így a költsége soronként egy számlálófrissítés. A nagy terheléseket az olvasó és az író már jóval azelőtt korlátozza, hogy a számozás problémát jelentene.

A mesterséges intelligencia alapú profilkészítők átvizsgálják a forrásoszlopokat, hogy javaslatot tegyenek arra vonatkozóan, melyik kombináció valóban egyedi, megjelölik a null vagy duplikált kulcsokat, és észlelik a betöltések közötti eltérést. A gépi tanuláson alapuló egyeztetés olyan rekordokat is összekapcsol, amelyek ugyanazt az entitást különböző azonosítók alatt írják le.

A másodpilóta megírja az ekvivalenst SQL szekvencia- vagy azonosságdefiníció, valamint az egyeztető lekérdezések, amelyek bizonyítják, hogy egyetlen kulcs sem duplikálódott. Nem látja a tárház értékeit, ezért a betöltés előtt ellenőrizze az aktuális értéket magában a transzformációban.

Foglald össze ezt a bejegyzést a következőképpen: