Een realtime analyse- en streamingverwerkingstechnologie kiezen in Azure

Er zijn verschillende services beschikbaar voor realtime analyse en streamingverwerking op Azure. Dit artikel helpt u bij het bepalen welke technologie het meest geschikt is voor uw toepassing.

Wanneer gebruikt u Azure Stream Analytics?

Azure Stream Analytics is de aanbevolen service voor Stream Analytics in Azure. Gebruik het voor een breed scala aan scenario's die onder andere omvatten, maar niet beperkt zijn tot:

Het toevoegen van een Azure Stream Analytics-taak aan uw toepassing is de snelste manier om streaminganalyses in Azure uit te voeren met behulp van de SQL-taal die u al kent. Azure Stream Analytics is een taakservice, dus u hoeft geen tijd te besteden aan het beheren van clusters en u hoeft zich geen zorgen te maken over downtime met een SLA (Service Level Agreement) van 99,9% op taakniveau. Facturering wordt ook uitgevoerd op taakniveau, waardoor opstartkosten laag zijn (één streaming-eenheid), maar schaalbaar (maximaal 396 streaming-eenheden). Het is veel rendabeler om een paar Stream Analytics-taken uit te voeren dan om een cluster uit te voeren en te onderhouden.

Azure Stream Analytics biedt een uitgebreide en gebruiksklare ervaring. U kunt direct profiteren van de volgende functies zonder extra instellingen:

  • Ingebouwde tijdelijke operators, zoals vensteraggregaties, tijdgebaseerde joins, en tijdelijke analysefuncties.
  • Systeemeigen Azure-invoer- en uitvoeradapters
  • Ondersteuning voor trage veranderende referentiegegevens (ook wel opzoektabellen genoemd), waaronder samenvoegen met georuimtelijke referentiegegevens voor geofencing.
  • Geïntegreerde oplossingen, zoals anomaliedetectie
  • Meerdere tijdvensters in dezelfde query
  • Mogelijkheid om meerdere tijdelijke operatoren op te stellen in willekeurige reeksen.
  • Onder de 100 ms end-to-end latentie van invoer die bij Event Hubs aankomt tot de uitvoer die in Event Hubs terechtkomt, inclusief de netwerkvertraging van en naar Event Hubs, bij een constant hoge doorvoer.

Wanneer andere technologieën worden gebruikt

U wilt UDF's, UDA's en aangepaste deserializers schrijven in een andere taal dan JavaScript of C#

Azure Stream Analytics ondersteunt door de gebruiker gedefinieerde functies (UDF's) en door de gebruiker gedefinieerde aggregaties (UDF's) in JavaScript voor cloudtaken en C# voor IoT Edge taken. Door de gebruiker gedefinieerde C#-deserializers worden ook ondersteund. Als u een deserializer, een UDF of een UDA in andere talen wilt implementeren, zoals Java of Python, gebruikt u Spark Structured Streaming. U kunt de Event Hubs EventProcessorHost ook uitvoeren op uw eigen virtuele machines om willekeurige streamingverwerking uit te voeren.

Uw oplossing bevindt zich in een omgeving met meerdere clouds of on-premises

Azure Stream Analytics is de eigen technologie van Microsoft en is alleen beschikbaar in Azure. Als u uw oplossing nodig hebt om overdraagbaar te zijn in clouds of on-premises, kunt u overwegen opensource-technologieën zoals Spark Structured Streaming of Apache Flink.

Volgende stappen