MaxCompute Streaming Tunnel memungkinkan Anda menulis data ke MaxCompute dalam mode streaming dan menyediakan serangkaian API serta layanan backend yang berbeda dari API dan layanan backend MaxCompute Tunnel. API dari MaxCompute Streaming Tunnel secara signifikan mengurangi biaya pengembangan layanan terdistribusi dan menghilangkan hambatan performa MaxCompute Tunnel dalam skenario dengan konkurensi tinggi dan permintaan per detik (QPS) tinggi. Topik ini menjelaskan cara menggunakan MaxCompute Streaming Tunnel.
Deskripsi
MaxCompute Streaming Tunnel tersedia untuk pratinjau publik mulai 1 Januari 2021. Anda dapat menggunakan layanan ini secara gratis selama periode pratinjau publik. Untuk pembaruan tentang komersialisasi layanan ini, ikuti Pemberitahuan Layanan.
Layanan berikut memungkinkan Anda menulis data ke MaxCompute menggunakan MaxCompute Streaming Tunnel:
Realtime Compute for Apache Flink: Secara default, MaxCompute Tunnel digunakan. Untuk menggunakan MaxCompute Streaming Tunnel, gunakan plugin bawaan Realtime Compute for Apache Flink.
DataWorks: Secara default, MaxCompute Tunnel digunakan. Untuk menggunakan MaxCompute Streaming Tunnel, hubungi insinyur DataWorks untuk mengaktifkan saluran ini di latar belakang.
ApsaraMQ for Kafka: Secara default, MaxCompute Tunnel digunakan. Untuk menggunakan MaxCompute Streaming Tunnel, hubungi insinyur Kafka untuk mengaktifkan saluran ini di latar belakang.
MaxCompute Streaming Tunnel menyediakan fitur-fitur berikut:
API semantik streaming: membantu Anda mengembangkan layanan sinkronisasi data terdistribusi dengan lebih mudah.
Pembagian partisi otomatis: mencegah penguncian partisi bersamaan jika beberapa pekerjaan sinkronisasi data dijalankan secara bersamaan untuk membuat partisi.
Penggabungan data inkremental secara asinkron: meningkatkan efisiensi penyimpanan data.
MaxCompute Streaming Tunnel dapat menyelesaikan berbagai masalah yang mungkin terjadi saat menggunakan MaxCompute Tunnel untuk menulis data streaming. MaxCompute Streaming Tunnel memberikan manfaat berikut:
Mengoptimalkan struktur penyimpanan data untuk mencegah fragmentasi file yang disebabkan oleh operasi penulisan data dengan QPS tinggi.
Menyediakan mekanisme untuk memproses data inkremental secara asinkron. Mekanisme ini mendukung fitur penggabungan data, yang meningkatkan efisiensi penyimpanan tanpa gangguan layanan.
Skenario
Tabel berikut menjelaskan skenario penggunaan MaxCompute Streaming Tunnel.
Skenario | Deskripsi | Manfaat |
Sejumlah besar log acara ditulis ke MaxCompute secara real-time. | Data log ditulis langsung ke MaxCompute untuk pemrosesan batch. | Layanan penyimpanan perantara tidak diperlukan, mengurangi biaya. |
Hasil komputasi aliran ditulis ke MaxCompute secara real-time. | Batasan pada konkurensi dan | MaxCompute Streaming Tunnel memastikan ketersediaan layanan streaming dalam skenario dengan penguncian konkurensi tinggi dan mencegah banyak file kecil dihasilkan di MaxCompute karena |
Data layanan penyimpanan aliran seperti DataHub dan ApsaraMQ for Kafka disinkronkan ke MaxCompute secara real-time. | Batasan pada konkurensi dan | Masalah dengan Simple Message Queue untuk sinkronisasi waktu nyata dengan MaxCompute diselesaikan. Dukungan untuk konkurensi tinggi dan sinkronisasi batch data dalam jumlah besar didukung. |
Batasan
MaxCompute Streaming Tunnel memiliki batasan berikut:
Tabel atau partisi terkunci selama operasi penulisan: Selama penulisan data streaming, Layanan MaxCompute Tunnel mengunci tabel atau partisi yang sedang ditulis. Ini berarti bahwa selama penulisan data streaming, semua operasi DML yang memodifikasi data diblokir, seperti
insert into|insert overwrite. Setelah penulisan streaming selesai, MaxCompute membuka kunci tabel atau partisi, dan kemudian semua operasi dapat dieksekusi.Jika skema tabel tempat Anda ingin menulis data dimodifikasi, data streaming tidak dapat ditulis ke tabel tersebut.
Peningkatan volume penyimpanan data panas: Jika penggabungan data atau ZORDER BY dilakukan untuk pemrosesan asinkron, MaxCompute Streaming Tunnel menyimpan dua salinan data yang ditulis dalam satu jam terakhir. Satu salinan adalah data asli dan salinan lainnya adalah data yang digabungkan secara asinkron. Hal ini menyebabkan data redundan disimpan. Secara default, periode retensi data redundan adalah 1 jam.