Hologres menyediakan manajemen sumber daya detail halus. Anda dapat mengalokasikan sumber daya komputasi berbeda—dikenal sebagai Compute Units (CUs), yang mencakup CPU dan memori—ke akun pengguna berbeda. Hal ini membatasi jumlah maksimum sumber daya yang dapat dikonsumsi oleh pengguna dan mengisolasi beban kerja ganda dalam satu instans, sehingga memastikan pekerjaan dari pengguna dan aplikasi berbeda tidak saling mengganggu. Topik ini menjelaskan cara menggunakan resource groups untuk mengelola sumber daya komputasi dan mencapai isolasi sumber daya dalam sebuah instans Hologres.
Informasi latar belakang
Versi Hologres V1.0 dan sebelumnya mendukung isolasi sumber daya antar-instans tetapi tidak mendukung isolasi sumber daya tingkat pengguna dalam satu instans. Di lingkungan produksi, Anda sering perlu mengisolasi sumber daya berdasarkan pengguna untuk membatasi jumlah maksimum sumber daya yang dapat dikonsumsi setiap pengguna dan memastikan pekerjaan tidak saling mengganggu. Untuk memenuhi kebutuhan ini akan isolasi sumber daya detail halus, Hologres kini mendukung resource groups guna membantu Anda mengelola sumber daya komputasi dalam satu instans. Karena keterbatasan teknis saat ini, tidak semua jenis beban kerja komputasi dapat diisolasi menggunakan resource groups. Gunakan fitur ini dengan hati-hati di lingkungan produksi. Untuk isolasi sumber daya lengkap, gunakan instans elastic computing group.
Batasan
-
Hanya Hologres V1.1 dan versi yang lebih baru yang mendukung penggunaan resource groups untuk mengelola sumber daya komputasi dalam instans Hologres. Jika instans Anda lebih lama dari V1.1, lihat Error umum saat persiapan upgrade gagal atau bergabunglah dengan grup DingTalk Hologres untuk memberikan masukan. Untuk informasi selengkapnya, lihat Bagaimana cara mendapatkan dukungan online lebih lanjut?.
-
Hanya pengguna dengan izin Superuser yang dapat menggunakan resource groups untuk mengelola sumber daya komputasi dalam instans Hologres. Jika tidak, sistem akan melaporkan error izin.
-
Sumber daya komputasi dialokasikan pada tingkat instans. Jika seorang pengguna memiliki beberapa database, semua database tersebut berbagi sumber daya komputasi dari instans yang sama dan rencana alokasi sumber daya yang sama.
Konfigurasi resource groups menggunakan antarmuka HoloWeb
Anda dapat mengonfigurasi resource groups menggunakan antarmuka HoloWeb sebagai berikut.
-
Create a resource group
-
Buka halaman developer HoloWeb. Untuk informasi selengkapnya, lihat Connect to HoloWeb and run a query.
-
Pada bilah menu atas halaman developer HoloWeb, klik Security Center.
-
Pada halaman Security Center, klik Resource Group Management di panel navigasi sebelah kiri.
-
Pada halaman Resource Group Management, pilih nama instans target dan klik Add Resource Group.

-
Pada kotak dialog Add Resource Group, masukkan Resource Group Name, atur Resource Group Quota, lalu klik OK untuk membuat resource group.
CatatanJumlah kuota semua resource groups dalam satu instans Hologres tidak boleh melebihi 1. Jika dilanggar, sistem akan melaporkan error.
-
-
Delete a resource group
-
Buka halaman developer HoloWeb. Untuk informasi selengkapnya, lihat Connect to HoloWeb and run a query.
-
Pada bilah menu atas halaman developer HoloWeb, klik Security Center.
-
Pada halaman Security Center, klik Resource Group Management di panel navigasi sebelah kiri.
-
Pada halaman Resource Group Management, temukan resource group yang ingin dihapus dan klik Delete di kolom Actions.
CatatanResource group tidak dapat dihapus jika masih terdapat pengguna yang menyambungkan ke resource group tersebut.
-
-
Adjust a resource group quota
-
Buka halaman developer HoloWeb. Untuk informasi selengkapnya, lihat Connect to HoloWeb and run a query.
-
Pada bilah menu atas halaman developer HoloWeb, klik Security Center.
-
Pada halaman Security Center, klik Resource Group Management di panel navigasi sebelah kiri.
-
Pada halaman Resource Group Management, temukan resource group target dan klik Adjust Quota di kolom Resource Group Quota.
-
Pada kotak dialog Adjust Quota, ubah kuota resource group dan klik OK.

-
-
Attach a user
Setelah membuat resource group, Anda dapat menggunakan antarmuka HoloWeb untuk menyambungkan pengguna ke resource group tersebut.
-
Buka halaman developer HoloWeb. Untuk informasi selengkapnya, lihat Connect to HoloWeb and run a query.
-
Pada bilah menu atas halaman developer HoloWeb, klik Security Center.
-
Pada halaman Security Center, klik Resource Group Management di panel navigasi sebelah kiri.
-
Pada halaman Resource Group Management, temukan resource group target dan klik Associate User di kolom Actions.
-
Pada halaman Attach Resource Group, klik Add User for Association.
-
Pada kotak dialog Associate User, pilih pengguna dan klik OK.
Catatan-
Jika Anda tidak menemukan akun pengguna dalam daftar drop-down, artinya akun tersebut belum ditambahkan ke instans saat ini. Buka halaman manajemen pengguna untuk menambahkan pengguna tersebut.
-
Seorang pengguna hanya dapat disambungkan ke satu resource group. Jika Anda menyambungkan pengguna ke resource group baru, penyambungan baru tersebut akan menimpa penyambungan sebelumnya.
-
-
-
Detach a user
-
Buka halaman developer HoloWeb. Untuk informasi selengkapnya, lihat Connect to HoloWeb and run a query.
-
Pada bilah menu atas halaman developer HoloWeb, klik Security Center.
-
Pada halaman Security Center, klik Resource Group Management di panel navigasi sebelah kiri.
-
Pada halaman Resource Group Management, temukan resource group target dan klik Associate User di kolom Actions.
-
Pada halaman Attach Resource Group, temukan pengguna yang ingin dilepas dan klik Disassociate User di kolom Actions.
-
Pada kotak dialog Disassociate User, klik OK.
-
Konfigurasi resource groups menggunakan SQL
-
Lihat konfigurasi resource group
Pernyataan SQL berikut mengkueri semua resource groups, kuota yang dikonfigurasi, serta pengguna yang disambungkan ke masing-masing kelompok.
SELECT * FROM pg_holo_resource_groups;Contoh berikut menunjukkan output-nya.
res_group_name | property_key | property_value ----------------+--------------+------------------------------------------ resource_1 | worker_limit | 0.3 default | worker_limit | 0.7 resource_1 | bind_users | [ "13xxxxxxxxx13", "p4_29xxxxxxxxxx19" ] -
Buat resource group
Catatan-
Secara default, sistem membuat resource group bernama `default`. Semua sumber daya komputasi dialokasikan ke kelompok ini, dan semua pengguna yang tidak secara eksplisit disambungkan ke resource group lain akan otomatis termasuk dalam kelompok ini.
-
Setelah Anda membuat resource groups lain, sumber daya untuk resource group `default` adalah sisa alokasi setelah dibagi ke semua resource groups lainnya.
-
Alokasikan minimal 0,3 dari total sumber daya ke resource group `default`.
Pernyataan SQL berikut membuat resource group.
CALL hg_create_resource_group ('resource_group_name', quota);Parameter
Description
resource_group_name
Nama resource group. Anda dapat menggunakan huruf Inggris, angka, dan garis bawah. Panjang maksimum adalah 50 karakter.
quota
Persentase sumber daya yang dialokasikan ke resource group. Nilainya harus antara 0,1 hingga 0,9 (inklusif). Hanya satu tempat desimal yang didukung.
-
-
Ubah kuota resource group
CatatanJumlah kuota semua resource groups dalam satu instans Hologres tidak boleh melebihi 1. Jika dilanggar, sistem akan melaporkan error.
Pernyataan SQL berikut mengubah kuota resource group.
CALL hg_alter_resource_group ('resource_group_name', quota);Parameter
Description
resource_group_name
Nama resource group. Resource group tersebut harus sudah ada. Jika tidak, sistem akan melaporkan error.
quota
Persentase sumber daya yang dialokasikan ke resource group. Nilainya harus antara 0,1 hingga 0,9 (inklusif). Hanya satu tempat desimal yang didukung.
-
Hapus resource group
CatatanResource group tidak dapat dihapus jika masih terdapat pengguna yang menyambungkan ke resource group tersebut.
Pernyataan SQL berikut menghapus resource group.
CALL hg_drop_resource_group ('resource_group_name');Parameter
Description
resource_group_name
Nama resource group. Resource group tersebut harus sudah ada. Jika tidak, sistem akan melaporkan error.
-
Sambungkan pengguna ke resource group
Catatan-
Seorang pengguna hanya dapat disambungkan ke satu resource group. Jika Anda menyambungkan pengguna ke resource group baru, penyambungan baru tersebut akan menimpa penyambungan sebelumnya.
-
Anda dapat menjalankan pernyataan SQL berikut untuk melihat pengguna saat ini.
SELECT current_user;
Setelah membuat resource group, Anda dapat menyambungkan pengguna ke resource group tersebut untuk membatasi sumber daya komputasi yang dapat dikonsumsi pengguna tersebut. Pernyataan SQL berikut menyambungkan pengguna ke resource group.
-
Sintaks contoh
CALL hg_bind_resource_group('resource_group_name', 'user_name'); -
Parameter
Parameter
Description
resource_group_name
Nama resource group. Resource group tersebut harus sudah ada. Jika tidak, sistem akan melaporkan error.
user_name
Nama pengguna. Pengguna tersebut harus ada dan memiliki izin untuk mengakses instans tempat resource group tersebut berada. Jika tidak, sistem akan melaporkan error.
-
Contoh
CALL hg_bind_resource_group ('resource_1', 'p4_29xxxxxxxxxxx'); -- Catatan: Akun Alibaba Cloud harus diapit tanda kutip ganda. CALL hg_bind_resource_group ('resource_1', '"ALIYUN$xxxx@aliyun.com"'); CALL hg_bind_resource_group ('resource_1', '"RAM$xxx@xxx:xxxx"'); CALL hg_bind_resource_group ('resource_1', '"13xxxxxxxxxxx13"');
-
-
Lepaskan pengguna dari resource group
CatatanSetelah pengguna dilepas dari resource group, pengguna tersebut akan dipindahkan ke resource group `default`.
Pernyataan SQL berikut melepaskan pengguna dari resource group.
-
Sintaks
CALL hg_unbind_resource_group('resource_group_name', 'user_name'); -
Parameter
Parameter
Description
resource_group_name
Nama resource group. Resource group tersebut harus sudah ada. Jika tidak, sistem akan melaporkan error.
user_name
Nama pengguna. Pengguna tersebut harus ada dan memiliki izin untuk mengakses instans tempat resource group tersebut berada. Jika tidak, sistem akan melaporkan error.
-
Contoh
CALL hg_unbind_resource_group ('resource_1', 'p4_29xxxxxxxxxxxxx9'); -- Catatan: Akun Alibaba Cloud harus diapit tanda kutip ganda. CALL hg_unbind_resource_group ('resource_1', '"RAM$xxxx@xxx:xxx"');
-
FAQ
T: Mengapa metrik CPU dan memori melebihi 50% padahal kuota resource group diatur ke 0,5?
J: Kuota resource group membatasi CPU dan memori untuk sebagian besar operasi mesin kueri. Namun, sebagian kecil penggunaan CPU dan memori tidak dibatasi oleh resource group. Ini mencakup, namun tidak terbatas pada, parsing SQL, optimasi, pemrosesan metadata, penjadwalan, eksekusi Parallel Query Engine (PQE), dan compaction. Selain itu, untuk penulisan real-time, penggunaan CPU dibatasi, tetapi penggunaan memori tidak. Oleh karena itu, total metrik CPU dan memori untuk suatu resource group dapat melebihi kuota yang dikonfigurasi.