Azure Event Hubs – en stordataströmningsplattform och händelseinmatningstjänst

Azure Event Hubs är en stordataströmningsplattform och händelseinmatningstjänst. Den kan ta emot och behandla miljoner händelser per sekund. Data som skickas till en händelsehubb kan omvandlas och lagras med hjälp av valfri provider för realtidsanalys eller batchbearbetnings-/lagringsadaptrar.

Här följer några exempel på hur du kan använda Event Hubs:

  • Avvikelseidentifiering (bedrägeri/avvikare)
  • Programloggning
  • Analyspipelines, till exempel klickströmmar
  • Live-instrumentpaneler
  • Dataarkivering
  • Transaktionsbearbetning
  • Bearbetning av användartelemetri
  • Strömning av enhetstelemetri

Varför ska jag använda Event Hubs?

Data är bara värdefulla när det finns ett enkelt sätt att bearbeta och få insikter i tid från datakällor. Event Hubs är en distribuerad plattform för strömningsbearbetning med låg fördröjning och smidig integrering, som har data- och analystjänster inuti och utanför Azure för att skapa en fullständig stordatapipeline.

Event Hubs utgör ”dörren” för en händelsepipeline, ofta kallad en händelseinmatare i lösningsarkitekturer. En händelseinmatare är en komponent eller tjänst som placeras mellan händelseutgivare och -konsumenter och frikopplar produktion av en händelseström från användningen av de händelserna. Event Hubs ger en enhetlig strömningsplattform med tidkvarhållningsbuffert vilket frikopplar händelseproducenter från händelsekonsumenter.

I följande avsnitt beskrivs viktiga funktioner i Azure Event Hubs-tjänsten:

Fullständigt hanterad PaaS

Event Hubs är en fullständigt hanterad PaaS-lösning (Platform-as-a-Service) med låga omkostnader för konfiguration och hantering så att du kan fokusera på affärslösningarna. Med Event Hubs för Apache Kafka-ekosystem får du PaaS Kafka-funktionerna utan att behöva hantera, konfigurera eller köra dina kluster.

Stöd för realtidsbearbetning och satsvis bearbetning

Mata in, buffra, lagra och bearbeta din dataström i realtid för att få användbara insikter. Event Hubs använder en partitionerad konsumentmodell som gör att flera program kan bearbeta dataströmmen samtidigt och att du får kontroll över bearbetningens hastighet. Azure Event Hubs är även integrerat med Azure Functions för att ge en serverlös arkitektur.

Samla in händelsedata

Samla in dina data nästan i realtid i en Azure Blob Storage eller Azure Data Lake Storage för långsiktig kvarhållning eller bearbetning av mikrobatchar. Du kan åstadkomma detta beteende i samma dataström som du använder för att få fram analys i realtid. Det går snabbt att konfigurera insamling av händelsedata. Det finns inga administrativa kostnader för att köra den, och den skalas automatiskt med Event Hubs-dataflödesenheter eller bearbetningsenheter. Med Event Hubs kan du rikta in dig på databearbetning i stället för på datainsamling.

Skalbarhet

Med Event Hubs kan du börja med dataströmmar i megabytestorlek och växa till gigabyte eller terabyte. Funktionen Komplettera automatiskt är ett av de många tillgängliga alternativen för att skala antalet dataflödesenheter eller bearbetningsenheter för att uppfylla dina användningsbehov.

Stort ekosystem

Med ett brett ekosystem baserat på branschstandardprotokollet AMQP 1.0 och är tillgängligt på olika språk .NET, Java, Python, JavaScript kan du enkelt börja bearbeta dina strömmar från Event Hubs. Alla klientspråk som stöds ger lågnivåintegrering. Ekosystemet innehåller också sömlös integrering med Azure-tjänster som Azure Stream Analytics och Azure Functions så att du kan skapa arkitekturer utan server.

Event Hubs för Apache Kafka

Event Hubs för Apache Kafka-ekosystem gör det dessutom möjligt för Apache Kafka-klienter (1.0 och senare) klienter och program att kommunicera med Event Hubs. Du behöver inte konfigurera, konfigurera och hantera dina egna Kafka- och Zookeeper-kluster eller använda vissa Kafka-as-a-Service-erbjudanden som inte är inbyggda i Azure.

Event Hubs Premium och dedikerad

Event Hubs Premium tillgodoser avancerade strömningsbehov som kräver överlägsen prestanda, bättre isolering med förutsägbar svarstid och minimal interferens i en hanterad PaaS-miljö för flera klientorganisationer. Utöver alla funktioner i standarderbjudandet erbjuder Premium-nivån flera extra funktioner, till exempel dynamisk partitionsskalning, utökad kvarhållning och kundhanterade nycklar. Mer information finns i Event Hubs Premium.

Event Hubs dedikerad nivå erbjuder distributioner med en enda klientorganisation för kunder med de mest krävande strömningsbehoven. Det här erbjudandet för en enda klientorganisation har ett garanterat serviceavtal på 99,99 % och är endast tillgängligt på vår dedikerade prisnivå. Ett Event Hubs-kluster kan inkommande miljontals händelser per sekund med garanterad kapacitet och svarstid under sek. Namnrymder och händelsehubbar som skapats i det dedikerade klustret innehåller alla funktioner i premiumerbjudandet med mera. Mer information finns i Event Hubs Dedicated.

Se jämförelse mellan Event Hubs-nivåer för mer information.

Event Hubs på Azure Stack Hub

Med Event Hubs på Azure Stack Hub kan du realisera hybridmolnscenarier. Strömnings- och händelsebaserade lösningar stöds för både lokal och Azure-molnbearbetning. Oavsett om ditt scenario är hybrid (anslutet) eller frånkopplat kan din lösning stödja bearbetning av händelser/strömmar i stor skala. Ditt scenario är endast bundet av Event Hubs-klusterstorleken, som du kan etablera enligt dina behov.

Event Hubs-versionerna (på Azure Stack Hub och i Azure) erbjuder en hög grad av funktionsparitet. Den här pariteten innebär att SDK:er, exempel, PowerShell, CLI och portaler erbjuder en liknande upplevelse, med få skillnader.

Mer information finns i Översikt över Event Hubs på Azure Stack Hub.

Nyckelkomponenter i arkitektur

Event Hubs innehåller följande viktiga element:

  • Händelseutfärdare: En entitet som skickar data till en händelsehubb. Händelseutfärdare kan utfärda händelser med hjälp av HTTPS, AMQP 1.0 eller Apache Kafka (1.0 och senare)
  • Partitioner: Varje konsument läser endast en specifik delmängd, eller partition, av meddelandeströmmen.
  • Konsumentgrupper: En vy (tillstånd, position eller offset) av en hel händelsehubb. Konsumentgrupper gör att flera konsumerande program kan ha en separat vy över händelseströmmen. De läser strömmen oberoende av varandra i egen takt och med sina egna offset.
  • Dataflödesenheter (standardnivå) eller bearbetningsenheter (premiumnivå) eller kapacitetsenheter (dedikerade) : Förköpta kapacitetsenheter som styr dataflödeskapaciteten för Event Hubs.
  • Händelsemottagare: Alla entiteter som läser händelsedata från en händelsehubb. Alla Event Hubs-konsumenter ansluter via AMQP 1.0-session. Event Hubs-tjänsten levererar händelserna via en session när de blir tillgängliga. Alla Kafka-konsumenter ansluter via protokollet Kafka 1.0 och senare.

Följande bild visar strömhanteringsarkitekturen i Event Hubs:

Event Hubs

Nästa steg

Information om hur du kommer igång med Event Hubs finns i självstudierna Skicka och ta emot händelser :

Mer information om Event Hubs finns i följande artiklar: