Manajemen beban kerja
Berlaku untuk: Titik Akhir dan Gudang SQL di Microsoft Fabric
Artikel ini menjelaskan arsitektur dan manajemen beban kerja di balik pergudangan data di Microsoft Fabric.
Penting
Microsoft Fabric sedang dalam pratinjau.
Pengolahan data
Gudang dan Titik Akhir SQL memiliki arsitektur pemrosesan yang mendasar yang sama. Saat data diambil atau diserap, data memanfaatkan mesin terdistribusi yang dibangun untuk data skala kecil dan besar dan fungsi komputasi.
Sistem pemrosesan tanpa server dalam kapasitas komputasi backend meningkatkan dan menurunkan skala secara otonom untuk memenuhi tuntutan beban kerja.
Saat kueri dikirimkan, frontend SQL (FE) melakukan pengoptimalan kueri untuk menentukan rencana terbaik berdasarkan ukuran dan kompleksitas data. Setelah rencana dibuat, paket diberikan ke mesin Pemrosesan Kueri Terdistribusi (DQP). DQP mengatur eksekusi kueri terdistribusi dengan membaginya menjadi kueri yang lebih kecil yang dijalankan pada simpul komputasi backend. Setiap kueri kecil disebut tugas dan mewakili unit eksekusi terdistribusi. Ini membaca file dari OneLake, menggabungkan hasil dari tugas, grup, atau data pesanan lain yang diambil dari tugas lain. Untuk pekerjaan penyerapan, ia juga menulis data ke tabel tujuan yang tepat.
Saat data diproses, hasil dikembalikan ke frontend SQL untuk disajikan kembali kepada pengguna atau aplikasi panggilan.
Elastisitas dan ketahanan
Kapasitas komputasi backend mendapat manfaat dari arsitektur provisi cepat. Meskipun tidak ada SLA pada penetapan sumber daya, biasanya simpul baru diperoleh dalam beberapa detik. Ketika permintaan sumber daya meningkat, beban kerja baru memanfaatkan kapasitas yang diskalakan. Penskalan adalah operasi online dan pemrosesan kueri tidak terganggu.
Sistem ini toleran terhadap kesalahan dan jika node menjadi tidak sehat, operasi yang dijalankan pada node didistribusikan ulang ke simpul sehat untuk penyelesaian.
Penjadwalan dan resourcing
Penjadwal pemrosesan kueri terdistribusi beroperasi pada tingkat tugas . Kueri diwakili ke penjadwal sebagai grafik acyclic (DAG) tugas yang diarahkan. Konsep ini sudah tidak asing bagi pengguna Spark. DAG memungkinkan paralelisme dan konkurensi karena tugas yang tidak bergantung satu sama lain dapat dijalankan secara bersamaan atau tidak berurutan.
Saat kueri tiba, tugas mereka dijadwalkan berdasarkan prinsip first-in-first-out (FIFO). Jika ada kapasitas diam, penjadwal dapat menggunakan pendekatan "paling cocok" untuk mengoptimalkan konkurensi.
Ketika penjadwal mengidentifikasi tekanan resourcing, penjadwal memanggil operasi skala. Penskalaan dikelola secara otonom dan topologi backend tumbuh seiring meningkatnya konkurensi. Karena dibutuhkan beberapa detik untuk memperoleh simpul, sistem tidak dioptimalkan untuk performa subdetik kueri yang konsisten yang memerlukan pemrosesan terdistribusi.
Ketika tekanan mereda, topologi backend menskalakan kembali ke bawah dan melepaskan sumber daya kembali ke wilayah tersebut.
Isolasi penyerapan
Berlaku untuk: Gudang di Microsoft Fabric
Di kumpulan komputasi backend Gudang di Microsoft Fabric, aktivitas pemuatan disediakan isolasi sumber daya dari beban kerja analitik. Ini meningkatkan performa dan keandalan, karena pekerjaan penyerapan dapat berjalan pada simpul khusus yang dioptimalkan untuk ETL dan tidak bersaing dengan kueri atau aplikasi lain untuk sumber daya.
Praktik terbaik
Ruang kerja Microsoft Fabric menyediakan batas isolasi alami dari sistem komputasi terdistribusi. Beban kerja dapat memanfaatkan batas ini untuk mengelola biaya dan performa.
Pintasan OneLake dapat digunakan untuk membuat replika tabel baca-saja di ruang kerja lain untuk mendistribusikan beban di beberapa mesin sql yang membuat batas isolasi.