Torbjorn Zetterlund

Mon 11 2022
Image

#simpleit: Hoe bouw je een dataplatform zonder budget

by bernt & torsten

Dit artikel is bedoeld voor kleine bedrijven die mogelijk geen speciaal gegevensteam of slechts één bron hebben om een gegevensplatform te beheren. De focus van dit artikel ligt op het opzetten van een dataplatform voor kleine bedrijven. Dit artikel is bedoeld om te laten zien hoe u het beste dataplatform voor uw organisatie kunt maken zonder een databudget. Het enige wat je nodig hebt is een laptop en een beetje technische kennis.

Voordat ik uitleg hoe je een dataplatform opzet, laten we eens kijken wat het beste dataplatform voor jouw bedrijf zou zijn. Omdat data tegenwoordig een groot onderwerp is, zijn er veel artikelen die u kunt lezen over dataplatforms, enz. Geen enkel dataplatform is universeel. Het opzetten van een dataplatform maakt gebruik van bouwstenen om een dataplatform op te zetten dat past bij jouw bedrijf.

Feit is dat een dataplatform er voor het ene bedrijf net even anders uit zal zien dan voor een ander bedrijf. Bij het creëren van het beste dataplatform voor u en uw bedrijf, is het essentieel om een paar vragen te beantwoorden over de cultuur, bedrijfsdoelstellingen, structuur en meer van uw bedrijf.

Gegevens

Het bouwen van een dataplatform is het stellen van een paar vragen over uw bedrijf, d.w.z. of u een centrale opslagplaats nodig hebt voor alle gegevens van uw bedrijf, die de acquisitie, opslag, levering en governance van die gegevens mogelijk maakt met behoud van beveiliging gedurende de hele levenscyclus van de gegevens. Laten we eens kijken naar enkele van de meer kritische vragen?

Hoe krijgt u de buy-in van belanghebbenden?

Een dataplatform is alleen nuttig als de gebruikers – belanghebbenden in het hele bedrijf – ervoor openstaan en er bekend mee zijn. Voordat u een dataplatform maakt, is het van cruciaal belang om iedereen die er gebruik van kan maken aan boord te krijgen voordat u een dataplatform maakt.

Werknemers op elk gebied in het bedrijf moeten begrijpen hoe het dataplatform uiteindelijk waarde voor hen zal bieden. Dat is de initiële taak van het datateam: die waarde uitleggen en laten zien en een methode vaststellen om succes te meten, zelfs als het bedrijf schaalt.

Van wie is wat in de datastack?

Hoe worden de gegevens gebruikt? Wordt het een gedeelde bron die in het hele bedrijf wordt bekeken? Hoe is eigenaar van de gegevens van het bedrijf op verschillende punten in de gegevenslevenscyclus: het gegevensteam kan bijvoorbeeld eigenaar zijn van de onbewerkte gegevens voordat ze deze overdragen aan het marketingteam voor analyse en inzichten, die vervolgens kunnen worden ontleed en toegepast op een dashboard voor het leiderschapsteam.

De end-to-end datastack bestaat uit meerdere bouwstenen die elk van deze teams ondersteunen.

Hoe ga je succes meten?

Bij het bouwen van een dataplatform is het essentieel om te meten hoe belanghebbenden gegevens kunnen gebruiken om bedrijfsbehoeften te ondersteunen en de kwaliteit en efficiëntie van de prestaties van het datateam vast te stellen.

Gaat u uw dataplatform centraliseren of decentraliseren?

Moet uw bedrijf ervoor kiezen om het datateam te consolideren? Legt centralisatie te veel knelpunten op? Leidt een gedecentraliseerde aanpak tot dubbel werk en complexiteit? Begrijpen hoe elke optie eruit ziet – en het kiezen van het beste model voor uw bedrijf is een essentiële overweging bij het bouwen van uw dataplatform.

Hoe ga je om met databetrouwbaarheid en vertrouwen?

Naarmate de hoeveelheden gegevens toenemen, wordt de betrouwbaarheid van gegevens steeds belangrijker. Of u nu uw databetrouwbaarheidstool bouwt of er een koopt, het wordt een essentieel onderdeel van een functioneel dataplatform.

Technologie

Laten we eens kijken naar de technologische overwegingen waar u vooraf over moet nadenken voordat u begint met het bouwen van een dataplatform. Hier zijn enkele van mijn gedachten over het onderwerp:

Incrementeel denken

De eerste logische stap is om je dataplatform stapsgewijs te ontwerpen. Wanneer een bepaalde stap mislukt, gaat u terug naar de vorige, zodat u het hele proces niet opnieuw hoeft te compileren. Bij het verwerken van grote gegevensbelastingen zult u zich snel realiseren dat het bouwen van een incrementele stack geen bijzaak kan zijn.

Lego Block Montage

Als u een probleem tegenkomt, schrijft u een stuk code om het op te lossen, en een meer innovatieve aanpak is om bestaande bouwstenen te vinden om dat probleem in plaats daarvan op te lossen.

Ontwerp een dataplatform dat een beperkte hoeveelheid codering vereist. Hoe minder aangepaste code wordt gemaakt, hoe beter het bedrijf is, vooral als u een gegevensteam van één persoon bent.

Waarom? Want hoe meer aangepaste code u schrijft, hoe meer code uw bedrijf moet onderhouden, hoe meer eenheidstests u moet uitvoeren en hoe complexer uw code wordt om door anderen te begrijpen.

Zoek in plaats daarvan naar reeds bestaande blokken die worden geleverd door de verschillende componenten van uw gegevensstack, r orchestrator, cloudprovider, magazijn, enz., En stel ze samen om aan uw projectbehoeften te voldoen. Het zal goedkoper en gemakkelijker te onderhouden zijn, maar het zal uw tijd vrijmaken voor de kernaspecten van uw werk.

Effectieve monitoring

Wanneer u uw eerste gegevenspijplijn hebt gemaakt, kan deze nog steeds mislukken – het instellen van de juiste waarschuwingen en bewaking is van vitaal belang. U wilt zich bewust zijn van dingen als ze zich beginnen te misdragen voordat iemand anders in uw bedrijf, uw interne klant, een klacht indient.

Stel een uitstekende waarschuwingspraktijk in die minder waarschuwingen op een hoger niveau genereert en behandel die als productie-incidenten. U kunt een dashboard maken met bedrijfskritische storingen, zodat fouten kunnen worden opgelost in volgorde van prioriteit.

Gegevens productbeheer

Het kan veeleisend zijn dat u een gegevensteam van één persoon bent om de taak Gegevensproductbeheer te beheren. Data Product Management vereist verschillende vaardigheden. Hoewel je dezelfde empathie voor klanten moet hebben, heb je ook een diep technisch begrip van in- en uitgangen nodig. En natuurlijk, als u in een SQL-wereld leeft, hebt u een gevoel van databasestructuur en SQL-query’s nodig. Misschien heb je dat allemaal, dus maak je geen zorgen.

Het dataplatform

Mijn filosofie heeft altijd geleund op #simpleit, het principe van het vereenvoudigen van systemen door zo weinig mogelijk IT-systemen te hebben die de volledige service van een bedrijf bieden. Hetzelfde principe geldt voor dataplatforms.

De basispijplijn

De primaire pijplijn vereist een beetje programmeren om een script voor het extraheren van gegevens te schrijven, en ik doe dit met Python. Ik laad de gegevens ook in een MySQL-database die op mijn laptop is geïnstalleerd. Dit is geen geplande taak, dus u moet deze uitvoeren wanneer u nieuwe gegevens extraheert. Ik gebruik in dit scenario Google Data Studio om verbinding te maken met mijn lokale laptop om de gegevens in een rapport op te halen.

Dit is een voorbeeld van een gegevenspijplijn die u met uw eigen tijd kunt instellen.

De basisgegevenspijplijn in de cloud

U kunt hetzelfde script nemen en de code aanpassen die moet worden uitgevoerd als een cloudfunctie, waarna u zich kunt aanmelden bij het Google Cloud Platform en een geplande gegevenspijplijn in de cloud kunt uitvoeren. Afhankelijk van hoe vaak u de Cloud-functie moet uitvoeren, bevindt u zich binnen de gratis laag als u het 2 – 3 keer per dag als batchtaak doet. Het enige verschil met de Basic Pipeline is dat we in plaats van MySQL BigQuery gebruiken en we een scheduler setup hebben. Ik gebruik Cloud Storage ook als een data lake om bestanden van de extracten op te slaan.

Het No Budget Open Source Data Platform

Omdat de vorige twee voorbeelden meer eenvoudig zijn, zou je code voor je pijplijn moeten onderhouden, en zoals ik al eerder zei, hoe minder code je hoeft te onderhouden, hoe meer tijd je hebt voor andere taken.

Als een eenpersoons datateam in mijn bedrijf is het ultieme dataplatform dat ik gebruik gebaseerd op twee open-source tools, Airbyte en Superset. Deze twee tolheffingen zijn Open Source-tools en u kunt ze uitvoeren met docker.

Airbyte

Airbyte is een open-source data-integratietool waarmee u met slechts enkele klikken al uw ELT-gegevenspijplijnen binnen enkele minuten kunt instellen, zelfs uw aangepaste, waardoor uw team zich kan concentreren op inzichten en innovatie.

Met Airbyte kunt u uw bron verbinden met een bestemming die een gegevensverbinding tot stand brengt. Het zou niet nodig moeten zijn om code te schrijven, omdat er al veel bronnen en doelconnectoren beschikbaar zijn. Als u code moet schrijven voor een zeer aangepaste bronconnector, wordt Airbyte geleverd met een Connector Development Kit (CDK) waarmee u uw aangepaste connector kunt schrijven.

Superset

Apache Superset is een open-sourceprogramma voor gegevensverkenning en visualisatie, en u kunt ook dashboards en schema’s bouwen om het dashboard naar uw stakeholder te sturen.  

De Data Platform setup met Docker

Het opzetten van dit dataplatform op uw lokale bureau/laptop duurt slechts enkele minuten. De eerste stap is om Docker Desktop te downloaden.

Wanneer u docker desktop hebt geïnstalleerd en uitgevoerd, moet u Airbyte en Apache Superset klonen vanuit hun respectieve GitHub-repository.

Airbyte Snel aan de slag

De Airbyte quick start is eenvoudig. Doe gewoon het volgende.

$ git kloon https://github.com/airbytehq/airbyte.git
$ cd airbyte
$ docker-componeren

Superset Snel aan de slag

Lees voor Superset de Superset-documentatie. De installatie is net zo eenvoudig als Airbyte:

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

Hiermee worden Airbyte en Superset-container in docker desktop gestart:

Nu bent u klaar om dit krachtige open-source dataplatform te gebruiken. Het mooie van deze opstelling is dat ik de MySQL-instantie die ik lokaal uitvoer kan gebruiken voor het laden van gegevens van Airbyte en Superset kan gebruiken om een dashboard van die gegevens te bouwen. Ik ben daar niet toe beperkt en ik kan nog steeds de Airbyte BigQuery-connector als bestemming gebruiken en vervolgens wat rapportage doen met Data Studio.

Conclusie

Het is een zeer flexibele manier om uw datapijplijn in te richten. Je kunt groeien door andere bouwstenen toe te voegen zoals dbt, Airflow etc.

Als je een klein team bent, begin dan met slechts een paar legoblokjes voor je dataplatform en groei naarmate de vraag toeneemt.

Een advies dat ik heb, is om me niet te laten meeslepen door nieuwe hulpmiddelen of beïnvloed te worden door anderen op bijeenkomsten of conferenties van collega’s. Volg de richting op jouw manier zonder gedicteerd te worden. Hoe meer u wordt beïnvloed door anderen of door nieuwe tools, hoe meer tijd wordt weggenomen van uw hoofddoel om een dataplatform voor uw bedrijf te leveren. Blijf alsjeblieft uit de buurt van zeer eigenwijze collega’s, want het is niet altijd de beste richting.

Als u een gegevensafdeling voor één persoon of een klein team bent, hebt u geen tijd om te leren en te vechten met andere tools en technologieën. Met behulp van deze tools ga je direct aan de slag met de goede dingen van je transformaties – niets om in te stellen en te beheren.

Share: