Bagikan melalui


Pertimbangan produksi untuk Streaming Terstruktur

Artikel ini berisi rekomendasi untuk mengonfigurasikan beban kerja pemrosesan inkremental produksi dengan Streaming Terstruktur di Azure Databricks guna memenuhi persyaratan latensi dan biaya untuk aplikasi real time atau batch. Memahami konsep utama Streaming Terstruktur di Azure Databricks dapat membantu Anda menghindari jebakan umum saat Anda meningkatkan volume dan kecepatan data dan berpindah dari pengembangan ke produksi.

Azure Databricks telah memperkenalkan Tabel Langsung Delta untuk mengurangi kompleksitas pengelolaan infrastruktur produksi untuk beban kerja Streaming Terstruktur. Databricks merekomendasikan penggunaan Tabel Langsung Delta untuk alur Streaming Terstruktur baru; lihat Apa itu Tabel Langsung Delta?.

Catatan

Penskalaan otomatis komputasi memiliki batasan penskalaan ukuran kluster untuk beban kerja Streaming Terstruktur. Databricks merekomendasikan penggunaan Live Delta Tables dengan Penskalaan Otomatis yang Disempurnakan untuk beban kerja streaming. Lihat Mengoptimalkan pemanfaatan kluster alur Delta Live Tables dengan Penskalaan Otomatis yang Ditingkatkan.

Menggunakan notebook untuk beban kerja Streaming Terstruktur

Pengembangan interaktif dengan notebook Databricks mengharuskan Anda melampirkan buku catatan Anda ke kluster untuk menjalankan kueri secara manual. Anda dapat menjadwalkan buku catatan Databricks untuk penyebaran otomatis dan pemulihan otomatis dari kegagalan kueri menggunakan Alur Kerja.

Anda dapat memvisualisasikan kueri Streaming Terstruktur di buku catatan selama pengembangan interaktif, atau untuk pemantauan interaktif beban kerja produksi. Anda hanya boleh memvisualisasikan kueri Streaming Terstruktur dalam produksi jika manusia akan memantau output notebook secara teratur. Meskipun parameter trigger dan checkpointLocation bersifat opsional, untuk praktik terbaik, Databricks merekomendasikan agar Anda selalu menentukannya dalam produksi.

Mengontrol ukuran dan frekuensi batch untuk Streaming Terstruktur di Azure Databricks

Streaming Terstruktur di Azure Databricks memiliki opsi yang ditingkatkan untuk membantu mengontrol biaya dan latensi saat streaming dengan Auto Loader dan Delta Lake.

Apa itu streaming stateful?

Kueri Streaming Terstruktur stateful memerlukan pembaruan bertahap untuk informasi status menengah, sedangkan kueri Streaming Terstruktur stateless hanya melacak informasi tentang baris mana yang telah diproses dari sumber ke sink.

Operasi stateful mencakup agregasi streaming, streaming dropDuplicates, gabungan stream-stream, mapGroupsWithState, dan flatMapGroupsWithState.

Informasi status menengah yang diperlukan untuk kueri Streaming Terstruktur stateful dapat menyebabkan latensi dan masalah produksi yang tidak terduga jika tidak dikonfigurasi dengan benar.

Di Databricks Runtime 13.3 LTS ke atas, Anda dapat mengaktifkan titik pemeriksaan changelog dengan RocksDB untuk menurunkan durasi titik pemeriksaan dan latensi end-to-end untuk beban kerja Streaming Terstruktur. Databrick merekomendasikan untuk mengaktifkan titik pemeriksaan changelog untuk semua kueri stateful Streaming Terstruktur. Lihat Mengaktifkan titik pemeriksaan changelog.