Introduzione ad Apache Kafka in HDInsight (anteprima)

Apache Kafka è una piattaforma di streaming open source distribuita che può essere usata per compilare applicazioni e pipeline di dati in streaming in tempo reale. Kafka offre anche una funzionalità di broker di messaggi simile a una coda di messaggi, dove è possibile pubblicare e sottoscrivere flussi dei dati denominati. Kafka in HDInsight fornisce un servizio gestito, a scalabilità e disponibilità elevate nel cloud di Microsoft Azure.

Perché usare Kafka in HDInsight?

Kafka fornisce le funzionalità seguenti:

  • Modelli di messaggistica per la pubblicazione/sottoscrizione: Kafka fornisce un'API Producer per pubblicare record in un argomento Kafka. L'API Consumer viene usata quando si sottoscrive un argomento.

  • Elaborazione dei flussi: Kafka viene usato spesso con Apache Storm o Spark per l'elaborazione dei flussi in tempo reale. In Kafka 0.10.0.0 (HDInsight versione 3.5) è stata introdotta un'API di streaming che consente di compilare soluzioni di streaming senza ricorrere a Storm o Spark.

  • Scalabilità orizzontale: le partizioni Kafka trasmettono nei nodi del cluster HDInsight. È possibile associare processi consumer a singole partizioni per garantire il bilanciamento del carico durante l'utilizzo dei record.

  • Recapito ordinato: in ogni partizione i record vengono archiviati nel flusso nell'ordine in cui sono stato ricevuti. Associando un processo consumer per partizione, è possibile garantire che i record vengano elaborati in ordine.

  • Tolleranza di errore: le partizioni possono essere replicate tra i nodi per assicurare la tolleranza di errore.

  • Integrazione con Azure Managed Disks: i dischi gestiti assicurano maggiore scalabilità e velocità effettiva per i dischi usati dalle macchine virtuali nel cluster HDInsight.

    I dischi gestiti sono abilitati per impostazione predefinita per Kafka in HDInsight e il numero di dischi usati per ogni nodo può essere configurato durante la creazione di HDInsight. Per altre informazioni sui dischi gestiti, vedere Panoramica di Azure Managed Disks.

    Per informazioni sulla configurazione di dischi gestiti con Kafka in HDInsight, vedere Configurare l'archiviazione e la scalabilità per Apache Kafka in HDInsight.

Casi d'uso

  • Messaggistica: poiché supporta il modello di messaggio per la pubblicazione/sottoscrizione, Kafka viene usato spesso come broker di messaggi.

  • Rilevamento delle attività: poiché Kafka offre la registrazione ordinata dei record, può essere usato per tenere traccia delle attività e per ricrearle. Ad esempio, le azioni dell'utente in un sito Web o in un'applicazione.

  • Aggregazione: usando l'elaborazione dei flussi, è possibile aggregare informazioni da flussi diversi per combinare e centralizzare le informazioni in dati operativi.

  • Trasformazione: usando l'elaborazione dei flussi, è possibile combinare e arricchire dati da più argomenti di input in uno o più argomenti di output.

Passaggi successivi

Usare i collegamenti seguenti per informazioni su come usare Apache Kafka in HDInsight: