Realtidsanalys av data med Azure Service Bus och Azure Data Explorer

Azure Service Bus
Azure Data Explorer
Azure App Service
Azure SQL Database
Azure Cosmos DB

Lösningsidéer

Den här artikeln är en lösningsidé. Om du vill att vi ska utöka innehållet med mer information, till exempel potentiella användningsfall, alternativa tjänster, implementeringsöverväganden eller prisvägledning, kan du meddela oss genom att ge GitHub-feedback.

Den här artikeln beskriver hur du använder Azure Data Explorer och Azure Service Bus för att förbättra en befintlig arkitektur för meddelandeköer med analys i nära realtid. Den är avsedd för IT-administratörer, molnarkitekter och drifts- och övervakningsteam.

Arkitektur

Diagram som visar en arkitektur för implementering av analys i nära realtid.

Ladda ned en Visio-fil med den här arkitekturen.

Grafana-logotypen är ett varumärke som tillhör Raintank, Inc., dba Grafana Labs. Inget godkännande understås av användningen av det här märket.

Diagrammet visar två datasökvägar. Huvudsökvägen, som representeras av fasta linjer och rutorna 1 till 5, är inmatning av data från olika källor till en Service Bus, där den bearbetas av ett stream analytics-jobb och lagras i en SQL-databas. Den andra sökvägen, som representeras av streckade linjer och rutor, visar data som flödar från servicebussen till ett Azure Data Explorer-kluster, där de kan frågas och analyseras via Kusto-frågespråk (KQL).

Service Bus används för att implementera ett köbaserat belastningsutjämningsmönster för ett transaktionsprogram.

Azure Data Explorer används för att köra analys nästan i realtid och exponera data via antingen API:er eller direkta frågor till till exempel Power BI, Azure Managed Grafana eller Azure Data Explorer-instrumentpaneler.

Dataflöde

Datakällan i arkitekturen är ett befintligt OLTP-program (Online Transaction Processing). Service Bus används för att asynkront skala ut programmet.

  1. OLTP-programmet (datakällan), som finns i Azure App Service, skickar data till Service Bus.

  2. Dataflöden från Service Bus i två riktningar:

    1. I det befintliga OLTP-programflödet utlöser det en funktionsapp för att lagra data i Azure SQL Database, Azure Cosmos DB eller en liknande driftdatabas.

    2. I det nära realtidsanalysflödet utlöser det ett orkestreringsflöde.

  3. Orkestreringsflödet skickar data till Azure Data Explorer för analys i nära realtid. Flödet kan använda antingen:

    • En funktionsapp som använder SDK:er för att skicka data i mikrobatch eller som använder stöd för hanterad strömningsinmatning som tillhandahålls av Azure Data Explorer när den har konfigurerats för strömmande inmatning.
    • En avsökningstjänst, som ett program som finns på Azure Kubernetes Service (AKS) eller en virtuell Azure-dator, som skickar data till Azure Data Explorer i mikrobatch. Det här alternativet kräver inte konfiguration av strömningsinmatning i Azure Data Explorer.
  4. Azure Data Explorer bearbetar data med hjälp av schemamappnings - och uppdateringsprinciper och gör dem tillgängliga via ett API, SDK eller anslutningsprogram för interaktiv analys eller rapportering. Azure Data Explorer kan också mata in eller referera till data från andra datakällor, till exempel SQL Database eller Azure Data Lake Storage.

  5. Program, anpassade tjänster eller rapporteringstjänster som Azure Data Explorer-instrumentpaneler, Power BI och Azure Managed Grafana kan köra frågor mot data i Azure Data Explorer nästan i realtid.

Komponenter

  • Med App Service kan du skapa och vara värd för webbappar, mobila serverdelar och RESTful-API:er på valfritt programmeringsspråk utan att hantera infrastrukturen.
  • Service Bus tillhandahåller tillförlitliga molnmeddelanden som en tjänst.
  • SQL Database är en fullständigt hanterad SQL-databas som har skapats för molnet. Den tillhandahåller automatiska uppdateringar, etablering, skalning och säkerhetskopior.
  • Azure Cosmos DB är en globalt distribuerad databas med flera modeller för program i valfri skala.
  • Azure Functions är en händelsedriven serverlös beräkningsplattform. Med Functions kan du distribuera och arbeta i stor skala i molnet och använda utlösare och bindningar för att integrera tjänster.
  • AKS är en mycket tillgänglig, mycket säker och fullständigt hanterad Kubernetes-tjänst för program- och mikrotjänstarbetsbelastningar.
  • Azure Data Explorer är en snabb, fullständigt hanterad och mycket skalbar dataanalystjänst för realtidsanalys av stora mängder data som strömmar från program, webbplatser, IoT-enheter med mera.
  • Data Lake Storage, som bygger på Azure Blob Storage, ger mycket skalbara datasjöfunktioner.
  • Power BI kan hjälpa dig att omvandla dina data till sammanhängande, visuellt uppslukande, interaktiva insikter.
  • Azure Managed Grafana är en fullständigt hanterad tjänst som gör att du kan distribuera Grafana utan att ägna tid åt konfigurationen.

Information om scenario

Realtidsanalys är processen att analysera data så snart de genereras för att få insikter om systemets aktuella tillstånd. Organisationer använder i allt högre grad realtidsanalyser för att få en konkurrensfördel. Analys i nära realtid är en variant av realtidsanalys som ger insikter inom några sekunder eller minuter efter datagenerering.

De här processerna gör det möjligt för organisationer att få insikter snabbare, fatta bättre beslut och reagera mer effektivt på föränderliga villkor. Nästan realtidsanalys kan tillämpas på olika domäner, till exempel e-handel, sjukvård, tillverkning och ekonomi. Ett e-handelsföretag kan till exempel använda analys i nära realtid för att övervaka kundernas beteende, optimera priser och anpassa rekommendationer.

Många organisationer implementerar analyser i nära realtid i befintliga lösningar. Den här lösningsidén visar hur du lägger till analys i nära realtid i en befintlig arkitektur som baseras på en meddelandekö och som är en del av ett driftsbaserat OLTP-program.

OLTP står för Online Transaction Processing. Det är en typ av databehandling som hanterar transaktionsorienterade program, vanligtvis för datainmatning och hämtning av transaktioner i en realtidsmiljö. OLTP-system är utformade för att bearbeta små, snabba transaktioner som ofta är finansiella, till exempel banktransaktioner eller kreditkortsköp.

Potentiella användningsfall

Här är några användningsfall som illustrerar fördelarna med analys i nära realtid:

  • Vårdgivare kan spåra patientresultat, upptäcka avvikelser och förbättra vårdkvaliteten.
  • Tillverkningsföretag kan optimera produktion, minska avfall och förhindra stilleståndstid.
  • Finansinstitut kan övervaka transaktioner, upptäcka bedrägerier, hantera risker och säkerställa efterlevnad av regler.
  • Handelsföretag kan övervaka kampanjer och få insikter för att stödja marknadsföring.
  • Företag kan övervaka, optimera, analysera och prognostisera leveranskedjor.

Deltagare

Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.

Huvudförfattare:

Annan deltagare:

Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.

Nästa steg