All Products
Search
Document Center

Tablestore:Ambil deret waktu

Last Updated:Sep 21, 2026

Jika Anda tidak yakin dengan informasi deret waktu yang akan dikueri—seperti nama metrik, sumber data, atau tag—atau jika perlu menampilkan daftar deret waktu berdasarkan kondisi tertentu, Anda dapat menggunakan operasi QueryTimeseriesMeta untuk mengambil deret waktu dengan menentukan kondisi seperti nama metrik, sumber data, tag, atribut, dan waktu pembaruan.

Prasyarat

Parameter

Parameter metaQueryCondition menentukan kondisi untuk pengambilan deret waktu. Kondisi tersebut mencakup compositeMetaQueryCondition, measurementMetaQueryCondition, dataSourceMetaQueryCondition, tagMetaQueryCondition, attributeMetaQueryCondition, dan updateTimeMetaQueryCondition. Tabel berikut menjelaskan parameter-parameter tersebut.

Parameter

Wajib

Deskripsi

compositeMetaQueryCondition

Tidak

Kondisi komposit, yang mencakup konten berikut:

  • operator: operator logika. Operator logika yang valid: AND, OR, dan NOT.

  • subConditions: subkondisi yang dapat digabungkan menggunakan operator untuk kueri kompleks.

measurementMetaQueryCondition

Ya. Anda harus menentukan salah satu parameter ini.

Kondisi nama metrik, yang mencakup konten berikut:

  • operator: operator relasional atau kondisi pencocokan awalan. Operator relasional yang valid: =, >, >=, <, dan <=.

  • value: nama metrik dari deret waktu yang ingin Anda kueri. Tipe: STRING.

dataSourceMetaQueryCondition

Kondisi sumber data, yang mencakup konten berikut:

  • operator: operator relasional atau kondisi pencocokan awalan. Operator relasional yang valid: =, >, >=, <, dan <=.

  • value: sumber data dari deret waktu yang ingin Anda kueri. Tipe: STRING.

tagMetaQueryCondition

Kondisi tag, yang mencakup konten berikut:

  • operator: operator relasional atau kondisi pencocokan awalan. Operator relasional yang valid: =, >, >=, <, dan <=.

  • value: nilai tag dari deret waktu yang ingin Anda kueri. Tipe: STRING.

attributeMetaQueryCondition

Kondisi atribut untuk metadata deret waktu. Kondisi atribut mencakup konten berikut:

  • operator: operator relasional atau kondisi pencocokan awalan. Operator relasional yang valid: =, >, >=, <, dan <=.

  • attributeName: nama atribut. Tipe: STRING.

  • value: nilai atribut. Tipe: STRING.

updateTimeMetaQueryCondition

Kondisi waktu pembaruan untuk metadata deret waktu. Kondisi waktu pembaruan mencakup konten berikut:

  • operator: operator relasional. Operator relasional yang valid: =, >, >=, <, dan <=.

  • timeInUs: timestamp saat metadata deret waktu diperbarui. Satuan: mikrodetik.

Contoh

Kode contoh berikut mengilustrasikan cara mengkueri nama metrik, sumber data, dan tag dari deret waktu berdasarkan kondisi yang ditentukan. Kondisi tersebut dapat berupa kondisi komposit.

func QueryTimeseriesMetaSample(client *tablestore.TimeseriesClient , timeseriesTableName string) {
    fmt.Println("[Info]: Begin to query timeseries table meta!")

    // Buat beberapa kondisi kueri.
    measurementMetaQueryCondition := tablestore.NewMeasurementQueryCondition(tablestore.OP_GREATER_EQUAL , "")
    datasourceMetaQueryCondition := tablestore.NewDataSourceMetaQueryCondition(tablestore.OP_GREATER_EQUAL , "")
    tagMetaQueryCondition := tablestore.NewTagMetaQueryCondition(tablestore.OP_GREATER_THAN , "City" , "")

    // Buat kondisi komposit.
    compsiteMetaQueryCondition := tablestore.NewCompositeMetaQueryCondition(tablestore.OP_AND)
    compsiteMetaQueryCondition.AddSubConditions(measurementMetaQueryCondition)
    compsiteMetaQueryCondition.AddSubConditions(datasourceMetaQueryCondition)
    compsiteMetaQueryCondition.AddSubConditions(tagMetaQueryCondition)

    // Buat permintaan kueri.
    queryTimeseriesMetaRequest := tablestore.NewQueryTimeseriesMetaRequest(timeseriesTableName)
    queryTimeseriesMetaRequest.SetCondition(compsiteMetaQueryCondition)
    queryTimeseriesMetaRequest.SetLimit(-1)

    // Panggil operasi terkait client deret waktu untuk menjalankan permintaan kueri.
    queryTimeseriesTableResponse , err := client.QueryTimeseriesMeta(queryTimeseriesMetaRequest)
    if err != nil {
        fmt.Println("[Error]: Query timeseries table meta failed with error: " , err)
        return
    }
    fmt.Println("[Info]: Query timeseries table meta succeed: ")
    for i := 0; i < len(queryTimeseriesTableResponse.GetTimeseriesMetas()); i++ {
        curTimeseriesMeta := queryTimeseriesTableResponse.GetTimeseriesMetas()[i]
        fmt.Println("[Info]: Meta_" , i , ": " , "Measurement: " , curTimeseriesMeta.GetTimeseriesKey().GetMeasurementName() ,
            "Source: " , curTimeseriesMeta.GetTimeseriesKey().GetDataSource() ,
            "Tags: " , curTimeseriesMeta.GetTimeseriesKey().GetTags(),
            "Attrs: " , curTimeseriesMeta.GetAttributeSlice())
    }
    fmt.Println("[Info]: QueryTimeseriesMetaSample finished !")
}

FAQ

Referensi

  • Untuk informasi selengkapnya tentang operasi API, lihat QueryTimeseriesMeta.

  • Jika atribut dalam metadata deret waktu tidak memenuhi kebutuhan bisnis Anda, Anda dapat memperbarui atau menghapus metadata deret waktu tersebut. Untuk informasi selengkapnya, lihat Perbarui metadata deret waktu dan Hapus metadata deret waktu.

  • Setelah Anda mengambil deret waktu yang diperlukan, Anda dapat mengkueri data deret waktu berdasarkan deret waktu tersebut. Untuk informasi selengkapnya, lihat Kueri data deret waktu.