#simpleit: Hur man bygger en dataplattform utan budget

Den här artikeln är avsedd för små företag som kanske inte har ett dedikerat datateam eller bara en enda resurs för att driva en dataplattform. Fokus för den här artikeln ligger på en installation av dataplattform för småföretag. Den här artikeln syftar till att visa hur du skapar den bästa dataplattformen för din organisation utan en databudget. Allt du behöver är en bärbar dator och lite tekniskt kunnande.

Innan jag förklarar hur du ställer in en dataplattform, låt oss titta på vad som skulle vara den bästa dataplattformen för ditt företag. Data är ett stort ämne idag, det finns många artiklar du kan läsa om dataplattformar etc. Ingen dataplattform är universell. Genom att skapa en dataplattform används byggstenar för att skapa en dataplattform som passar ditt företag.

Faktum är att en dataplattform för ett företag kommer att se något annorlunda ut än för ett annat företag. När du skapar den bästa dataplattformen för dig och ditt företag är det viktigt att svara på några frågor om ditt företags kultur, affärsmål, struktur och mer.

Data

Att bygga en dataplattform är att ställa några frågor om ditt företag, dvs. skulle du behöva ett centralt arkiv för alla företagets data, vilket möjliggör förvärv, lagring, leverans och styrning av dessa data samtidigt som säkerheten upprätthålls under hela datalivscykeln. Låt oss ta en titt på några av de mer kritiska frågorna?

Hur kommer du att få intressentköp?

En dataplattform är bara användbar om dess användare – intressenter i hela verksamheten, är öppna för och bekanta med den. Innan du skapar en dataplattform är det viktigt att få alla som kan dra nytta av den ombord innan du skapar en dataplattform.

Anställda inom alla områden i verksamheten bör förstå hur dataplattformen i slutändan kommer att ge dem värde. Det är datateamets första jobb: att förklara och visa upp det värdet och etablera en metod för att mäta framgång även när företaget skalar.

Vem äger vad i datastacken?

Hur kommer uppgifterna att användas? Kommer det att vara en delad resurs som visas i hela företaget? Hur äger företagets data vid olika tidpunkter i datalivscykeln: datateamet kan äga rådata, till exempel innan de överlämnar dem till marknadsföringsteamet för analys och insikter, som sedan kan tolkas och tillämpas på en instrumentpanel för ledningsgruppen.

Data stacken från slutpunkt till slutpunkt består av flera byggstenar som stöder vart och ett av dessa team.

Hur ska ni mäta framgång?

När du skapar en dataplattform är det viktigt att mäta hur intressenter kan utnyttja data för att stödja affärsbehov och fastställa kvaliteten och effektiviteten i datateamets prestanda.

Kommer du att centralisera eller decentralisera din dataplattform

Ska ditt företag välja att konsolidera datateamet? Kommer centraliseringen att medföra för många flaskhalsar? Kommer ett decentraliserat tillvägagångssätt att leda till dubbelarbete och komplexitet? Att förstå hur varje alternativ ser ut – och välja den bästa modellen för ditt företag är en viktig faktor när du bygger din dataplattform.

Hur kommer du att hantera datatillförlitlighet och förtroende?

I takt med att datavolymerna ökar blir datatillförlitligheten allt viktigare. Oavsett om du bygger ditt datatillförlitlighetsverktyg eller köper ett kommer det att bli en viktig del av en funktionell dataplattform.

Teknik

Låt oss titta på de tekniska överväganden som du måste tänka på i förväg innan du börjar bygga en dataplattform. Här är några av mina tankar om ämnet:

Inkrementellt tänkande

Det första logiska steget är att utforma din dataplattform stegvis. När ett visst steg misslyckas går du tillbaka till det föregående och undviker att omkompilera hela processen. När du hanterar stora data belastningar kommer du snabbt att inse att det inte kan vara en eftertanke att bygga en inkrementell stack.

Lego Block Montering

Om du stöter på ett problem kommer du att skriva en kod för att fixa det, och ett mer innovativt tillvägagångssätt är att hitta befintliga byggstenar för att lösa det problemet istället.

Utforma en dataplattform som kräver en begränsad mängd kodning. Ju mindre anpassad kod som skapas, desto bättre är verksamheten, särskilt om du är ett enpersonsdatateam.

Varför? Eftersom ju mer anpassad kod du skriver, desto mer kod måste ditt företag underhålla, desto mer enhetstestning måste du göra och ju mer komplex din kod blir att förstå av andra.

Leta istället efter befintliga block som tillhandahålls av datastackens olika komponenter, r orchestrator, molnleverantör, lager etc., och montera dem för att tillgodose dina projektbehov. Det blir billigare och lättare att underhålla, men det kommer att frigöra din tid för kärnaspekterna av ditt arbete.

Effektiv övervakning

När du har skapat den första data pipelinen kan den fortfarande misslyckas – det är viktigt att konfigurera korrekt avisering och övervakning. Du vill vara medveten om saker när de börjar missköta sig innan någon annan i ditt företag, din interna klient, gör ett klagomål.

Ställ in en utmärkt aviseringspraxis som genererar färre aviseringar på högre nivå och behandlar dem som produktionsincidenter. Du kan skapa en instrumentpanel som visar verksamhetskritiska fel så att fel kan hanteras i prioritetsordning.

Hantering av dataprodukter

Det kan krävas att du är ett enpersonsdatateam för att hantera uppgiften Data Product Management. Data Product Management kräver olika färdigheter. Även om du bör ha samma empati för klienter, behöver du också en djup teknisk förståelse för indata och utgångar. Och naturligtvis, om du bor i en SQL-värld, behöver du en känsla av databasstruktur och SQL-frågor. Du kanske har allt det där, så oroa dig inte.

Dataplattformen

Min filosofi har alltid lutat åt #simpleit, principen om att förenkla system genom att ha så få IT-system som ger ett företags kompletta service. Samma princip gäller för dataplattformar.

Den grundläggande pipelinen

Den primära pipelinen kräver lite programmering för att skriva ett dataextraheringsskript, och jag gör det med Python. Jag laddar också data till en MySQL-databas installerad på min bärbara dator. Detta är inte ett schemalagt jobb, så du måste köra det när du extraherar nya data. Jag använder i det här scenariot Google Data Studio för att ansluta till min lokala bärbara dator för att hämta data till en rapport.

Det här är ett exempel på en datapipeline som du kan konfigurera med din egen tid.

Den grundläggande datapipelinen i molnet

Du kan ta samma skript och justera koden som ska köras som en molnfunktion, sedan kan du registrera dig på Google Cloud Platform och köra en schemalagd datapipeline i molnet. Beroende på hur ofta du behöver köra molnfunktionen kommer du att vara inom den kostnadsfria nivån om du gör det 2 – 3 gånger om dagen som ett batchjobb. Den enda skillnaden från Basic Pipeline är att istället för MySQL använder vi BigQuery, och vi har en schemaläggarinställning. Jag använder också Cloud Storage som en datasjö för att lagra filer av extrakten.

Dataplattformen utan budget med öppen källkod

Eftersom de två föregående exemplen är mer grundläggande skulle du behöva behålla kod för din pipeline, och som jag sa tidigare, ju mindre kod du måste underhålla, desto mer tid har du för andra uppgifter.

Som ett enpersonsdatateam i mitt företag är den ultimata dataplattformen jag använder baserad på två verktyg med öppen källkod, Airbyte och Superset. Dessa två vägtullar är open source-verktyg och du kan köra dem med docker.

Airbyte

Airbyte är ett dataintegreringsverktyg med öppen källkod där du med bara några klick kan ställa in alla dina ELT-datapipelines på några minuter, även dina anpassade, vilket gör att ditt team kan fokusera på insikter och innovation.

Med Airbyte kan du ansluta din källa till ett mål som skapar en dataanslutning. Det bör inte finnas något behov av att skriva någon kod eftersom många källor och målanslutningar redan är tillgängliga. Om du behöver skriva lite kod för en mycket anpassad källanslutning levereras Airbyte med ett CDK (Connector Development Kit) som gör att du kan skriva din anpassade anslutning.

Superset

Apache Superset är ett program med öppen källkod för datautforskning och visualisering, och du kan också skapa instrumentpaneler och scheman för att skicka instrumentpanelen till din intressent.  

Dataplattformsinställningen med Docker

Att konfigurera denna dataplattform på ditt lokala skrivbord / bärbara dator tar bara några minuter. Det första steget är att ladda ner Docker Desktop.

När du har docker-skrivbordet installerat och körs måste du klona Airbyte och Apache Superset från deras respektive GitHub-lagringsplats.

Snabbstart för Airbyte

Airbytes snabbstart är enkel. Gör bara följande.

$ git klon https://github.com/airbytehq/airbyte.git
$ cd airbyte
$ docker-komponera upp

Snabbstart för superuppsättning

För Superset läser du Superset-dokumentationen. Installationen är lika enkel som Airbyte:

$ git klon https://github.com/apache/superset.git
$ cd superset
$ docker-compose -f docker-compose-non-dev.yml upp

Detta startar Airbyte och Superset-behållaren i docker-skrivbordet:

Nu är du redo att använda denna kraftfulla dataplattform med öppen källkod. Det fina med den här installationen är att jag kan använda MySQL-instansen som jag kör lokalt för att läsa in data från Airbyte och använda Superset för att bygga en instrumentpanel från dessa data. Jag är inte begränsad till det, och jag kan fortfarande använda Airbyte BigQuery-anslutningen som mål och sedan göra lite rapportering med Data Studio.

Slutsats

Det är ett mycket flexibelt sätt att konfigurera din datapipeline. Du kan växa genom att lägga till andra byggstenar som dbt, luftflöde etc.

Om du är ett litet team kan du börja med bara några legoblock för din dataplattform och växa när efterfrågan ökar.

Ett råd som jag har är att inte ryckas med av nya verktyg eller påverkas av andra på peer gatherings eller konferenser. Följ riktningen du vill utan att bli dikterad. Ju mer du påverkas av andra eller av nya verktyg, tas din tid bort från ditt huvudmål att leverera en dataplattform för ditt företag. Håll er borta från högt uppsedda kolleger eftersom det inte alltid är den bästa riktningen.

Om du är en enpersonsdataavdelning eller ett litet team har du inte tid att lära dig och slåss med andra verktyg och tekniker. Med hjälp av dessa verktyg kommer du direkt in i de bra sakerna i dina transformeringar – inget att ställa in och hantera.


Posted

in

, , ,

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *