I det här exemplet illustrerar arbetsbelastningen en greenfield-lösning för att skapa en skalbar dataplattform med hjälp av Microsoft Fabric och designparadigmet lakehouse. Fabric är en plattform som integrerar datalagring, bearbetning och analys. Ett greenfield lakehouse ger en ren start för att utforma ett effektivt, framtidssäkert dataekosystem.
Arkitektur
Ladda ned en Visio-fil med den här arkitekturen.
Dataflöde
Den här designen återspeglar Lambda-arkitekturen, som separerar databehandling i två lager:
- Ett batchbearbetningslager med hög volym som bearbetas regelbundet för historisk analys
- Ett dataströmbearbetningslager med låg svarstid och dataflöde för realtidsanalys
Dataströmbearbetningssökvägen matar in och bearbetar data nästan i realtid, vilket gör den idealisk för instrumentpaneler och avvikelseidentifiering. Batchbearbetningssökvägen hanterar hela datamängden, säkerställer datakonsekvens och möjliggör komplex historisk analys. Den här tvådelade metoden ger insikter i realtid samtidigt som du behåller en tillförlitlig post för senare utforskning.
Kall sökväg: Batch-analys
Informationslager, som förlitar sig på relations-SQL-semantik, är den konventionella metoden för historisk dataanalys. Det här mönstret har dock utvecklats med tiden och lakehouses är den aktuella branschstandarden för batchdataanalys. Ett sjöhus bygger på öppen källkod filformat och tillgodoser, till skillnad från traditionella informationslager, alla typer av data: strukturerade, halvstrukturerade och ostrukturerade. Beräkningslagret i ett lakehouse bygger vanligtvis på Apache Spark-ramverket, som är den föredragna motorn för bearbetning av stordata på grund av dess distribuerade databehandlingskapacitet och höga prestanda. Fabric erbjuder en inbyggd lakehouse-upplevelse som baseras på filformatet öppen källkod Delta Lake och en hanterad Spark-körning.
En lakehouse-implementering använder vanligtvis arkitekturen medallion. I den här arkitekturen innehåller bronsskiktet rådata, silverskiktet innehåller verifierade och deduplicerade data och guldskiktet innehåller mycket raffinerade data som är lämpliga för att stödja affärsinriktade användningsfall. Den här metoden fungerar i alla organisationer och branscher. Även om det här är den allmänna metoden kan du anpassa den efter dina behov. Den här arkitekturen visar hur du skapar ett sjöhus med hjälp av inbyggda Fabric-komponenter.
Datainmatning via Data Factory
(Se steg 1 i diagrammet.)
Azure Data Factory-funktionen i Fabric tillhandahåller funktionerna i Azure Data Factory-tjänsten, som är en allmänt använd dataintegreringstjänst. Även om Data Factory-tjänsten huvudsakligen tillhandahåller orkestreringsfunktioner via pipelines, ger funktionen i Fabric både pipelines och dataflöden.
- Med datapipelines kan du använda avancerade dataorkestreringsfunktioner för att skapa flexibla dataarbetsflöden som uppfyller företagets behov.
- Med dataflöden kan du använda mer än 300 transformeringar i dataflödesdesignern. Du kan använda dessa transformeringar för att transformera data med hjälp av ett grafiskt gränssnitt som liknar det i Power Query. Dessa omvandlingar omfattar smarta AI-baserade datatransformeringar. Dataflöden kan också skriva data till interna datalager i Infrastrukturresurser, till exempel lakehouse-, lager-, Azure SQL- och Kusto-databaser.
Beroende på dina krav kan du använda någon av eller båda dessa funktioner för att skapa ett omfattande ramverk för metadatadriven inmatning. Du kan registrera data från olika källsystem enligt ett definierat schema eller med hjälp av händelseutlösare.
Datatransformationer
(Se steg 2 i diagrammet.)
Det finns två metoder för förberedelse och transformering av data. Om du föredrar en kod-första upplevelse kan du använda Spark Notebooks. Om du föredrar en upplevelse med låg kod eller ingen kod kan du använda dataflöden.
Infrastrukturanteckningsböcker är ett viktigt verktyg för att utveckla Apache Spark-jobb. De tillhandahåller en webbaserad interaktiv yta som datatekniker använder för att skriva kod. De ger också omfattande visualiseringar och möjliggör användning av Markdown-text. Datatekniker skriver kod för datainmatning, förberedelse av data och datatransformering. Dataforskare använder notebook-filer för att skapa maskininlärningslösningar. De använder dem till exempel för att skapa experiment och modeller och för att spåra och distribuera modeller.
Varje arbetsyta i Fabric levereras med en Spark-startpool, som används för spark-standardjobb. Med startpooler kan du förvänta dig snabb Apache Spark-sessionsinitiering, vanligtvis inom 5 till 10 sekunder, utan någon manuell konfiguration. Du får också flexibiliteten att anpassa Apache Spark-pooler enligt dina datateknikkrav. Du kan ändra storlek på noder, autoskalning och dynamiskt allokera köre baserat på dina Krav för Spark-jobb. För Spark-körningsanpassningar kan du använda miljöer. I en miljö kan du konfigurera beräkningsegenskaper, välja olika körningar och konfigurera beroenden för bibliotekspaket baserat på dina arbetsbelastningskrav.
Med dataflöden kan du extrahera data från olika källor, transformera dem med hjälp av en mängd olika åtgärder och eventuellt läsa in dem till ett mål. Traditionellt ägnar datatekniker mycket tid åt att extrahera, transformera och läsa in data i ett förbrukningsbart format för nedströmsanalyser. Dataflöde Gen2 är ett enkelt och återanvändbart sätt att utföra uppgifter för att extrahera, transformera, läsa in (ETL) med hjälp av visuella tips i Power Query Online. Dataflödet bevarar alla transformeringssteg. Om du vill utföra andra uppgifter eller läsa in data till ett annat mål efter omvandlingen skapar du en datapipeline och lägger till Dataflow Gen2-aktiviteten i pipelineorkestreringen.
Frekvent sökväg: Realtidsanalys
Databearbetning i realtid är avgörande för företag som vill hålla sig flexibla, fatta välgrundade beslut snabbt och dra nytta av omedelbara insikter för att förbättra driften och kundupplevelsen. I Infrastruktur tillhandahålls den här funktionen av realtidsinformationstjänsten. Den består av flera Fabric-funktioner som paketeras tillsammans och är tillgängliga via realtidshubben. Realtidshubben är en enda plats för direktuppspelning av data i rörelse i hela organisationen.
Realtidsinformation i Fabric möjliggör analys och datavisualisering för händelsedrivna scenarier, strömmande data och dataloggar. Den ansluter tidsbaserade data från olika källor med hjälp av en katalog med kodfria anslutningsappar och tillhandahåller en lösning från slutpunkt till slutpunkt för datainmatning, transformering, lagring, analys, visualisering, spårning, AI och realtidsåtgärder. Även om tjänstnamnet använder frasen "Realtid" behöver dina data inte strömmas med höga hastigheter och volymer. Realtidsinformation tillhandahåller händelsedrivna lösningar snarare än schemadrivna lösningar.
Inmatning i realtid
(Se steg 3 i diagrammet.)
Händelseströmmar är en infrastrukturresursfunktion som möjliggör en kodfri metod för att mata in realtidshändelser från olika källor och skicka dem till olika mål. Det tillåter datafiltrering, transformering, aggregering och routning baserat på innehåll. Du kan också använda den för att skapa nya strömmar från befintliga och dela dem i hela organisationen med hjälp av realtidshubben. Eventstreams stöder flera datakällor och datamål. Du kan använda ett brett utbud av anslutningsappar till externa källor som Apache Kafka-kluster, datainsamlingsflöden för ändringsdata, AWS-strömningskällor (Kinesis) och Google (GCP Pub/Sub).
Du skapar en händelseström, lägger till händelsedatakällor i dataströmmen, lägger till transformeringar för att transformera händelsedata och dirigerar sedan data till mål som stöds. Fabric Lakehouse är en av de destinationer som stöds, så du kan omvandla dina realtidshändelser innan du matar in dem i ditt sjöhus. Realtidshändelser konverteras till Delta Lake-format och lagras sedan i de avsedda lakehouse-tabellerna. Det här mönstret möjliggör datalagerscenarier och historisk analys av dina snabba data.
Realtidsanalys
(Se steg 4 i diagrammet.)
När du använder Realtidsinformation i Infrastrukturresurser finns det, beroende på dina användningsfall, två vanliga vägar för strömmande data: Reflexobjekt och händelsehus.
En reflex är ett Fabric-objekt som gör att du kan reagera på förekomsten av ett datavillkor när det händer. Den reaktionen kan vara ett enkelt aviseringsmeddelande via e-post eller Microsoft Teams, eller så kan det innebära att anropa en anpassad åtgärd genom att utlösa ett Power Automate-flöde. Du kan också utlösa alla infrastrukturobjekt från dina reflexer. Många fall av observerbarhetsanvändning stöds av reflexer, varav ett reagerar på strömmande data när de kommer in i händelseströmmar.
Ett eventhouse är en samling av en eller flera Kusto-frågespråk databaser (KQL). KQL-databaser är utformade för tidsbaserade, strömmande händelser av strukturerade, halvstrukturerade och ostrukturerade data. Data indexeras och partitioneras automatiskt baserat på inmatningstid, vilket ger snabba och komplexa analysfrågor, även när data strömmar in. Data som lagras i eventhouses kan göras tillgängliga i OneLake för användning av andra infrastrukturprocesser. Du kan köra frågor mot dessa data med hjälp av olika kod-, lågkods- eller kodfria alternativ i Infrastrukturresurser, inklusive inbyggd KQL och T-SQL i KQL-frågeuppsättningen.
Realtidsinstrumentpaneler är utformade för att ge omedelbara insikter från dataströmning till dina eventhouses. Du kan lägga till olika typer av visuella objekt på en instrumentpanel, till exempel diagram och diagram, och anpassa dem efter dina behov. Realtidsinstrumentpaneler har det specifika syftet att snabbt identifiera trender och avvikelser i data med hög hastighet som kommer in i ett händelsehus. De skiljer sig från Power BI-instrumentpaneler, som är lämpliga för arbetsbelastningar för FÖRETAG BI-rapportering.
Dataservering
(Se steg 5 i diagrammet.)
Det finns olika alternativ med låg kod eller pro-kod för användning av data från Fabric Lakehouses och eventhouses.
SQL-analysslutpunkt
En SQL-analysslutpunkt genereras automatiskt för varje lakehouse i Fabric. En SQL-analysslutpunkt är skrivskyddad. Om du vill ändra data måste du växla till lakehouse-läge och använda Spark. Du kan använda SQL-analysslutpunkten direkt i Fabric-portalen för att fråga efter data genom att växla från lakehouse-läget till SQL-läget i lakehouse. Du kan också använda SQL-anslutningssträng för ett lakehouse för att ansluta med hjälp av klientverktyg som Power BI, Excel och SQL Server Management Studio. Det här alternativet är lämpligt för data- och affärsanalytiker i ett datateam.
Spark-anteckningsböcker
Notebook-filer är ett populärt sätt att interagera med lakehouse-data. Fabric har en webbaserad interaktiv yta som dataarbetare kan använda för att skriva kod. Dessa arbetare kan använda omfattande visualiseringar och Markdown-text. Datatekniker skriver kod för datainmatning, förberedelse av data och datatransformering. Dataforskare använder notebook-filer för datautforskning, för att skapa maskininlärningsexperiment och modeller samt för att spåra och distribuera modeller. Det här alternativet är lämpligt för professionella datatekniker och dataforskare.
Power BI
Varje lakehouse i Fabric levereras med en fördefinierad standard semantisk modell. Den skapas automatiskt när du konfigurerar ett sjöhus och läser in data i det. Dessa modeller ärver affärslogik från lakehouse för att göra det enklare att skapa Power BI-rapporter och instrumentpaneler direkt i lakehouse-upplevelsen. Du kan också skapa anpassade semantiska modeller baserat på specifika affärskrav på lakehouse-tabeller. När du skapar Power BI-rapporter på ett lakehouse kan du använda Direct Lake-läge, vilket inte kräver att du importerar data separat. Med det här läget kan du få minnesintern prestanda i dina rapporter utan att flytta dina data från lakehouse.
Anpassade API:er
Fabric har en omfattande API-yta över sina objekt. OneLake ger öppen åtkomst till alla Fabric-objekt via Azure Data Lake Storage-API:er och SDK:er. Du kan komma åt dina data i OneLake via valfritt API, SDK eller verktyg som är kompatibla med Data Lake Storage genom att bara använda en OneLake-URI i stället. Du kan ladda upp data till ett lakehouse med hjälp av Azure Storage Explorer eller läsa en deltatabell via en genväg från Azure Databricks. OneLake stöder även ABFS-drivrutinen (Azure Blob Filesystem) för mer kompatibilitet med Data Lake Storage och Azure Blob Storage. Om du vill använda strömmande data i underordnade appar kan du skicka händelseströmsdata till en anpassad API-slutpunkt. Du kan sedan använda dessa strömmande utdata från Fabric med hjälp av Azure Event Hubs eller AMQP- eller Kafka-protokollet.
Power Automate
Power Automate är en programplattform med låg kod som du kan använda för att automatisera repetitiva uppgifter och även ändra dina data. Reflexobjektet i Fabric stöder Power Automate-flöden som mål. Den här integreringen låser upp många användningsfall och gör att du kan utlösa underordnade åtgärder med hjälp av en mängd olika anslutningsappar, både för Microsoft- och icke-Microsoft-system.
Komponenter
Följande komponenter används i den här lösningen.
Infrastruktur: En molnbaserad dataanalysplattform från slutpunkt till slutpunkt som är utformad för företag. Det ger en enhetlig miljö för olika datauppgifter, till exempel datainmatning, transformering, analys och visualisering.
OneLake: Den centrala hubben för alla dina data i Fabric. Den är utformad som en öppen datasjö, vilket innebär att den kan lagra data i sitt interna format, oavsett struktur.
Data Factory: En molnbaserad ETL- och orkestreringstjänst för automatiserad dataflytt och transformering. Det gör att du kan automatisera dataflytt och transformering i stor skala mellan olika datakällor.
Datateknik: Verktyg som möjliggör insamling, lagring, bearbetning och analys av stora datavolymer.
Datavetenskap: Verktyg som gör att du kan slutföra datavetenskapsarbetsflöden från slutpunkt till slutpunkt för databerikning och få affärsinsikter.
Realtidsinformation: En tjänst som tillhandahåller dataströminmatning och bearbetningsfunktioner. Det gör att du kan få insikter från ständigt strömmande data för att möjliggöra snabbare beslutsfattande som baseras på trender och avvikelser i realtid.
Copilot: Ett verktyg som du kan använda för att analysera data, generera insikter och skapa visualiseringar och rapporter i Fabric och Power BI med hjälp av naturligt språk.
Power BI: Ett business intelligence-verktyg för att skapa interaktiva instrumentpaneler och rapporter för att visualisera data och få insikter.
Alternativ
Fabric erbjuder en robust uppsättning verktyg, men beroende på dina specifika behov kan du dra nytta av förbättrade funktioner som tillhandahålls av alternativa tjänster i Azure-ekosystemet.
Azure Databricks kan ersätta eller komplettera de inbyggda funktionerna för infrastrukturbaserad datateknik. Azure Databricks erbjuder ett alternativ för storskalig databearbetning genom att tillhandahålla en molnbaserad Apache Spark-miljö. Azure Databricks ger också gemensam styrning över hela din dataegendom och funktioner för att möjliggöra viktiga användningsfall som datavetenskap, datateknik, maskininlärning, AI och SQL-baserad analys.
Azure Machine Learning kan ersätta eller komplettera de inbyggda fabric-Datavetenskap verktygen. Maskininlärning går utöver modellexperiment- och hanteringsfunktionerna i Fabric genom att lägga till funktioner som gör att du kan vara värd för modeller för användning av online-slutsatsdragningsfall, övervaka modeller för drift och skapa anpassade Generative AI-program.
Information om scenario
Den här arkitekturen gäller för följande scenarier:
- Organisationer som börjar på nytt utan äldre systembegränsningar.
- Organisationer som förväntar sig datavolymer mellan 0,5 TB och 1,5 TB.
- Organisationer som föredrar ett enkelt och strömlinjeformat mönster som balanserar kostnads-, komplexitets- och prestandaöverväganden.
- Organisationer som behöver en enkel, kostnadseffektiv och högpresterande dataplattform som hanterar rapporterings-, analys- och maskininlärningskrav.
- Organisationer som vill integrera data från flera källor för en enhetlig vy.
Den här lösningen rekommenderas inte för:
- Team med en SQL- eller relationsdatabasbakgrund som har begränsade kunskaper i Apache Spark.
- Organisationer som migrerar från ett äldre system eller informationslager till en modern plattform.
Att tänka på
Dessa överväganden implementerar grundpelarna i Azure Well-Architected Framework, som är en uppsättning vägledande grundsatser som kan användas för att förbättra kvaliteten på en arbetsbelastning. Mer information finns i Microsoft Azure Well-Architected Framework.
Tillförlitlighet
Tillförlitlighet säkerställer att ditt program kan uppfylla de åtaganden du gör gentemot dina kunder. Mer information finns i Checklista för designgranskning för tillförlitlighet.
Infrastrukturresurser replikerar automatiskt resurser mellan tillgänglighetszoner utan att det krävs någon konfiguration. Under ett zonomfattande avbrott krävs till exempel ingen åtgärd för att återställa en zon. I regioner som stöds kan Fabric själv läka och balansera om automatiskt för att dra nytta av en felfri zon.
Säkerhet
Säkerhet ger garantier mot avsiktliga attacker och missbruk av dina värdefulla data och system. Mer information finns i Checklista för designgranskning för säkerhet.
Du kan använda Infrastruktur för att hantera, kontrollera och granska dina säkerhetsinställningar enligt dina föränderliga behov och krav. Viktiga säkerhetsrekommendationer för att använda Infrastrukturresurser är:
Autentisering. Konfigurera enkel inloggning (SSO) i Microsoft Entra-ID för att ge åtkomst från olika enheter och platser.
Rollbaserad åtkomstkontroll (RBAC). Implementera arbetsytebaserad åtkomstkontroll för att hantera vem som kan komma åt och interagera med specifika datauppsättningar.
Nätverkssäkerhet. Använd säkerhetskontrollerna Infrastruktur för inkommande och utgående nätverk när du ansluter till data eller tjänster inom eller utanför nätverket. Viktiga funktioner är villkorlig åtkomst, privata länkar, åtkomst till betrodda arbetsytor och hanterade privata slutpunkter.
Granskningsloggar. Använd de detaljerade granskningsloggarna som tillhandahålls av Fabric för att spåra användaraktiviteter och säkerställa ansvar över hela plattformen.
Mer information finns i Säkerhet i Microsoft Fabric.
Kostnadsoptimering
Kostnadsoptimering handlar om att titta på sätt att minska onödiga utgifter och förbättra drifteffektiviteten. Mer information finns i checklistan Designgranskning för kostnadsoptimering.
Infrastrukturresurser erbjuder kapacitetsreservationer för ett visst antal kapacitetsenheter (CUS). Kapacitetsreservationer kan hjälpa dig att spara kostnader när du checkar in till en reservation för din infrastrukturkapacitetsanvändning i ett år.
Tänk på följande rekommendationer för att maximera användningen av din infrastrukturkapacitet:
- Rightsize F SKU:er. För att fastställa rätt kapacitetsstorlek kan du etablera utvärderingskapaciteter eller betala per användning F SKU:er för att mäta den faktiska kapacitetsstorlek som du behöver innan du köper en reserverad F SKU-instans. Vi rekommenderar att du utför ett begränsat konceptbevis med en representativ arbetsbelastning, övervakar CU-användningen och sedan extrapolerar för att komma fram till en uppskattning av CU-användningen för produktion. Infrastrukturresurser ger sömlös skalning. Du kan börja med en konservativ kapacitetsstorlek och skala upp om du behöver mer kapacitet.
- Övervaka användningsmönster. Spåra och analysera regelbundet din användning för att identifiera tider med hög belastning och låg belastning. Detta kan hjälpa dig att förstå när dina resurser används mest så att du kan schemalägga icke-kritiska uppgifter under tider med låg belastning för att undvika toppar i CU-användningen.
- Optimera frågor och arbetsbelastningar. Se till att dina frågor och arbetsbelastningar är optimerade för att minska onödig beräkningsanvändning. Optimera DAX-frågor, Python-kod och andra åtgärder.
- Använd sprickningar och utjämning. Använd funktionerna för bristning och utjämning i Fabric för att hantera processorintensiva aktiviteter utan att kräva en högre SKU. Detta kan hjälpa dig att hantera kostnader samtidigt som prestandan bibehålls. Mer information finns i Utvärdera och optimera din infrastrukturkapacitet.
- Konfigurera aviseringar och meddelanden. Konfigurera proaktiva aviseringar så att kapacitetsadministratörer kan övervaka och hantera hög beräkningsanvändning. Detta kan göra det möjligt för dem att vidta åtgärder i tid för att förhindra kostnadsöverskridanden.
- Implementera arbetsbelastningshantering. Schemalägg loggkörningsjobb vid olika tidpunkter baserat på resurstillgänglighet och systembehov för att optimera kapacitetsanvändningen. Mer information finns i Arbetsbelastningshantering.
Tänk även på följande:
- Prissättningen för Data Lake Storage beror på hur mycket data du lagrar och hur ofta du använder data. Exempelpriset innehåller 1 TB lagrade data och andra transaktionsantaganden. 1 TB avser storleken på datasjön, inte den ursprungliga äldre databasstorleken.
- Fabric-prissättningen baseras på fabric F SKU-kapacitetspriset eller premiumpriset per användare. Serverlösa kapaciteter förbrukar cpu och minne från köpt dedikerad kapacitet.
- Event Hubs-fakturor baserat på nivå, etablerade dataflödesenheter och mottagen inkommande trafik. Exemplet förutsätter en dataflödesenhet på standardnivån över en miljon händelser under en månad.
Driftseffektivitet
Operational Excellence omfattar de driftsprocesser som distribuerar ett program och håller det igång i produktion. Mer information finns i Checklista för designgranskning för Operational Excellence.
Fabric innehåller många komponenter som hjälper dig att hantera din dataplattform. Var och en av dessa komponenter stöder unika åtgärder som du kan visa i appen Kapacitetsmått för Microsoft Fabric. Använd appen Infrastrukturkapacitetsmått för att övervaka din kapacitetsförbrukning och fatta välgrundade beslut om hur du använder dina kapacitetsresurser.
Prestandaeffektivitet
Prestandaeffektivitet är arbetsbelastningens förmåga att uppfylla användarnas krav på det på ett effektivt sätt. Mer information finns i Checklista för designgranskning för prestandaeffektivitet.
Fabric har flera funktioner för att optimera prestanda för komponenterna. Dessa verktyg och metoder kan hjälpa dig att hantera beräkningsresurser effektivt, förhindra överlagring och fatta välgrundade beslut om skalning och optimering av arbetsbelastningar.
Några viktiga funktioner för prestandaeffektivitet i Infrastrukturresurser är:
Bristning och utjämning för att säkerställa att processorintensiva aktiviteter slutförs snabbt utan att kräva en högre SKU. Schemalägg dessa aktiviteter när som helst på dagen.
Begränsning, för att fördröja eller avvisa åtgärder när kapaciteten upplever en varaktig cpu-efterfrågan som ligger över SKU-gränsen.
Appen Infrastrukturkapacitetsmått för att visualisera kapacitetsanvändning, optimera artefakters prestanda och optimera objekt med hög beräkning. Appen skiljer mellan interaktiva åtgärder (till exempel DAX-frågor) och bakgrundsåtgärder (till exempel semantiska modelluppdateringar) för riktade optimeringar.
Deltagare
Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.
Huvudsakliga författare:
- Amit Chandra | Molnlösningsarkitekt
- Nicholas Moore | Molnlösningsarkitekt
Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.
Nästa steg
- Vad är OneLake?
- Vad är Data Factory?
- Vad är datateknik?
- Vad är datavetenskap?
- Vad är realtidsinformation?
- Vad är Power BI?
- Introduktion till Copilot i Fabric