全部产品
Search
文档中心

Hologres:Komputasi Serverless Adaptif

更新时间:Oct 16, 2025

Permintaan baca dan tulis yang tidak dapat diprediksi dapat tiba-tiba menghabiskan sumber daya instans khusus, memengaruhi operasi lainnya. Untuk mengatasi hal ini, Hologres V3.1 memperkenalkan Komputasi Serverless Adaptif. Fitur ini secara otomatis mengidentifikasi kueri besar dan secara dinamis mengalokasikan sumber daya serverless untuk mengeksekusinya, meningkatkan stabilitas dan pemanfaatan sumber daya.

Cara kerjanya

Sumber daya serverless yang dikonsumsi oleh kueri SQL ditentukan oleh nilai minimum dari tiga faktor: kuota sumber daya serverless instans, sumber daya serverless maksimum yang diizinkan per kueri, dan sumber daya serverless yang dibutuhkan oleh kueri. Hologres memperkirakan sumber daya yang dibutuhkan berdasarkan kompleksitas SQL dan ukuran data.

Komputasi Serverless Adaptif memungkinkan pengguna mendefinisikan ambang batas penggunaan. Ketika sumber daya serverless yang dibutuhkan oleh kueri melebihi ambang batas tersebut, kueri tersebut dianggap sebagai "tugas besar." Hologres kemudian secara otomatis merutekan tugas-tugas ini ke sumber daya serverless.

Menggunakan fitur ini

Anda dapat mendefinisikan dua jenis ambang batas sumber daya: absolut dan persentase. Hologres secara otomatis merutekan kueri ke Komputasi Serverless jika sumber daya serverless yang dibutuhkan untuk kueri tersebut melebihi kedua ambang batas.

  • Aktifkan Komputasi Serverless Adaptif

    Atur hg_enable_adaptive_serverless_computing dan hg_adaptive_serverless_computing_enable_big_query_isolation ke on.

    -- Aktifkan pada tingkat sesi
    SET hg_enable_adaptive_serverless_computing = on;
    SET hg_adaptive_serverless_computing_enable_big_query_isolation = on;
    
    -- Aktifkan pada tingkat pengguna
    ALTER USER "<role_name>" IN DATABASE <db_name> SET hg_enable_adaptive_serverless_computing = on;
    ALTER USER "<role_name>" IN DATABASE <db_name> SET hg_adaptive_serverless_computing_enable_big_query_isolation = on;
    
    -- Aktifkan pada tingkat database
    ALTER DATABASE <db_name> SET hg_enable_adaptive_serverless_computing = on;
    ALTER DATABASE <db_name> SET hg_adaptive_serverless_computing_enable_big_query_isolation = on;
  • Ubah ambang batas. Kueri secara otomatis menggunakan sumber daya serverless ketika kondisi berikut terpenuhi: Sumber Daya Serverless yang Dibutuhkan > max(ambang rasio, ambang persentase).

    • hg_adaptive_serverless_computing_min_resource_ratio_threshold: Koefisien untuk ambang persentase. Default: 0,3.

      • Untuk instans gudang virtual: Ambang Persentase = Koefisien * Sumber Daya yang Dipesan Gudang Virtual.

      • Untuk instans serbaguna: Ambang Persentase = Koefisien * Sumber Daya Instans yang Dipesan.

    • hg_adaptive_serverless_computing_min_cores_threshold: Ambang absolut. Default: 256.

    -- Ubah pada tingkat sesi
    SET hg_adaptive_serverless_computing_min_resource_ratio_threshold = 0,3;
    SET hg_adaptive_serverless_computing_min_cores_threshold = 256;
    
    -- Ubah pada tingkat pengguna
    ALTER USER "<role_name>" IN DATABASE <db_name> SET hg_adaptive_serverless_computing_min_resource_ratio_threshold = 0,3;
    ALTER USER "<role_name>" IN DATABASE <db_name> SET hg_adaptive_serverless_computing_min_cores_threshold = 256;
    
    -- Ubah pada tingkat database
    ALTER DATABASE <db_name> SET hg_adaptive_serverless_computing_min_resource_ratio_threshold = 0,3;
    ALTER DATABASE <db_name> SET hg_adaptive_serverless_computing_min_cores_threshold = 256;

Verifikasi apakah fitur ini dipicu

Komputasi Serverless Adaptif dipicu berdasarkan estimasi sumber daya kueri. Gunakan fungsi estimasi sumber daya bawaan untuk memverifikasi perilaku ini; fungsi ini mengembalikan estimasi sumber daya serverless yang dibutuhkan dan menunjukkan apakah Komputasi Serverless Adaptif akan diaktifkan berdasarkan konfigurasi Anda.

-- Gunakan sintaks ini jika pernyataan SQL tidak memerlukan pelolosan tanda kutip tunggal.
SELECT * FROM hologres.hg_estimate_adaptive_serverless_computing('select * from tbl;');

-- Gunakan sintaks ini jika pernyataan SQL memerlukan pelolosan tanda kutip tunggal.
SELECT * FROM hologres.hg_estimate_adaptive_serverless_computing($$insert into test_tbl_dst_1 select * from test_tbl_src;$$);

Fungsi ini mengembalikan nilai-nilai berikut:

Nama nilai pengembalian

Deskripsi

estimated_cores

Estimasi sumber daya serverless yang dibutuhkan untuk kueri.

status

Menunjukkan apakah Komputasi Serverless Adaptif akan merutekan kueri ke sumber daya Serverless berdasarkan konfigurasi saat ini.

  • eligible: Kueri mencapai kedua ambang batas dan secara otomatis dieksekusi pada sumber daya serverless.

  • ineligible: Kueri tidak memenuhi setidaknya satu ambang batas dan akan menggunakan sumber daya instans (khusus) yang dipesan.

  • invalid: Komputasi Serverless tidak tersedia untuk kueri. Kueri akan menggunakan sumber daya instans (khusus) yang dipesan.

adaptive_serverless_computing_min_ratio_threshold

Koefisien untuk ambang persentase.

adaptive_serverless_computing_min_cores_threshold

Ambang absolut.