Menggunakan HDInsight dan Delta Lake untuk mengelola data peristiwa

Azure HDInsight
Microsoft Entra ID
Azure Load Balancer
Azure ExpressRoute
Azure Virtual Network

Ide solusi

Artikel ini menjelaskan ide solusi. Arsitek cloud Anda dapat menggunakan panduan ini untuk membantu memvisualisasikan komponen utama untuk implementasi umum arsitektur ini. Gunakan artikel ini sebagai titik awal untuk merancang solusi yang dirancang dengan baik yang selaras dengan persyaratan spesifik beban kerja Anda.

Artikel ini menjelaskan solusi yang dapat Anda gunakan untuk menyerap dan memproses jutaan peristiwa streaming per detik lalu menulis peristiwa ke tabel Delta Lake. Solusi ini menggunakan Apache Spark dan Apache Kafka di Azure HDInsight.

Apache®, Apache Kafka, dan Apache Spark adalah merek dagang terdaftar atau merek dagang dari Apache Software Foundation di Amerika Serikat dan/atau negara atau wilayah lain. Tidak ada dukungan oleh The Apache Software Foundation yang tersirat oleh penggunaan tanda ini.

Delta Lake Project adalah merek dagang terdaftar dari Linux Foundation di Amerika Serikat dan/atau negara lain.

Sistem

Diagram yang memperlihatkan arsitektur untuk menyerap dan memproses data streaming.

Unduh file Visio arsitektur ini.

Logo Jupyter Notebook adalah merek dagang dari perusahaan masing-masing. Tidak ada dukungan yang tersirat oleh penggunaan tanda ini.

Aliran data

Aliran data berikut sesuai dengan arsitektur sebelumnya.

  1. Data peristiwa real time, seperti data peristiwa IoT, diserap ke Apache Kafka melalui produsen Apache Kafka.

  2. Apache Spark Structured Streaming memproses data mendekati real-time.

  3. Apache Spark menyediakan sink untuk menulis analitik yang diubah dan dihitung. Data yang diproses disimpan dalam akun Azure Data Lake Storage dalam format tabel Delta Lake.

  4. Data yang diproses terus diserap ke dalam Apache Kafka.

  5. Data di akun Azure Data Lake Storage dapat memberikan wawasan untuk:

    • Dasbor mendekati real-time di Power BI.
    • Azure Pembelajaran Mesin digunakan dengan alat pembelajaran mesin.
    • Jupyter Notebook dengan menggunakan PySpark atau Scala untuk menggunakan tabel Delta Lake.

Komponen

  • HDInsight menyediakan komponen sumber terbuka untuk analitik perusahaan. Anda dapat menjalankan komponen Apache ini di lingkungan Azure dengan keamanan tingkat perusahaan. HDInsight juga menawarkan manfaat lain termasuk skalabilitas, keamanan, pemantauan terpusat, ketersediaan global, dan ekstensibilitas.

  • Apache Kafka di HDInsight adalah platform terdistribusi sumber terbuka terkelola yang dapat Anda gunakan untuk membangun alur dan aplikasi data streaming real time. Apache Kafka memberikan performa dan durabilitas tinggi sehingga Anda dapat mengelompokkan rekaman ke dalam topik, partisi, dan grup konsumen dan aliran peristiwa multipleks dari produsen ke konsumen.

  • Apache Spark dalam HDInsight adalah implementasi Microsoft terkelola dari Apache Spark di cloud dan merupakan salah satu dari beberapa penawaran Spark di Azure.

  • Apache Spark Structured Streaming adalah mesin toleransi kesalahan yang dapat diskalakan sekali untuk memproses aliran. Ini dibangun di atas mesin Spark SQL. Kueri Streaming Terstruktur mendekati real time dan memiliki latensi rendah. Apache Spark Structured Streaming menyediakan beberapa konektor untuk sumber data dan sink data. Anda juga dapat menggabungkan beberapa aliran dari berbagai jenis sumber.

  • Apache Spark Structured Streaming di Apache Kafka digunakan untuk membuat batch dan mengalirkan kueri dan menyimpannya di lapisan penyimpanan, database, atau Apache Kafka.

  • Lapisan penyimpanan Delta Lake memberikan keandalan untuk data lake dengan menambahkan lapisan penyimpanan transaksional di atas data yang disimpan di penyimpanan cloud, seperti Azure Storage. Lapisan penyimpanan ini memperluas file data Apache Parquet dengan log transaksi berbasis file. Anda dapat menyimpan data dalam format tabel Delta Lake untuk memanfaatkan manfaat seperti transaksi atomitas, konsistensi, isolasi, dan durabilitas (ACID), evolusi skema, dan versi riwayat.

  • Konektor tabel Power BI Delta Lake digunakan untuk membaca data tabel Delta Lake dari Power BI.

  • Pembelajaran Mesin adalah layanan Azure tempat Anda dapat mengirim data yang Anda kumpulkan untuk kemudian digunakan untuk model pembelajaran mesin.

Detail skenario

Streaming peristiwa adalah urutan peristiwa yang tidak terbatas berkelanjutan yang mengalir dari penerbit peristiwa ke pelanggan. Dalam beberapa kasus penggunaan bisnis, Anda harus menyimpan peristiwa ini dalam format mentah lalu membersihkan, mengubah, dan menggabungkan peristiwa untuk berbagai kebutuhan analitik. Gunakan streaming peristiwa untuk melakukan pemrosesan dan analisis peristiwa yang hampir real-time, yang menghasilkan wawasan langsung.

Kemungkinan kasus penggunaan

Solusi ini memberikan kesempatan bagi bisnis Anda untuk memproses aliran peristiwa yang toleran persis sekali yang tidak dapat diubah mendekati real-time. Pendekatan ini menggunakan Apache Kafka sebagai sumber input untuk Spark Structured Streaming dan menggunakan Delta Lake sebagai lapisan penyimpanan.

Skenario bisnis meliputi:

  • Deteksi penipuan masuk akun
  • Analisis kondisi pasar saat ini
  • Analisis data pasar saham real time
  • Deteksi penipuan kartu kredit
  • Pemrosesan gambar dan video digital
  • Penelitian dan penemuan obat
  • Middleware untuk solusi big data perusahaan
  • Perhitungan risiko penjualan pendek
  • Manufaktur cerdas dan IoT industri (IIoT)

Solusi ini berlaku untuk industri berikut:

  • Agriculture
  • Barang kemasan konsumen (CPG)
  • Keamanan cyber
  • Finance
  • Layanan Kesehatan
  • Asuransi
  • Logistik
  • Manufaktur
  • Retail

Kontributor

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

Penulis utama:

Untuk melihat profil LinkedIn non-publik, masuk ke LinkedIn.

Langkah berikutnya