Download
slide1 n.
Skip this Video
Loading SlideShow in 5 Seconds..
DIS PowerPoint Presentation

DIS

193 Vues Download Presentation
Télécharger la présentation

DIS

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  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 Jouni Javanainen

  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 Jouni Javanainen

  4. Jobille yleinen pohja • Parametrit • Precode, Postcode • Tip: yleismakro • Status Handling • Mahdollisesti useampia eri tilanteisiin Jouni Javanainen

  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 Jouni Javanainen

  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 Jouni Javanainen

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

  8. Table Loader, Compress • Ei toimi • Toimii Jouni Javanainen

  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) Jouni Javanainen

  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 Jouni Javanainen

  11. Case: Eri transformaatioketjut eri tilanteissa Jouni Javanainen

  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 Jouni Javanainen

  13. Transformaatio ja Makro Jouni Javanainen

  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 Jouni Javanainen

  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 Jouni Javanainen

  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 Jouni Javanainen

  17. Kysymyksiä? Kiitos mielenkiinnosta.