1 / 17

DIS

DIS. Jouni Javanainen Fennia 14.9.2010 Technical Club. Sisältö. Yleisiä näkemyksiä DIStudiosta Muutamia transformaatioita: huomioita ja vinkkejä DIS vs. höyrykoodi. Työskentelyn periaatteet. ”Käsialattomuus”, ”persoonattomuus”

dean-rice
Download Presentation

DIS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

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.

More Related