Kinderegget; enklere, billigere og mye raskere

  • Published on
    26-May-2015

  • View
    649

  • Download
    2

Embed Size (px)

DESCRIPTION

Foredrag 24. oktober: Ark2012 i regi av Dataforeningen. Kinderegget; enklere, billigere og mye raskere Tormod Varhaugvik, seniorrdgiver, Skatteetatens IT- og servicepartner (SITS) Hovedmlet med Skatteetatens mlarkitektur er endringsevne og forvaltningskost. I kjernen finnes en beregningsarkitektur for skatt og avgift. Beregningskjernen m ha hy endringsevne, full testbarhet, liner skalering, store datamengder, lang levetid, fleksibel sourcing og massiv sprring 24/7. Vi har en radikal tilnrming og satt sammen en innovativ pakke. Vi tror vi er alene i verden p dette innen offentlig sektor. Hva med 100% funksjonell testdekning, 30% av dagens forvaltningskost, 5% av hardwarekost og 1000 ganger raskere? Presentasjon viser hvordan en drar nytte av Grid teknologi med Java.

Transcript

  • 1. Kinderegget;enklere, billigere og mye raskereSoftwaredesign for Grid arkitektur Hvordan utnytte den nye plattformen?Ark 2012Tormod Varhaugvik, SKD SITS, Oktober 2012tormodv.blogspot.com

2. Utfordringen Helhet og Fremtidsrettet rsversjonerevn e Helhet r ings End Selvbetjening Handlingsrom Store volum Forvaltningsk Lang levetido st Massiv sprring Hendelsesdrevet Designpakke; Domain Driven Design, Tuple Space, CQRS, BASE, SOA, ODS, XML-dokumenter og god gammel JavaSkatteetaten23.10.2012 2 3. Muligheter Markedssituasjon, n og framover Kompetanse og infrastruktur Involvere markedet mengde dataEnsom endres samletDokument Flerkjerne CPU Mange billige standard maskiner Vi m designe for parallellitet Skalere ut av boksen Ikke alle problemer passerSkatteetaten23.10.2012 3 4. SoftwaredesignSkatteetaten23.10.2012 4 5. Kompleksitet Du kan ikke flykte fra kompleksitet Kan ikke pakkes inn og late som ingenting Kompleksitet har ett omfang, og det m holdes samlet Testbarhet, testbarhet og testbarhet Tas dette feil, vil kompleksiteten komme som en rikosjettSkatteetaten23.10.2012 5 6. Del opp problemet Aggregate designNkkel-objektNkkel-objektTydelig tilgang,konsistens og root Aggregate Informasjoninnkapslingkan ikke seesC p alene! B Oppfrsel m Aogs med N har vi 3 God innkapsling er egentlig bare god softwaredesign dokumenter. God tjenesteorientering Eks. Lnn, Saldo Det gir forvaltbare og testbare komponenter og Selvangivesle Der gir uavhengige informasjonsmengder Uavhengighet gir parallellitetSkatteetaten23.10.2012 6 7. Grid arkitektur: Monster minne AMinne og prosessering som Key Valueomfatter flere maskinerDisklager i bakkant BKey ValueApplikasjon CKey Value Frikoble fra datalaget Sammensetting skjer i Applikasjon Forretningslogikk skjer i Applikasjon Nkkelobjektet kan vre sammensatt Applikasjon er upvirket av volum og krav til svartid Big DataSkatteetaten23.10.2012 7 8. Lagringsarkitektur - Dokument Tenke Aggregat-design (info+use) Forretningslogikk styrende Endringsevne og testbarhet Robust, konsistent og skalerbar Redusert I/O og mindre lsingSuperdokument Superdokument Alle dokumenter har skjema Hva med funksjoner p tvers avaggregater/dokumenter? Skemotor http://tormodv.blogspot.com/2011/02/document-store-for-enterprise.htmlSkatteetaten23.10.2012 8 9. SkattedomeneSkatteetaten23.10.2012 9 10. Helhetlig skatteprosess Enhetlig prosessering rundt ett stort datalager Dyrker forretningsmessig likhet Lpende saksbehandling Skille funksjonalitet fra informasjon Skille informasjonen fra hverandre Skille funksjonalitet fra hverandre Skille funksjonalitet fra infrastruktur Unik eier av informasjon Tenk massivt arkiv med dokumenter hvor vedtakene ligger utenfor Testbar = Forvaltbar Essensiell kompleksitet er n innkapsletSkatteetaten23.10.2012 10 11. XML dokumentstrukturid,Nkkel tiltidspunkt,Hodegjelder,tilstand [privat, pen, fjernet, erstattet] dokumentetrapportert av,erstatterskjematype,gyldighetsperiode [inntektsr, datoperiode],fase [prognose, PSA, levert, fastsatt, klage] Lik for alle Sakversjontilstand [ny, behandles, ferdig ]post2.1.1Tilstand pSelv-text Selvangivelsenangivelseverdi ref Idpost3.1.12.7 Spesifikk prpost5skjematypeSelvangivelsenAvvik avvikbeskrivelsegjelderPosterbrukernavnLoggtidspunkthendelsebegrunnelse Lik for alleendredePoster Skatteetaten 23.10.2012 11 12. Proof of conceptSkatteetaten23.10.2012 12 13. Realiserbart! Erfaring med Smalltalk viste meget stor effektivitet nr man kunne ha forretningslogikk horisontalt Ekte objektorientering Lekker og veldikeholdbar kode (DSL) Kommer langt med en enkel programmeringsmodell Erfaring med domene-orientert distribuert system viser at meldinger til sammen bygger opp ett system En Moduls data kan bygges opp fra ingenting Fikk kontroll p datamodellen og forretningshendelser Dokumentene er grensesnitt mellom Modulene En stor datamodell kan (og br) deles opp i Aggregater Likhet med Finans og Gambling er slende Det John Davies / Cameron Purdy har messet om lenge!Skatteetaten 23.10.2012 13 14. Proof of Concept ml Enkel; ved at regler, informasjon og prosess er tettest opp mot forretningsbegrep Testbar; ved at moduler lar seg teste hver for seg i en tydelig verdikjede Skalerbar; ved at volum og svartider lar? seg lse ved kjp av mer hardware, og ikke igjennom skrive om regler, informasjon eller prosesshttp://tormodv.blogspot.com/2011/09/tax-norways-proof-of-concept.htmlSkatteetaten23.10.2012 14 15. Kjremilj Alle noder er funksjonelt like Flokkoppfrsel Hver node har sin andel data Elastisitet, omkonfigurasjon Skattefamilie samlokalisert Overvkning (teknisk) Grid skjermer teknisk kompleksitet Konsistens (funksjonelt) (partisjonering, sk, jobber, redundans, overflow, lagring, failover, indekser, med mer.) Rett p jernet, ikke virtualiser Transparent for logikken Hva hvis strmmen gr? Maskin (server)Maskin (server) Maskin (server)Grid-node (JVM)Grid-node (JVM)Grid-node (JVM) PSA PSAPSA Saldo- og rentemeldingerSaldo- og rentemeldinger Saldo- og rentemeldinger Lnns- og trekkoppgaver Lnns- og trekkoppgaverLnns- og trekkoppgaver Skattefamilie SkattefamilieSkattefamilie Skatteetaten23.10.2012 15 16. Estimert fullskala produksjon 28.000 Selvangivelser i sekundet (ca 3 minutter) 56.000 Skatteberegninger i sekunder (ca 90 sekunder) 5.100.000 Selvangivelse & Skatt og Skattekort 80.000.000 Grunnlagsdata & Underskjemaer 120 Gb RAM netto 370 Gb RAM brutto med 1x redundans og indekser 12 Servere (Intel i7) a 32 Gb Last av XML fra fil: 6000tps => 5 timer Ekstrem ytelse ikke s viktig i seg selv, men gir handlingsrom Kost ca 400.000 i servere og 1 million i lisens Forretningsnr og vedlikeholdbar kode kan yte sykt bra http://tormodv.blogspot.com/2012/01/tax-norways-poc-results.htmlSkatteetaten23.10.2012 16 17. Softwaredesign er gull Ta det p alvor, det er lov tenke seg om Fysiske lover kan ikke knekkes, men ting kan gjres smart Isoler foretningslogikk fra teknisk arkitektur Kompleksitet er din strste trussel Software m skrives om for dra nytte av dette nye i skyen Testbarhet, enkelhet og parallellitet gr hnd i hnd Gull ogs for de som ikke har store datamengder Frikoble fra tregt datalager Lev deg inn i DDD. POJO er din beste vennhttp://tormodv.blogspot.no/2012/02/module-and-aggregate-design-in-cah.htmlSkatteetaten 23.10.2012 17