Data Warehouse Automation

DWA-VERKTYG och DATA WAREHOUSE AUTOMATION – ALLT DU BEHÖVER VETA

Det pratas mycket om Data Warehouse Automation, förkortat DWA. Men vad är det egentligen och framförallt – hur kan det hjälpa dig? Och vad är bra att tänka på när du ska välja ett DWA-verktyg? Här ger vi dig svaret på dessa, och en del andra frågor kring automatisering av datalager. Häng med!

Vad är Data Warehouse automation?

Som så ofta finns det många olika definitioner, men en är att DWA omfattar alla kärnprocesser för datalagring inklusive design, utveckling, testning, implementering, drift, konsekvensanalys och förändringshantering. Forrester definierar DWA som: ”… programvara som automatiskt genererar ett datalager genom att analysera data själva och tillämpa bästa praxis för DW-design inbäddad i tekniken. Ett annat namn för denna typ av teknik är ”metadata-genererad analys”.

Varför DWA?

Datalager är alltjämt en extremt användbar metod för hantering av information. Problemet har varit upplevelsen att det tar för lång tid att bygga ett datalager och att slutresultatet inte är tillräckligt flexibelt. Detta har lett till mycket frustration, och det är här DWA kommer in. Data Warehouse Automation snabbar helt enkelt upp utvecklingen och förenklar underhållet av datalager.

Vad inkluderas i DWA?

För den tekniskt intresserade så inkluderar DWA-automatisering av följande delar:

  1. Simplifierad Data Warehouse Design.
  2. Automatiserad Build (dvs Generera kod)
  3. Automatiserad Distribution av kod till servern
  4. Automatiserad Batch-exekvering av ETL-koden på servern.
  5. Automatiserad övervakning och rapportering av batch-exekveringen.
  6. Optimering och parallellisering av dataladdning för ökad effektivitet

Skript eller verktyg

Det är möjligt att manuellt skapa skript som genererar kod och därigenom automatisera processerna för Build, Deploy and Run. Men generellt sker automatiseringen med hjälp av ett DWA-verktyg. Fördelar som DWA kan leverera är utforskning av källdata, ETL-generering, testautomatisering, datamodeller metadatahantering, hanterad implementering, schemaläggning, automatisk dokumentation, underhåll och modifiering av datalagret.

Men viktigare än de tekniska egenskaperna hos DWA-verktygen är som sagt möjligheten att leverera datalager-projekt snabbare, och med mindre resurser.

Hela livscykeln

Ett datalagers livscykel inkluderar bland annat modellering, mappning, utveckling, testning och förändringshantering. Grundtanken är att DWA ska inkludera datalagrets hela livscykel, vilket illustreras i följande modell:

DWA

Två generella angreppssätt

När det gäller DWA-verktygens design finns två olika generella angreppssätt. Det första är en modelldriven strategi, den andra ett datadrivet tillvägagångssätt.

Modelldriven strategi innebär

Att du designar dina modeller med verksamheten som utgångspunkt, och när modellerna är godkända söker du efter källdata och importerar dem till den representativa modellen.

Fördelar

Det är troligt att du bara använder de data du behöver.
Affärsbehoven dokumenteras tydligt.

Nackdelar

Kan vara långsamt eftersom du behöver ha många insatser från verksamheten som kan vara utmanande och långsamma, exempelvis i större företag.
Kan vara svårt att synkronisera modellen med den fysiska modellen.
Kan ha felaktiga förväntningar eftersom du kan modellera ett dimensionskoncept men i slutet har du inte data tillgängliga.

Datadrivet tillvägagångssätt innebär

Att du snabbt genererar en modell med de data som finns tillgängliga. Metoden blir också ett sätt att kommunicera med verksamheten, genom att snabbt visa slutresultatet med ett BI-verktyg.

Fördelar

Du bara arbetar med data som faktiskt finns där och företaget har redan en verklig modell som representerar data och kan utvecklas. Detta passar mycket bra med den smidiga metoden för DWA-verktyg.

Nackdelar

Det visar inte på ett enkelt sätt, regler eller dataförhållande mellan modellen och verkliga källdata till verksamheten.

DWA

Dagens DWA-verktyg finns på en skala mellan de två olika angreppssätten. En del verktyg är helt modelldrivna medan andra är helt datadrivna. Det finns dock även de som är en blandning av de två och då bygger designprocessen på en kombination av modeller och data.

Fördelar med ett DWA-verktyg

  • Snabbt igång. Gör att du kan bygga ett datalager förhållandevis snabbt. Minskar din utvecklingstid dramatiskt.
  • Ökad flexibilitet. Möjlighet att agera snabbt och enkelt på förändrade krav.
  • Fokus på det viktiga. Ger möjlighet att koncentrera sig på rapportering och analys istället för att fastna i ETL-kod.
  • Kod med kvalitet. DWA-verktyg ger testad, komplett och läsbar kod.
  • Tydliga ramar och regler. Verktyget producerar konsekvent kod, namngivningsstandarder, tabeller, vyer, index etc. Det ger en form av positiv likformighet och sätter ramar och regler.
  • Konsekvens. Utvecklare kommer och går, men så länge de fortsätter att använda samma verktyg, är det lätt för en utvecklare att förstå en annans arbete. Om man jobbar med ett större projekt där man är flera utvecklare som bygger ett datalager så gör ett DWA-verktyg att man på ett enkelt sätt skapar ett datalager som oavsett utvecklare följer samma struktur i alla delar.

Förkonfigurerade modeller

Det finns ytterligare en dimension när det gäller DWA-verktyg och det är innehåll. I grunden är ett DWA ”bara” ett verktyg som genererar kod, tabeller, vyer osv. Men genom att lägga till ett förkonfigurerat innehåll, ofta kallat modeller, så ökar värdet av ett DWA-verktyg ytterligare.

Genom förkonfigurerade modeller går det att skapa ett datalager ännu snabbare och effektivare. Förkonfigurerade modeller kan vara baserade på olika grunder t.ex. ett specifikt källsystem, ett vedertaget starschema eller kanske en kombination av det två.

Förkonfigurerade modeller bygger ofta på någon form av standard eller normalläge, och man får därför räkna med att de behöver justeras något för att passa just din verksamhet. Trots detta så är det ett snabbt och effektivt sätt att komma igång med ett datalager. Det inbjuder också till en iterativ utvecklingsprocess.

Så väljer du ett bra verktyg

Det finns idag en mängd DWA-verktyg på marknaden. Allt från verktyg som i stort sett är en kodgenerator som genererar kod och inget mer, till avancerade verktyg som innehåller funktioner för dokumentation, övervakning, möjlighet att följa processerna och flödet. Det som är viktigt att tänka på när du väljer DWA-verktyg är att verktyget inte bara ska generera en bra kod. Verktyget ska också ge dig en bra översikt av ditt datalager och relationerna mellan objekten i datalagret. Finns det dessutom förkonfigurerade modeller så ger det ytterligare mervärde då det bidrar till en snabbare implementation av ditt datalager.

Ett bra DWA-verktyg ska:

  • Ge ett sätt att ansluta till datakällor och utforska dem (dataprofilering)
  • Ge ett sätt att hantera laddning (inkl inkrementell laddning) från dessa källor
  • Låta dig kombinera data från olika källor till en enda fakta eller dimensionstabell
  • Hjälper dig att snabbt bygga fakta- och dimensionstabeller samt andra tabeller och vyer
  • Låta dig skapa transformationskod, eller gör det för dig
  • Generera kod som kartlägger källan till målet och utför Extract, Transform, LoadGenerera kod som hanterar saker som Slowly moving dimensions, nollposter för okänd data m.m.
  • Ge dig möjlighet att visuellt följa flödet i ditt datalager samt se relationen mellan olika objekt
  • Generera teknisk och användardokumentation för ditt datalager.

Advectas egna DWA-Verktyg

Trots att det finns många verktyg på marknaden har vi på Advectas sett att det saknas bra alternativ, och vi har därför själva utvecklat ett DWA-verktyg under ett eget varumärke – Xencian.

Xencian Data Warehouse Automation bygger på en metadata-driven design. Med Xencian DWA importeras metadata, alternativt förses verktyget med en färdig metadatamodell från ett eller flera källsystem. Sedan modelleras datalagret i ett grafiskt gränssnitt istället för att skriva kod. Fördelen med detta är att användaren ser dataflödet grafiskt, och kan följa varje operation som görs på vägen. Systemet är också självdokumenterande, så det blir enkelt att underhålla och felsöka. Dessutom genererar Xencian DWA ETL-paketen automatiskt från den grafiska modellen, och mjukvaran optimeras genom parallellisering för att åstadkomma så effektiv laddning av data som möjligt.

LÄS OM XENCIAN DWA

SUMMERING

Med ett bra DWA-verktyg implementerar du ett datalager snabbare, med mindre resurser och gör dig samtidigt kvitt personberoende samt förenklar underhåll och framtida förändringsarbete.
Finns det dessutom förkonfigurerade modeller så ger det ytterligare mervärde och en ännu snabbare implementation av ditt datalager.

Jörgen Larsson
jorgen.larsson@advectas.se
Mitt namn är Jörgen Larsson och jag jobbar sedan 2008 som senior konsult inom affärsområdet ERP BI på Advectas. Tidigare har jag jobbat med ERP-implementation, jag har även med mig 10 års erfarenhet som konsult inom EDI och integration. Utanför jobbet har idrott alltid haft en stor plats i mitt liv, framförallt volleybollen både som spelare men kanske mest som coach, sportchef m.m. på elitnivå.

Alla inlägg av Jörgen Larsson

Advectas startar schemalagda utbildningar på de främsta BI-plattformarna

Läs mer om Advectas Academy!