Identifikasi hambatan dan tingkatkan hasil aktivitas penyalinan: ADF
Identifikasi hambatan dan tingkatkan hasil aktivitas penyalinan: ADF
[ad_1]
Azure Data Factory (ADF) adalah alat ETL cloud-native untuk memproses data dengan lancar di berbagai sumber dan sink.
Aktivitas penyalinan terutama digunakan untuk menyalin data dari satu sumber ke sumber lain. Saat menyalin data antara dua sumber berbeda, kami perlu memastikan bahwa aktivitas tersebut diselesaikan tepat waktu untuk memenuhi kebutuhan bisnis dan memproses data dalam perjanjian tingkat layanan.
Identifikasi hambatan dan tingkatkan throughput
Ada dua elemen utama dalam ADF yang akan mempengaruhi kinerja throughput. Ini adalah perhitungan menggunakan salinan seperti Integration Runtime (IR) Azure Public atau VNET, Self-Hosted Integration Runtime (SHIR) dan jumlah salinan paralel. Jika penghitungan tidak diskalakan dengan tepat sesuai ukuran pekerjaan penyalinan, kinerja akan melambat karena pemanfaatan yang berlebihan. Selain menskalakan salinan paralel untuk mencapai kinerja yang lebih cepat, hal ini memerlukan lebih banyak komputasi dari IR dan sumber yang terlibat. Jadi saat kita mengadaptasi satu opsi, kita mungkin perlu mengadaptasi elemen lainnya juga.
Saat Anda mengamati kinerja buruk saat menjalankan aktivitas penyalinan, berikut adalah penyebab paling umum.
Masalah kapasitas SHIR
Periksa apakah SHIR digunakan secara berlebihan untuk sumber daya seperti CPU dan memori saat menjalankan salinan. Hal ini dapat diverifikasi di tab pemantauan runtime integrasi ADF Studio. Jika pemanfaatannya berlebihan (idealnya ambang batas pemanfaatannya adalah 80%), maka pemanfaatannya perlu ditingkatkan atau dikembangkan untuk menangani pekerjaan tersebut. Masalah ini mungkin terjadi karena perubahan terkini dalam jumlah eksekusi alur di ADF atau mungkin karena perubahan ukuran himpunan data yang disalin sebagai bagian dari pekerjaan.
Untuk Azure Public IR dan Managed VNET IR, sumber daya dikelola melalui Unit Integrasi Data dan Salin opsi skala perhitungan, masing-masing.
Salinan paralel tidak diaktifkan
Periksa apakah salinan paralel telah diaktifkan atau tidak dalam aktivitas penyalinan. Jika tidak diaktifkan (default), maka pengaturan ini harus diaktifkan untuk mencapai paralelisme dan meningkatkan kinerja throughput. Dengan meningkatkan jumlah salinan paralel, beban pada runtime integrasi, penyimpanan data sumber dan sink akan ditingkatkan. Jadi pertimbangkan juga untuk meningkatkan sumber daya di bidang ini.
Selain itu, saat mengaktifkan fitur ini, kita perlu memastikan bahwa tabel kumpulan data sumber memiliki kolom partisi yang optimal untuk memilih membagi data secara merata dalam setiap thread paralel. Properti ini juga bergantung pada jenis sumbernya, karena beberapa sumber tidak mendukung properti ini. Untuk skenario ini, kita perlu mengimplementasikan kueri dinamis dan menggunakan ForEach
kegiatan yang bertujuan untuk meningkatkan paralelisme. Lihat dokumen ini untuk informasi lebih lanjut tentang salinan paralel.
Masalah penggunaan sumber daya sumber/sink
Setelah menskalakan sumber daya IR ADF dan menyesuaikan pengaturan paralel, kita perlu menskalakan lebih lanjut penyimpanan data sumber dan sink untuk menangani dan memproses kueri ADF. Pantau statistik penggunaan sumber daya di sisi sumber/penerima (CPU, memori, operasi I/O) dan tingkatkan sumber daya yang sesuai.
Periksa opsi kueri untuk penyimpanan data sumber, jika berlaku. Jika penyalinan menggunakan kueri sisi sumber untuk memfilter atau mengubah data sebelum menyalin, pastikan kueri tersebut efisien dan dioptimalkan. Monitor ADF menunjukkan butuh waktu lama untuk membaca data. Jadi ini mungkin masalah dengan penskalaan sumber daya di penyimpanan data sumber atau kueri. Ketika kita menjalankan query yang sama di luar ADF menggunakan client tools lain dan juga membutuhkan waktu yang lama, itu adalah masalah query dan pertanyaan optimasi query agar lebih efektif.
Bandwidth dan latensi jaringan
Periksa masalah bandwidth di Rute Ekspres saat mentransfer data menggunakan SHIR dari sumber data lokal. Pastikan bandwidth dikonfigurasi sesuai kebutuhan transfer data. Saat menggunakan SHIR, pastikan SHIR dekat dengan penyimpanan data sumber dan berada di jalur jaringan lokal yang sama untuk menghindari latensi. Jika SHIR berjalan di komputer virtual (VM) Azure, pastikan VM tersebut menggunakan bandwidth jaringan yang lebih tinggi dan dekat dengan wilayah tempat penyimpanan data sumber berada untuk menghindari latensi.
Kesimpulan
Mengoptimalkan sumber daya Runtime Integrasi, mengaktifkan paralelisme, dan menskalakan sumber daya sistem sumber/sink memungkinkan aktivitas penyalinan mencapai throughput yang lebih baik di Azure Data Factory. Mempertimbangkan faktor-faktor ini memastikan bahwa data ditransfer lebih cepat dan memenuhi kebutuhan bisnis dalam perjanjian tingkat layanan.
[ad_2]