AnalyticDB for PostgreSQL mendukung resource queue dan resource group untuk mengelola resource database. Kedua metode ini menyediakan isolasi resource bagi berbagai jenis query, memastikan penggunaan resource yang efisien serta independensi antar layanan. Topik ini menjelaskan cara menggunakan resource queue dan resource group untuk mengelola resource seperti CPU, memori, dan disk spilling pada database AnalyticDB for PostgreSQL.
Resource queue management
Resource queue diimplementasikan berdasarkan teknologi seperti lightweight lock dan digunakan untuk mengelola resource database AnalyticDB for PostgreSQL, seperti jumlah query konkuren, memori yang digunakan oleh query, dan prioritas CPU query. Untuk informasi lebih lanjut, lihat Use resource queues to manage workloads.
Resource group management
Resource group diimplementasikan berdasarkan teknologi seperti shared memory dan cgroups, serta digunakan untuk mengelola resource database AnalyticDB for PostgreSQL, seperti jumlah query konkuren, memori yang digunakan oleh query, utilisasi CPU query, dan ambang batas disk spill. Anda dapat mengelola resource group melalui Konsol. Untuk informasi lebih lanjut, lihat Use resource groups to manage workloads.
Query the resource management method
Anda dapat menjalankan Pernyataan SQL berikut untuk mengetahui metode manajemen resource yang digunakan oleh instans AnalyticDB for PostgreSQL saat ini:
SHOW gp_resource_manager;
Hasil:
-
group: Metode resource group digunakan.
-
queue: Metode resource queue digunakan.
Pilih metode manajemen resource
Pilih metode manajemen resource berdasarkan kebutuhan bisnis Anda. Tabel berikut membandingkan resource queue dan resource group.
|
Layanan |
Resource Queue |
Resource Group |
|
Item kontrol |
CPU, memori, dan pengoptimal |
CPU, memori, dan pengoptimal Persistensi disk, biaya minimum pengoptimal |
|
Metode penggunaan |
Berdasarkan kelompok pengguna |
Berdasarkan kelompok pengguna |
|
Manajemen konkurensi |
Berdasarkan lock. Rentan terhadap deadlock. |
Berdasarkan shared memory. Tidak menyebabkan deadlock. |
|
Manajemen CPU |
Berdasarkan prioritas. Manajemen tidak presisi. |
Berdasarkan cgroup. Manajemen presisi. |
|
Manajemen memori |
Dukungan |
Dukungan |
|
Tingkat kontrol |
Tingkat query |
Tingkat transaksi |
Daftar berikut menjelaskan kapan masing-masing metode manajemen resource harus dipilih:
-
Gunakan resource queue.
Pilih metode ini jika Anda tidak memerlukan manajemen resource detail halus, lebih memilih konfigurasi resource sederhana berdasarkan prioritas CPU, dan dapat menangani potensi deadlock dengan mengulang operasi.
-
Gunakan resource group.
-
Hilangkan deadlock dan hindari kebutuhan untuk mengulang operasi.
-
Kelola konfigurasi resource melalui Konsol, bukan menggunakan Pernyataan SQL.
-
Lakukan manajemen resource detail halus. Misalnya, Anda dapat membatasi penggunaan CPU maksimum atau mengalokasikan rasio time slice CPU untuk layanan berbeda guna mencapai isolasi resource yang efektif.
-