Slijed Generator Transformacija u informatici
⚡ Pametni sažetak
Slijed Generator Transformacija u Informatici je pasivni, povezani objekt koji proizvodi numeričke nizove za surogatne i primarne ključne stupce, predajući svakom retku vrijednost putem dva fiksna izlazna porta nazvana NEXTVAL i CURRVAL.
Što je Sekvenca Generator Transformacija?
Slijed Generator transformacija je pasivna, pa ne utječe na broj ulaznih redaka. Slijed Generator koristi se za generiranje primarnih ključeva i koristi se za generiranje numeričkih nizova poput 1, 2, 3, 4, 5 itd.
Na primjer, ako želite dodijeliti vrijednosti sekvence izvornim zapisima, možete koristiti Sequence GeneratorGenerirane vrijednosti niza mogu biti poput 5, 10, 15, 20, 25 itd. ili 10, 20, 30, 40, 50 itd., ovisno o konfiguriranim svojstvima transformacije.
Za razliku od većine transformacija, ova uopće nema ulaznih portova. Ne čita dolazne retke, jednostavno predaje sljedeći broj portu na koji je povezan, zbog čega ju je sigurno postaviti pored bilo kojeg cjevovoda u kartaping.
Portovi u nizu Generator transformacija
Slijed Generator ima dva izlazna porta
- ZAKRIVLJENOST
- NEXTVAL
Vrijednost porta CURRVAL uvijek je NEXTVAL plus vrijednost Increment By, pa se čita samo kao NEXTVAL+1, dok je Increment By ostavljen na zadanoj vrijednosti 1.
Za generiranje slijednih brojeva uvijek koristimo stupac NEXTVAL. Tablica u nastavku sažima kako se ponašaju dva porta.
| luka | Što vraća | Kada ga spojiti |
|---|---|---|
| NEXTVAL | Sljedeći broj u nizu za svaki redak koji prolazi kroz cjevovod. | Gotovo uvijek. Ovo je port koji dovodi ključni stupac u cilju. |
| ZAKRIVLJENOST | NEXTVAL plus vrijednost Povećanja za. | Samo uz NEXTVAL. Povezan samostalno, prosljeđuje istu konstantnu vrijednost za svaki redak. |
Niti jedan port ne može se preimenovati ili ukloniti, niti se može dodati treći port, tako da se svaka promjena generiranih brojeva vrši na kartici Svojstva, a ne na portovima.
Svojstva niza Generator transformacija
- Početna vrijednost – to je prva vrijednost koja će se generirati transformacijom, zadana vrijednost je 0.
- Povećaj za – ovo je broj za koji želite povećati vrijednosti. Zadana vrijednost je 1.
- Krajnja vrijednost – To je najveća vrijednost koju bi transformacija trebala generirati.
- Ciklus – ako je ova opcija postavljena, nakon dostizanja kraja vrijednosti, transformacija se ponovno pokreće od početne vrijednosti.
Tri dodatne postavke pojavljuju se na istoj kartici i važne su čim se transformacija podijeli ili se sesija ponovno pokrene.
| Svojstvo | Što kontrolira | Zadano |
|---|---|---|
| Trenutna vrijednost | Vrijednost od koje počinje sljedeća sesija. Integracijska usluga ažurira je u repozitoriju kako se generiraju retci. | 1 |
| Broj predmemoriranih vrijednosti | Koliko je vrijednosti rezervirano u memoriji istovremeno tako da istodobne sesije nikada ne predaju isti broj dva puta. | 0 za jednokratnu upotrebu, 1000 za višekratnu upotrebu |
| Reset | Pokreće svaku sesiju od izvorne trenutne vrijednosti umjesto da se nastavi. Nije dostupno na sekvenci koja se može ponovno koristiti. Generators. | onesposobljen |
| TracRazina | Količina detalja zapisanih u zapisnik sesije: Sažeto, Normalno, Verbozna inicijalizacija ili Verbozni podaci. | Normalan |
Kako koristiti sekvencu Generator Transformacija u informatici
U ovom primjeru generirat ćemo slijedne brojeve i pohraniti ih u cilj. Prođite kroz osam koraka u nastavku na mapi.ping Dizajner.
Korak 1) Stvorite ciljnu tablicu pomoću sljedeće skripte.
Preuzmite gornju datoteku emp_sequence.sql
Korak 2) Uvezite tablicu u Informatici kao ciljnu tablicu.
Korak 3) Stvorite novu kartuping i uvozite EMP izvornu i EMP_SEQUENCE ciljnu tablicu. Obje definicije sada se nalaze na platnu, kao što je prikazano dolje.
Korak 4) Stvorite novu transformaciju na kartiping
- Odaberite transformaciju niza kao vrstu
- Unesite naziv transformacije “seq_emp”
- Odaberite opciju Stvori
Korak 5) Slijed Generator transformacija će biti kreirana, odaberite opciju gotovo. Objekt seq_emp sada se pojavljuje na platnu sa svoja dva porta.
Korak 6) Poveži stupac NEXTVAL niza Generator u SNO stupac u cilju.
Korak 7) Povežite ostale stupce iz kvalifikator izvora transformacija u ciljnu tablicu.
Korak 8) Double kliknite na sekvencu Generator za otvaranje prozora svojstava, a zatim
- Odaberite karticu svojstava
- Unesite svojstva s početnom vrijednošću =1, a ostala svojstva ostavite kao zadana
- Odaberite gumb OK
Sada spremite kartuping i izvršite ga nakon što ga kreirate Sjednica i tijek rada.
Stupac sno u cilju sadržavao bi slijedne brojeve generirane od strane Sequence-a. Generator transformacija.
U našem primjeru, nizovi će biti ovako: 1 – Scott, 2 – King, 3 – Adam, 4 – Miller itd.
Višekratno upotrebljivi i jednokratno upotrebljivi niz Generators
Transformacija izgrađena iznad živi unutar jedne mapepingStvaranjem u Transformation Developeru on postaje ponovno upotrebljiv, a oboje se ponašaju drugačije kada je uključeno više od jedne sesije.
| Točka usporedbe | Za jednokratnu upotrebu | Za višekratnu upotrebu |
|---|---|---|
| Gdje se stvara | Unutar jedne karteping, na Kartiping dizajner | U Transformation Developeru, zatim dodano na bilo koji broj mapapings |
| Broj predmemoriranih vrijednosti | Zadano je 0, tako da vrijednosti nisu unaprijed rezervirane | Zadano je 1000, tako da svaka sesija rezervira vlastiti blok brojeva |
| Poništi svojstvo | Dostupno i ponovno pokreće slijed od izvorne trenutne vrijednosti | Nije dostupno jer bi ponovno pokretanje dodijelilo brojeve koji su već iskorišteni u drugoj sesiji. |
| Tipična upotreba | Jedan ciljni ključni stupac na jednoj mapiping | Zajednički surogat ključ na nekoliko mapapingučitava istu dimenziju |
Predmemoriranje je ono što razdvaja istodobne sesije. Svaka sesija uzima blok brojeva unaprijed, što znači da brojevi ostaju jedinstveni, ali ne ostaju susjedni: sve vrijednosti koje ostanu neiskorištene kada se sesija završi odbacuju se, a sljedeći blok počinje nakon njih.
Pravila i ograničenja sekvence Generator transformacija
Neki od njih se pojavljuju tek nakon karteping je pokrenut, pa je jeftinije znati ih prije nego što se portovi povežu.
- Portovi su fiksni. NEXTVAL i CURRVAL se ne mogu uređivati ili brisati, a transformaciji se ne može dodati nijedan daljnji port.
- CURRVAL sama po sebi vraća konstantu. Poveži CURRVAL samo kada je NEXTVAL također povezan nizvodno, inače svaki red prima istu vrijednost.
- Dvije mete se pune jedna za drugom. Kada NEXTVAL unosi podatke u dvije ciljne tablice, prva ciljna tablica se učitava svojim brojevima prije početka druge ciljne tablice, tako da se dva skupa ne isprepliću.
- Praznine su normalne. Predmemorirane vrijednosti koje sesija ne koristi nikada se ne vraćaju, pa neuspješna ili kratka sesija ostavlja praznine u nizu. Dizajnirajte ključni stupac tako da tolerira praznine.
- Ciklus može stvoriti duplikate. Nakon što se dostigne krajnja vrijednost s omogućenim ciklusom, numeriranje se ponovno pokreće od početne vrijednosti, što će se kolidirati s postojećim ključevima osim ako cilj to ne dopušta.
Budući da nikada ne čita redak, transformacija gotovo ništa ne dodaje vremenu izvođenja sesije, zbog čega se rijetko pojavljuje kao usko grlo tijekom podešavanje izvedbeGdje ključ mora ovisiti o samim podacima, a ne o brojaču, Agregator or Pretvorba stolara je objekt koji obavlja taj rad, a ne ovaj.







