Dataplatform – Snowflake/DBT

Intellishore

for

Ledernes Hovedorganisation

Kategori :

Type :

annoncoer

Vinder af System Platforms and Architecture

BRONZE:
Fremtidens skoleeksempel på hvordan man designer en løsning hvor der er fokus på høj agilitet, state of the art DevOps struktur, høj udviklingseffektivitet og automatiserede tests. Scalering, ydeevne og driftssikerhed er i top samtidig med at man formår via en god arkitektur og velimplementeret maschinelearning at eksekvere og skabe virkelig gode resultater.

Baggrund

Introduktion
Der eksisterer et væld af proof of concepts, og fantastiske datamodeller hos de enkelte udviklere og datascientists i virksomhederne. Det er dog sjældent, at de bliver forankret i organisationen, da selve processen fra den enkeltes maskine ud i produktion er kompleks, og kræver et væld af stakeholders og leverandører.
Som et nyetableret datateam i 2020 havde vi en unik mulighed for at kaste et blik på de systemer, vi arbejdede med, finde de rigtige kompetencer og kigge ind i et set-up, der gjorde det muligt at gå fra tanke til handling uden for mange mellemled, og med autonomi til at bygge løsninger for den enkelte medarbejder.

Strategi
Hos Lederne lever vi af glade og tilfredse medlemmer, som vi kan tilbyde den bedst mulige faglige- og juridiske rådgivning.
Det har derfor været en målrettet indsats for datateamet at reducere mængden af trivielle opgaver i de afdelinger med direkte medlemskontakt, så vores kolleger kan fokusere på individet fremfor at bruge meget tid på manuelle indtastninger. Ligesom vi har fokuseret på at reducere antallet af systemer, de skal arbejde i.
På den baggrund satte vi os for at bygge en ny dataarkitektur med følgende principper:
• Data skal være tilgængelig for hele organisationen, og kunne rollestyres med ActiveD irectory.
• Det skal være muligt at for alle i teamet at bidrage til rapportering samt dataprodukter.
• Vi skal kunne dele og bygge videre på kode under samme miljø, så produktionsmiljøet altid stemmer overens med det lokale miljø.
• Workloads skal kunne skaleres op og ned i forhold til behov for at omkostningsoptimere uden at gå på kompromis med performance.

Løsning

Med Intellishore som sparringspartner fik vi en løsning i et cloudsetup med microservice komponenter, som sikrede at vi kunne agere toolagnostiske og fleksible. Hvis vi ønskede at skifte cloud, vendor eller anden komponent skulle det være nemt at gøre det, uden at det havde konsekvenser for resten af vores udviklingssetup.

Azure DevOps
Det har hele tiden været vigtigt, at vi kunne kontrollere, rette og deploye alle dele af vores set-up direkte fra Azure DevOps igennem versionsstyring og CICD-pipelines. På den måde sikrer vi, at vores produkter, uanset om det er rapportering, kunstig intelligens eller APIer til forretningen, kan testes både internt og automatisk.
I platformen kan vi linke opgaver til kode, der skal udvikles, og få fuld gennemsigtighed om, hvad vi leverer i forretningen samt backtrace ting, når der opstår bugs.

Docker
Om det er APIer, machine learning modeller, apps eller andre datadrevne produkter, så er fællesnævneren, at de bliver skabt igennem docker containere.
Ved at pakke vores kode i containers, har vi i dag mulighed for:
• At sikre at alle kan arbejde med den samme kode på det samme miljø
• Ikke at være "sprog" afhængig, da alle produkter i skyen understøtter Docker.
• Kunne deploye services til cloudmiljøer direkte fra egen pc, da Azure DevOps kan håndtere alt test og deployment.

DBT & Snowflake
Snowflake sikrer at vi kan analysere samt kombinere et væld af datakilder uden at bekymre os om belastning af de primære kilder, og uden at gå på kompromis med hastighed eller skulle fokusere på vedligehold af platformen.
I dag indlæser vi dagligt 321 tabeller, fordelt på 23 kilder, i Snowflake fra Azure Data Factory.
Når data er indlæst, anvender vi værktøjet DBT til at transformere logikken og kombinere tabeller. Det sikrer at vores data er så kompakt som muligt, og vi kan gennem værktøjet lave tests, der sikrer at datakvaliteten er i orden.
Udover at data er samlet ét sted, er det hele styret igennem ActiveD irectory. På den måde kan vi i samarbejde med vores IT-afdeling give adgang til data, maskere felter og gøre det nemt at tilgå informationer uden at logge ind til kernesystemerne.
Med indbygget Python integration, automatisk indeksering af data og direkte integrationer med samtlige onlineværktøjer og cloudmiljøer sikrer Snowflake et stabilt set-up, der gør det nemt for alle i teamet at arbejde samt tilgå data.

Vi betaler kun for det, vi bruger, og kan derfor skalere vores forbrug efter behov.

Resultat

Med vores nye platform har vi formået at sikre faste processer for, hvordan vi arbejder inden for forskellige discipliner inden for API udvikling, kunstig intelligens, rapportering samt demokratisering af data. Af resultater fra vores platform kan følgende nævnes:
• Time-to-value er reduceret betydeligt, da det nu er hurtigt og nemt at deploye machine learning modeller. Vi er gået fra en manuel deploy proces til fuldautomatiserede CI/CD-pipelines med automatiseret test.
• Via dbt har vi fået automatiseret data-test på alle tabeller og kildedata. Det sikrer, at vi i datateamet fanger fejlene, før de kommer ud til slutbrugerne i organisationen.
• 50% besparelse på operating costs af vores dataplatform.
• Fordi vores dataplatform er skalerbar og tilpasser sig vores compute behov, er det nu muligt at deploye og træne meget store machine learning modeller. Det har bl.a. resulteret i, at vores jurister har mere tid til at hjælpe medlemmerne, da vi laver juridisk kontraktgennemlæsning med kunstig intelligens. Den kunstige intelligens er også med til at sikre kvaliteten i rådgivningen, og har medført en stigning af medlemmer, der angiver at de er ”meget tilfredse” med kontraktgennemgang med + 20 procentpoint (fra 60% til 80%).
• Leads bliver automatisk sendt forbi dataplatformen og kvalificeres med kunstig intelligens, så kun de bedste emner kommer videre til salgsafdelingen. Det har resulteret i 2x konverteringsrate på flere kampagner.
• ~ 5000 timer sparet væk på automatisering af manuelle dataopgaver og minimering af ventetid for udviklerne.
• I den gamle arkitektur blev der sjældent lavet ændringer, fordi det var komplekst og tungt. I dag bliver der lavet ca. 10 større pull-requests om dagen med ændringer til vores dataplatform i produktion. Det kan lade sig gøre pga. CI/CD og automatiserede tests, og sikrer at dataplatformen konstant bliver opdateret og ikke sander til.

Ledernes Hovedorganisation

Danny Mawani Holmgaard

Data Arkitekt

Freja Malou Sarfelt

Junior Data Engineer

Mathilde Loft

Data Scientist

Andreas Bøgh Jensen

Senior Data Scientist

Nada Nowfal Hassani

Data Analyst

Anne-Marie O'Reilly Bojsen

Data Analyst

Malthe Karlsson

Data Scientist

Henrik Varmer

Chef for Data & Analytics

Rasmus Bundgård Vinther

Product Manager

Intellishore

Anders Boje Hertz

Head of AI & Data Platforms

Kasper Nielsen

Manager

Jonatan Larsen Edry

Consultant

Carl Grønvald

Associate Consultant

Jesper Krogh Heitmann

Senior Marketing Lead

Samarbejdspartnere


Billeder

Watch Video