Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

DIS Jouni Javanainen Fennia 14.9.2010 Technical Club.

Samankaltaiset esitykset


Esitys aiheesta: "DIS Jouni Javanainen Fennia 14.9.2010 Technical Club."— Esityksen transkriptio:

1 DIS Jouni Javanainen Fennia 14.9.2010 Technical Club

2 Sisältö ‣ Yleisiä näkemyksiä DIStudiosta ‣ Muutamia transformaatioita: huomioita ja vinkkejä ‣ DIS vs. höyrykoodi 7.9.2010Jouni Javanainen2

3 Työskentelyn periaatteet ‣ ”Käsialattomuus”, ”persoonattomuus” ‣  Erinomainen tilaisuus luoda yhteiset periaatteet koodaamiselle ‣ Kansiointi metadatassa ‣ Nimeäminen ‣ Omat transformaatiot ‣ Transformaatioiden käyttötapa ‣ User Written Code säännöt 7.9.2010Jouni Javanainen3

4 Jobille yleinen pohja ‣ Parametrit ‣ Precode, Postcode ‣ Tip: yleismakro ‣ Status Handling ‣ Mahdollisesti useampia eri tilanteisiin 7.9.2010Jouni Javanainen4

5 Yleisiä sääntöjä ‣ Jobeista ei kannata tehdä liian suuria, yksi asia = yksi jobi ‣ Mäppäys pitää tehdä aina, myös user written – transformaatiossa ‣ Mäppäyksen voi vyöryttää ylhäältä-alas tai alhaalta-ylös tilanteen mukaan ‣ Jos user writteniä käytetään, niin sen kuuluu olla ”samantasoinen” kuin muutkin transformaatiot eli siinä tehdään yksi asia ‣ Systemaattinen eteneminen, ”kerralla valmiiksi” ‣ Jotkut asiat jälkeenpäin hankala lisätä ‣ Control Flow 7.9.2010Jouni Javanainen5

6 Extract inputdataan ‣ Tehokkuus, koska se luo keep-optio ilmiön ‣ Mitä suurempi data, sitä suurempi hyöty, jos vain osaa muuttujista tarvitaan ‣ Useimmiten kannattaa pitää näkymänä ‣ Periaate: siitä näkee, mitä sarakkeita käytetään ‣ Helpottaa seuraavan transformaation käsittelyä, kun siellä ei ole turhia sarakkeita 7.9.2010Jouni Javanainen6

7 Table loader ‣ Periaate: table loader –transformaatiossa ei luoda enää uutta, esim. expression-lausekkeita ‣ Tehokkuus: indeksien luontiasetukset 7.9.2010Jouni Javanainen7

8 Table Loader, Compress ‣ Ei toimi ‣ Toimii 7.9.2010Jouni Javanainen8

9 Loop ‣ Jobin loopitus ‣ Ei kierrosrajoituksia ‣ Loopitettavan jobin otettava parametrit ‣ Voidaan loopittaa myös transformaatioketju ‣ Ensimmäisen transformaation pitää pystyä ‣ vastaanottamaan parametreja ‣ Yli 10 kierroksen looppi ei onnistunut, ‣ kaatui makroylivuotoon (nested macros) 7.9.2010Jouni Javanainen9

10 Loop, ehdollinen suoritus ‣ Loopin idea on, että se suoritetaan kerran syöttötaulun jokaiselle riville ‣ Case: Transformaatioketju halutaan suorittaa (kerran) vain, jos joku ehto on täyttynyt ‣ User Written ennen looppia, joka luo work-taulun ‣ jossa on yksi rivi, jos ehto täyttyy ‣ jossa on nolla riviä, jos ehto ei täyty ‣ Case: Eri transformaatioketjut eri tilanteissa ‣ User Written ennen looppia, joka luo kaksi taulua ‣ joista toisessa on aina yksi rivi ja toisessa ei yhtään riviä ‣ se loop suoritetaan, jota edeltää yhden rivin taulu ‣ sitä looppia ei suoriteta, jota edeltää tyhjä taulu 7.9.2010Jouni Javanainen10

11 Case: Eri transformaatioketjut eri tilanteissa 7.9.2010Jouni Javanainen11

12 Omat transformaatiot ‣ Usein toistuvat tilanteet ‣ Varsinainen transformaation koodi makroksi ‣ Joustavuus muutostilanteissa ‣ Olemassa olevat makrot ovat hyviä ehdokkaita transformaatioiksi ‣ Transformaation kuuluisi tehdä vain YKSI asia, muutoin DISsin idea katoaa 7.9.2010Jouni Javanainen12

13 Transformaatio ja Makro 7.9.2010Jouni Javanainen13

14 DIS vs. ”Höyry-koodaus” ‣ Ajattelu- ja työskentelytapa erilainen ‣ Osa koodaamisesta muuttuu DISsissä metadatan määrittelyksi ‣ Signon, proc download/upload  Määritellään server, kirjasto ja taulu. Käytetään kuin mitä tahansa taulua. ‣ External files  Määritellään file ja sen kuvaus. File reader, File Writer ‣ (Lähes) loppu koodaaminen muuttuu hiirellä klikkailuksi ja expression-lausekkeiden kirjoittamiseksi ‣  SAS-osaamisen vaatimus laskee, mutta ei katoa 7.9.2010Jouni Javanainen14

15 DIS vs. ”Höyry-koodaus”: Höyrykoodi ‣ Tekijänsä näköinen ‣ Tietävätkö muut kuin tekijä, mitä siinä tapahtuu ‣ Uuden henkilön hankalampi päästä sisään ‣ SAS-osaaminen ‣ Monimutkainen asia hankalampi hallita, yksinkertainen asia nopea tehdä ‣ Dokumentaatiota ei synny ‣ Voi tehdä asioita tahattomasti, esim. jos lähtötauluun lisätään sarake 7.9.2010Jouni Javanainen15

16 DIS vs. ”Höyry-koodaus” : DIS ‣ Visuaalisesti havainnollinen ‣ Antaa silmäyksellä yleiskuvan (!/?) ‣ Yksityiskohdat piilotetaan transformaation sisään ‣ Tekee vain sen, mitä metadataan on kuvattu (kun toimitaan oikein DIS-maailmassa) ‣ Helppo, yksinkertainen asia voi olla hankalampi tehdä ‣ Koodi ei ole tarkoitettu luettavaksi ‣ Joskus uuden asian lisääminen keskelle jobia hankalampaa ‣ Matalampi kynnys uudelle henkilölle ‣ BI-osaaminen 7.9.2010Jouni Javanainen16

17 Kysymyksiä? Kiitos mielenkiinnosta.


Lataa ppt "DIS Jouni Javanainen Fennia 14.9.2010 Technical Club."

Samankaltaiset esitykset


Iklan oleh Google