Een batchverwerkingstechnologie kiezen in Azure

Big data-oplossingen maken vaak gebruik van langlopende batchtaken om de gegevens te filteren, aggregeren en op andere wijze voor te bereiden op analyse. Deze taken omvatten meestal het lezen van bronbestanden uit schaalbare opslag (zoals HDFS, Azure Data Lake Store en Azure Storage), het verwerken ervan en het schrijven van de uitvoer naar nieuwe bestanden in schaalbare opslag.

De fundamentele vereiste van dergelijke batchverwerkingsengines is om berekeningen uit te schalen voor het verwerken van een grote hoeveelheid gegevens. In tegenstelling tot realtime verwerking heeft batchverwerking naar verwachting latenties (de tijd tussen gegevensopname en het berekenen van een resultaat) die in minuten tot uren meten.

Technologische keuzes voor batchverwerking

Azure Synapse Analytics

Azure Synapse is een gedistribueerd systeem dat is ontworpen om analyses uit te voeren op grote gegevens. Het biedt ondersteuning voor massive parallel processing (MPP), waardoor het geschikt is voor het uitvoeren van analyses met hoge prestaties. Overweeg Azure Synapse wanneer u grote hoeveelheden gegevens (meer dan 1 TB) hebt en een analyseworkload uitvoert die profiteert van parallelle uitvoering.

Azure Data Lake Analytics

Data Lake Analytics is een service voor analysetaken op aanvraag. Het is geoptimaliseerd voor gedistribueerde verwerking van grote gegevenssets die zijn opgeslagen in Azure Data Lake Store.

  • Talen: U-SQL (inclusief Python-, R- en C#-extensies).
  • Integreert met Azure Data Lake Store, Azure Storage-blobs, Azure SQL Database en Azure Synapse.
  • Het prijsmodel is per taak.

HDInsight

HDInsight is een beheerde Hadoop-service. Gebruik deze om Hadoop-clusters in Azure te implementeren en te beheren. Voor batchverwerking kunt u Spark, Hive, Hive LLAP, MapReduce gebruiken.

  • Talen: R, Python, Java, Scala, SQL
  • Kerberos-verificatie met Active Directory, op Apache Ranger gebaseerd toegangsbeheer
  • Geeft u volledige controle over het Hadoop-cluster

Azure Databricks

Azure Databricks is een op Apache Spark gebaseerd analyseplatform. U kunt het beschouwen als 'Spark as a service'. Het is de eenvoudigste manier om Spark te gebruiken op het Azure-platform.

  • Talen: R, Python, Java, Scala, Spark SQL
  • Snelle begintijden van het cluster, automatischeterminatie, automatisch schalen.
  • Beheert het Spark-cluster voor u.
  • Ingebouwde integratie met Azure Blob Storage, Azure Data Lake Storage (ADLS), Azure Synapse en andere services. Zie gegevensbronnen.
  • Gebruikersverificatie met Microsoft Entra-id.
  • Webnotitieblokken voor samenwerking en gegevensverkenning.
  • Ondersteunt clusters met GPU

Criteria voor sleutelselectie

Om de keuzes te beperken, beantwoordt u eerst deze vragen:

  • Wilt u een beheerde service in plaats van uw eigen servers beheren?

  • Wilt u declaratief of imperatief batchverwerkingslogica ontwerpen?

  • Gaat u batchverwerking uitvoeren in bursts? Zo ja, overweeg dan opties waarmee u het cluster automatisch kunt beĆ«indigen of waarvan het prijsmodel per batchtaak is.

  • Moet u bijvoorbeeld query's uitvoeren op relationele gegevensarchieven samen met uw batchverwerking om referentiegegevens op te zoeken? Zo ja, overweeg dan de opties die het uitvoeren van query's op externe relationele archieven mogelijk maken.

Mogelijkheidsmatrix

De volgende tabellen bevatten een overzicht van de belangrijkste verschillen in mogelijkheden.

Algemene mogelijkheden

Mogelijkheid Azure Data Lake Analytics Azure Synapse HDInsight Azure Databricks
Is beheerde service Ja Ja Ja 1 Ja
Relationele gegevensopslag Ja Ja No Ja
Prijsmodel Per batchtaak Per clusteruur Per clusteruur Databricks Unit2 + clusteruur

[1] Met handmatige configuratie.

[2] Een Databricks Unit (DBU) is een verwerkingseenheid per uur.

Functies

Mogelijkheid Azure Data Lake Analytics Azure Synapse HDInsight met Spark HDInsight met Hive HDInsight met Hive LLAP Azure Databricks
Automatisch schalen Nee No Ja Ja Ja Ja
Granulariteit uitschalen Per taak Per cluster Per cluster Per cluster Per cluster Per cluster
In-memory caching van gegevens Nr. Ja Ja No Ja Ja
Query uitvoeren vanuit externe relationele winkels Ja No Ja No No Ja
Verificatie Microsoft Entra ID SQL/Microsoft Entra-id Nee Microsoft Entra ID1 Microsoft Entra ID1 Microsoft Entra ID
Controle Ja Ja Nr. Ja 1 Ja 1 Ja
Beveiliging op rijniveau Nee Ja2 Nee Ja 1 Ja 1 Ja
Ondersteunt firewalls Ja Ja Ja Ja 3 Ja 3 Ja
Dynamische gegevensmaskering Nr. Ja Nr. Ja 1 Ja 1 Ja

[1] Vereist het gebruik van een HDInsight-cluster dat lid is van een domein.

[2] Filterpredicaten alleen. Zie Beveiliging op rijniveau

[3] Ondersteund bij gebruik binnen een virtueel Azure-netwerk.

Bijdragers

Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.

Hoofdauteur:

Volgende stappen