All Products
Search
Document Center

Simple Log Service:Fungsi pengukuran load balancing

Last Updated:Jun 26, 2025

Sebelum Anda melakukan operasi untuk menerapkan load balancing pada sistem terdistribusi Anda, Anda harus mengukur tingkat load balancing sistem tersebut dengan cara yang akurat. Topik ini menjelaskan sintaksis dari fungsi pengukuran load balancing. Topik ini juga memberikan contoh tentang cara menggunakan fungsi tersebut.

Informasi latar belakang

Log sampel tempat fungsi pengukuran load balancing digunakan mencakup bidang terindeks berikut: ID kluster, ID server, waktu, beban CPU, beban memori, dan beban lebar pita jaringan. Untuk informasi lebih lanjut, lihat Buat Indeks.

image

Contoh Log:

{"cluster_id":"C001","cpu_load":"0.1","network_load":"0.6","ram_load":"0.7","server_id":"S001","time_period":"2024-01-01 00:00:00"}
{"cluster_id":"C001","cpu_load":"0.2","network_load":"0.5","ram_load":"0.8","server_id":"S002","time_period":"2024-01-01 00:01:00"}
{"cluster_id":"C001","cpu_load":"0.1","network_load":"0.6","ram_load":"0.7","server_id":"S001","time_period":"2024-01-01 00:02:00"}
{"cluster_id":"C001","cpu_load":"0.2","network_load":"0.5","ram_load":"0.8","server_id":"S002","time_period":"2024-01-01 00:03:00"}
{"cluster_id":"C001","cpu_load":"0.1","network_load":"0.6","ram_load":"0.7","server_id":"S001","time_period":"2024-01-01 00:04:00"}
{"cluster_id":"C001","cpu_load":"0.2","network_load":"0.5","ram_load":"0.8","server_id":"S002","time_period":"2024-01-01 00:05:00"}
{"cluster_id":"C001","cpu_load":"0.1","network_load":"0.6","ram_load":"0.7","server_id":"S001","time_period":"2024-01-01 00:06:00"}
{"cluster_id":"C001","cpu_load":"0.2","network_load":"0.5","ram_load":"0.8","server_id":"S002","time_period":"2024-01-01 00:07:00"}
{"cluster_id":"C001","cpu_load":"0.1","network_load":"0.6","ram_load":"0.7","server_id":"S001","time_period":"2024-01-01 00:08:00"}
{"cluster_id":"C001","cpu_load":"0.2","network_load":"0.5","ram_load":"0.8","server_id":"S002","time_period":"2024-01-01 00:09:00"}

Fungsi pengukuran load balancing

Fungsi

Sintaksis

Deskripsi

Tipe data nilai kembali

fungsi how_balanced

how_balanced(array(array(double)) load_matrix)

Mengukur tingkat load balancing sistem terdistribusi Anda. Anda harus menggunakan fungsi ini bersama dengan fungsi array_agg. Untuk informasi lebih lanjut, lihat fungsi array_agg. Nilai kembali menunjukkan tingkat load balancing. Nilai valid: (0,1]. Nilai yang lebih dekat dengan 1 menunjukkan tingkat load balancing yang tinggi. Nilai 1 menunjukkan load balancing penuh.

double

fungsi how_balanced

Fungsi how_balanced mengukur tingkat load balancing dalam sistem terdistribusi Anda. Fungsi ini harus digunakan bersama dengan fungsi array_agg. Untuk informasi lebih lanjut, lihat fungsi array_agg.

double how_balanced(array(array(double)) load_matrix)

Parameter

Deskripsi

load_matrix

Matriks beban. Setiap baris menentukan vektor deret waktu beban server.

Contoh

  • Pernyataan Kueri

    * | with server_time_series as
    (
        select cluster_id,
            server_id,
            array_agg(to_unixtime(date_parse(time_period, '%Y-%m-%d %H:%i:%s'))) as time_periods,
            array_agg(cpu_load + ram_load + network_load) as metric_values
        from log
        where time_period >= '2024-01-01 00:00:00'
          and time_period < '2024-01-02 00:00:00'
        group by cluster_id, server_id
    ),
    
    imputed_server_series as
    (
        select cluster_id,
            server_id,
            ts_fill_missing(
                time_periods,
                metric_values,
                to_unixtime(date_parse('2024-01-01 00:00:00', '%Y-%m-%d %H:%i:%s')),
                to_unixtime(date_parse('2024-01-02 00:00:00', '%Y-%m-%d %H:%i:%s')),
                '1 minute', 'value=0') as imputed_time_series
        from server_time_series
    )
    
    select cluster_id,
        how_balanced(array_agg(imputed_time_series[2])) as balance
    from imputed_server_series
    group by cluster_id
  • Hasil Kueri dan Analisis

    balance menunjukkan tingkat load balancing. Nilai valid: (0,1]. Semakin dekat nilai ke 1, semakin tinggi tingkat load balancing. Nilai 1 menunjukkan load balancing sempurna.

    cluster_id

    balance

    G1

    0.5