Data Lakehouse: Att driva din datadrivna resa

Spread the love

Data Lakehouse är en ny och framväxande datahanteringsarkitektur som kombinerar de bästa delarna av en datasjö och ett datalager. Med hjälp av ett data lakehouse får du möjlighet att lagra olika typer av data i en enda plattform och utföra ACID-kompatibla frågor och analyser.

Så varför använda ett datasjöhus? Som senior mjukvaruingenjör kan jag förstå hur svårt det blir när man måste hantera och underhålla två separata system och ha stora mängder dataflöde från det ena till det andra.

Om du vill använda din data för att köra affärsanalyser och generera rapporter måste du lagra strukturerad data i ett datalager. Å andra sidan, för att lagra all data som kommer från olika datakällor och i dess ursprungliga format, behöver du en datasjö. Att ha ett enda sjöhus eliminerar detta behov av att underhålla olika system eftersom det ger det bästa av två världar.

Betydelsen av Data Lakehouse

För att kunna växa din organisation och verksamhet behöver du kunna lagra och analysera data oavsett format eller struktur. Datasjöhus är viktiga för modern datahantering eftersom de tar itu med begränsningarna för både datasjöar och datalager.

Dina datasjöar kan ofta förvandlas till dataträsk, där data dumpas utan någon struktur eller styrning. Detta gör det svårt att hitta och använda data, och det kan också leda till datakvalitetsproblem. Å andra sidan, att ha ett datalager leder ofta till att du är för stel. Det blir också dyrt.

Ett datasjöhus har sin egen uppsättning egenskaper. Låt oss ta en titt på dem.

Egenskaper hos ett Data Lakehouse

Innan du dyker in i data lakehouse-arkitekturen, låt oss se de viktigaste funktionerna eller egenskaperna hos ett data lakehouse.

  • Den stöder transaktioner – När du driver ett datasjöhus i måttligt stor skala kommer det att finnas flera läsningar och skrivningar som händer samtidigt. Att ha ACID-kompatibilitet säkerställer att samtidiga läsningar och skrivningar inte hindrar data.
  • Stöd för Business Intelligence – Du kan lägga till dina BI-verktyg direkt till den indexerade informationen. Behovet av att kopiera data någon annanstans elimineras. Dessutom får du den senaste informationen på kortare tid och till en lägre kostnad.
  • Datalagring och beräkningslager är separerade – Med de två lagren separerade kan du skala ett av dem utan att påverka det andra. Om du behöver mer lagringsutrymme kan du lägga till det utan att skala upp beräkningen också.
  • Stöd för olika datatyper – Eftersom ett datasjöhus är byggt ovanpå en datasjö stöder det olika typer och format av data. Du kan lagra och analysera olika datatyper som ljud, video, bilder och text.
  • Öppenhet i lagringsformat – Data lakehouses använder öppna och standardiserade lagringsformat som t.ex Apache parkett. Detta gör att du kan koppla in olika verktyg och bibliotek för att komma åt data.
  • Olika arbetsbelastningar stöds – Med hjälp av data som lagras i ett datasjöhus kan du utföra ett brett utbud av arbetsbelastningar. Detta inkluderar frågor genom SQL, såväl som BI, analys och maskininlärning.
  • Stöd för realtidsströmning – Du behöver inte skapa ett separat datalager och köra en separat pipeline för realtidsanalys.
  • Schemastyrning – Datasjöhus främjar robust datastyrning och revision.
  •   Så här spårar du aktier med Google Sheets

    Data Lakehouse-arkitektur

    Nu är det dags att ta en titt på arkitekturen för ett datasjöhus. Att förstå data Lakehouse-arkitekturen är nyckeln till att förstå hur det fungerar. Data Lakehouse-arkitekturen har i första hand fem huvudkomponenter. Låt oss titta på dem en efter en.

    Dataintagslager

    Detta är lagret där alla olika data i dess olika format fångas. Dessa kan vara dataändringar i din primära databas, data från olika IoT-sensorer eller användardata i realtid som flödar genom dataströmmar.

    Datalagringslager

    När informationen väl har tagits in från de olika källorna är det dags att lagra dem i deras rätta format. Det är här ditt lagringslager kommer in. Data kan lagras i olika medier som AWS S3. Detta är faktiskt din datasjö.

    Metadata och cachelager

    Nu när du har ditt datalagringslager på plats behöver du ett lager för metadata och datahantering. Detta ger en enhetlig bild av all data som finns i datasjön. Detta är också lagret som lägger till ACID-transaktioner till den befintliga datasjön för att omvandla den till ett datasjöhus.

    API-lager

    Du kan komma åt de indexerade data från metadatalagret med API-lagret. Dessa kan vara i form av databasdrivrutiner som låter dig köra dina frågor genom kod. Eller så kan dessa exponeras i form av slutpunkter som kan nås från vilken klient som helst.

    Dataförbrukningslager

    Detta lager omfattar dina analys- och Business Intelligence-verktyg, som är huvudanvändarna av data från data Lakehouse. Du kan köra dina maskininlärningsprogram här för att få värdefulla insikter från den data du har lagrat och indexerat.

    Så du har nu en tydlig bild av sjöbyggnadens arkitektur. Men hur bygger man en?

    Steg för att bygga ett Data Lakehouse

    Låt oss titta på hur du kan bygga ditt eget datasjöhus. Oavsett om du har en befintlig datasjö eller ett lager eller om du bygger ett sjöhus från grunden, förblir stegen lika.

  • Identifiera kraven – Detta inkluderar att identifiera vilka typer av data du kommer att lagra och vilka användningsfall du vill rikta in dig på. Dessa kan vara dina maskininlärningsmodeller, affärsrapportering eller analyser.
  • Skapa en inmatningspipeline – Datainmatningspipelinen ansvarar för att data överförs till ditt system. Baserat på källsystemen som genererar data, kanske du vill välja meddelandebussar som Apache Kafka eller få API-ändpunkter exponerade.
  • Bygg lagringslagret – Om du redan har en datasjö kan den fungera som lagringslager. Annars kan du välja mellan olika alternativ som AWS S3, HDFS eller Delta Lake.
  • Tillämpa databehandling – Det är här du extraherar och transformerar data baserat på dina affärskrav. Du kan använda verktyg med öppen källkod som Apache Spark för att köra förutbestämda periodiska jobb som tar in och bearbetar data från ditt lagringslager.
  • Skapa metadatahantering – Du måste spåra och lagra de olika typerna av data och deras motsvarande egenskaper så att de enkelt kan katalogiseras och sökas vid behov. Du kanske också vill skapa ett cachlager.
  • Tillhandahåll integrationsalternativ – Nu när ditt primära sjöhus är klart måste du tillhandahålla integrationskrokar där externa verktyg kan ansluta och komma åt data. Dessa kan vara SQL-frågor, verktyg för maskininlärning eller Business Intelligence-lösningar.
  • Implementera datastyrning – Eftersom du kommer att arbeta med olika typer av data från olika källor måste du upprätta policyer för datastyrning, inklusive åtkomstkontroll, kryptering och revision. Detta för att säkerställa datakvalitet, konsekvens och efterlevnad av regelverk.
  •   Så här fixar du Netflix "Du verkar använda en avblockerare eller proxy." 2024 (februari)

    Låt oss sedan titta på hur du kan migrera till ett datasjöhus om du har en befintlig datahanteringslösning.

    Steg för att migrera till ett Data Lakehouse

    När du migrerar din dataarbetsbelastning till en data lakehouse-lösning finns det vissa steg som du bör tänka på. Genom att ha en handlingsplan kan du undvika problem i sista minuten.

    Steg 1: Analysera data

    Det första och ett av de mest avgörande stegen för en framgångsrik migrering är dataanalys. Med korrekt analys kan du definiera omfattningen av din migrering. Dessutom låter den dig identifiera alla ytterligare beroenden som du kan ha. Nu har du en bättre överblick över din miljö och vad du är på väg att migrera. Detta gör att du kan prioritera dina uppgifter bättre.

    Steg 2: Förbered data för migrering

    Nästa steg för en framgångsrik migrering är dataförberedelse. Detta inkluderar de data du kommer att migrera, såväl som de stödjande dataramverken du behöver. Istället för att blint vänta på att all din data ska vara tillgänglig i ditt sjöhus, kan du spara värdefull tid och resurser genom att veta vilka datauppsättningar och kolumner du faktiskt behöver.

    Steg 3: Konvertera data till det format som krävs

    Du kan utnyttja automatisk konvertering. I själva verket bör du föredra verktyg för automatisk konvertering så mycket som möjligt. Datakonverteringar vid migrering till data lakehouse kan vara knepigt. Som tur är kommer de flesta verktyg med lättläsbar SQL-kod eller lågkodslösningar. Verktyg som Alkemist hjälp med detta.

    Steg 4: Validera data efter migrering

    När din migrering är klar är det dags att validera data. Här bör du försöka automatisera valideringsprocessen så mycket som möjligt. Annars blir manuell migrering tröttsam och saktar ner dig. Det bör endast användas som en sista utväg. Det är viktigt att verifiera att dina affärsprocesser och datajobb förblir opåverkade efter migreringen.

      Hur man ändrar Nintendo Network ID-namn

    Viktiga funktioner i Data Lakehouse

    🔷 Komplett datahantering – Du får datahanteringsfunktioner som hjälper dig att få ut det mesta av din data. Dessa inkluderar datarensning, ETL- eller Extract-Transform-Load-process och schematillämpning. Således kan du enkelt sanera och förbereda dina data för ytterligare analys och BI-verktyg (Business Intelligence).

    🔷 Öppna lagringsformat – Lagringsformatet som dina data sparas i är öppet och standardiserat. Det betyder att all data du samlar in från olika datakällor lagras på samma sätt, och du kan arbeta med dem redan från början. Den stöder format som AVRO, ORC eller Parkett. Dessutom stöder de tabelldataformat också.

    🔷 Separation of Storage – Du kan frikoppla din lagring från beräkningsresurserna. Detta uppnås genom att använda separata kluster för båda. Därför kan du separat skala upp din lagring vid behov utan att behöva göra några ändringar i dina beräkningsresurser i onödan.

    🔷 Stöd för dataströmning – Att fatta datadrivna beslut innebär ofta att man konsumerar dataströmmar i realtid. Jämfört med ett standarddatalager ger ett datasjöhus dig stöd för dataintag i realtid.

    🔷 Datastyrning – Det stöder stark styrning. Dessutom får du även revisionsförmåga. Dessa är särskilt viktiga för att upprätthålla dataintegriteten.

    🔷 Minskade datakostnader – Driftskostnaden för att driva ett datasjöhus är jämförelsevis mindre än ett datalager. Du kan få lagring av molnobjekt för dina växande databehov till ett lägre pris. Dessutom får du en hybridarkitektur. Således kan du eliminera behovet av att underhålla flera datalagringssystem.

    Data Lake vs. Data Warehouse vs. Data Lakehouse

    FeatureData LakeData WarehouseData LakehouseData StorageStores råa eller ostrukturerade dataLagrar bearbetade och strukturerade dataLagrar både råa och strukturerade dataData SchemaHar inte ett fast schemaHar ett fast schemaAnvänder öppen källkodsschema för integrationerDatatransformationData transformeras inteOmfattande efterlevnadID ACTL krävsACID ACTL krävs ACTL efterlevnad ETL krävs -compliantACID-CompliantQuery Performance Typiskt långsammare eftersom data är ostruktureradMycket snabb på grund av strukturerad dataSnabb på grund av semi-strukturerad dataKostnadslagring är kostnadseffektivHögre lagrings- och frågekostnader Lagrings- och frågekostnaden är balanseradDatastyrningKräver noggrann styrningKräver noggrann styrningStark styrning krävsLiv analyticsStöd- realtidsstyrningStöd- styrning time analyticsStöder realtidsanalysAnvändningsfallDatalagring, utforskning, ML och AIR-rapportering och analys med hjälp av BIBoth maskininlärning och analys

    Slutsats

    Genom att sömlöst kombinera styrkorna hos både datasjöar och datalager tar ett datasjöhus upp viktiga utmaningar som du kan möta när du hanterar och analyserar din data.

    Du vet nu om egenskaperna och arkitekturen hos ett sjöhus. Betydelsen av ett datasjöhus är uppenbart i dess förmåga att arbeta med både strukturerad och ostrukturerad data, och erbjuder en enhetlig plattform för lagring, sökning och analys. Dessutom får du också ACID-efterlevnad.

    Med stegen som nämns i den här artikeln om att bygga och migrera till ett datasjöhus kan du låsa upp fördelarna med en enhetlig och kostnadseffektiv datahanteringsplattform. Håll dig på topp i det moderna datahanteringslandskapet och driv datadrivet beslutsfattande, analyser och affärstillväxt.

    Kolla sedan in vår detaljerade artikel om datareplikering.