Memilih teknologi pemrosesan aliran di Azure

Artikel ini membandingkan pilihan teknologi untuk pemrosesan aliran real-time di Azure.

Pemrosesan stream real-time mengonsumsi pesan dari penyimpanan berbasis antrian atau file, memproses pesan, dan meneruskan hasilnya ke antrean pesan, penyimpanan file, atau database lain. Pemrosesan mungkin termasuk kueri, pemfilteran, dan penggabungan pesan. Mesin pemrosesan aliran harus dapat mengkonsumsi aliran data yang tak ada habisnya dan menghasilkan hasil dengan latensi minimal. Untuk informasi selengkapnya, lihat Pemrosesan real time.

Apa opsi Anda saat memilih teknologi untuk pemrosesan real time?

Di Azure, semua penyimpanan data berikut akan memenuhi persyaratan core yang mendukung pemrosesan real-time:

Kriteria Pemilihan Kunci

Untuk skenario pemrosesan real-time, mulailah memilih layanan yang sesuai untuk kebutuhan Anda dengan menjawab pertanyaan ini:

  • Apakah Anda lebih suka pendekatan deklaratif atau imperatif untuk menulis logika pemrosesan streaming?

  • Apakah Anda memerlukan dukungan bawaan untuk pemrosesan temporal atau windowing?

  • Apakah data Anda tiba dalam format selain Avro, JSON, atau CSV? Jika ya, pertimbangkan opsi yang mendukung format apa pun menggunakan kode kustom.

  • Apakah Anda perlu menskalakan pemrosesan Anda di luar 1 GB/dtk? Jika ya, pertimbangkan opsi yang diskalakan dengan ukuran kluster.

Matriks kemampuan

Tabel berikut merangkum perbedaan utama kemampuan.

Kemampuan secara umum

Kemampuan Azure Stream Analytics HDInsight dengan Spark Streaming Apache Spark di Azure Databricks HDInsight dengan Storm Azure Functions Azure App Service WebJobs
Keterprograman SQL, JavaScript C#/F#, Java, Python, Scala C#/F#, Java, Python, R, Scala C#, Java C#, F#, Java, Node.js, Python C#, Java, Node.js, PHP, Python
Paradigma pemrograman Deklaratif Campuran deklaratif dan imperatif Campuran deklaratif dan imperatif Imperatif Imperatif Imperatif
Rencana harga Unit streaming Per jam kluster Unit Databricks Per jam kluster Eksekusi per fungsi dan konsumsi sumber daya Jam paket layanan per aplikasi

Kemampuan integrasi

Kemampuan Azure Stream Analytics HDInsight dengan Spark Streaming Apache Spark di Azure Databricks HDInsight dengan Storm Azure Functions Azure App Service WebJobs
Input Azure Event Hubs, Azure IoT Hub, penyimpanan Azure Blob/ADLS Gen2 Event Hubs, IoT Hub, Kafka, HDFS, Storage Blobs, Azure Data Lake Store Event Hubs, IoT Hub, Kafka, HDFS, Storage Blobs, Azure Data Lake Store Event Hubs, IoT Hub, Storage Blobs, Azure Data Lake Store Pengikatan yang didukung Bus Layanan, Antrean Penyimpanan, Blob Penyimpanan, Azure Event Hubs, WebHooks, Azure Cosmos DB, Files
Sink Azure Data Lake Storage Gen 1, Azure Data Explorer, Azure Database for PostgreSQL, Azure SQL Database, Azure Synapse Analytics, Penyimpanan blob dan Azure Data Lake Gen 2, Azure Event Hubs, Power BI, penyimpanan Azure Table, antrean Azure Bus Layanan, topik Azure Bus Layanan, Azure Cosmos DB, Azure Functions HDFS, Kafka, Blob Penyimpanan, Azure Data Lake Store, Azure Cosmos DB HDFS, Kafka, Blob Penyimpanan, Azure Data Lake Store, Azure Cosmos DB Event Hubs, Service Bus, Kafka Pengikatan yang didukung Bus Layanan, Antrean Penyimpanan, Blob Penyimpanan, Azure Event Hubs, WebHooks, Azure Cosmos DB, Files

Kemampuan pemrosesan

Kemampuan Azure Stream Analytics HDInsight dengan Spark Streaming Apache Spark di Azure Databricks HDInsight dengan Storm Azure Functions Azure App Service WebJobs
Dukungan temporal/windowing bawaan Ya Ya Ya Ya No Tidak
Format data input Avro, JSON, atau CSV, UTF-8 dikodekan Format apa pun menggunakan kode kustom Format apa pun menggunakan kode kustom Format apa pun menggunakan kode kustom Format apa pun menggunakan kode kustom Format apa pun menggunakan kode kustom
Skalabilitas Partisi kueri Dibatasi oleh ukuran kluster Dibatasi oleh konfigurasi skala kluster Databricks Dibatasi oleh ukuran kluster Pemrosesan instans aplikasi fungsi hingga 200 secara paralel Dibatasi oleh kapasitas paket layanan aplikasi
Dukungan penanganan acara yang terlambat dan tidak teratur Ya Ya Ya Ya No Tidak

Kontributor

Artikel ini dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.

Penulis utama:

Langkah berikutnya