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.

Diagram mesin SQL.

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.

Diagram yang menunjukkan penyediaan sumber daya dengan cepat.

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.

Diagram yang menunjukkan isolasi aktivitas penyerapan.

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.

Diagram yang menunjukkan isolasi dua ruang kerja, misalnya, ruang kerja Keuangan dan Pemasaran.

Langkah berikutnya