全部产品
Search
文档中心

Tablestore:Buat tabel deret waktu

更新时间:Jul 02, 2025

Anda dapat memanggil operasi CreateTimeseriesTable untuk membuat tabel deret waktu. Saat membuat tabel deret waktu, Anda harus menentukan informasi konfigurasi terkait tabel dan metadata deret waktu. Selain itu, Anda dapat menentukan pengenal deret waktu kustom serta bidang data kustom sebagai kolom kunci utama, membuat penyimpanan analitik, dan menambahkan indeks Lastpoint sesuai kebutuhan bisnis.

Catatan penggunaan

  • Tablestore SDK untuk Python versi 6.1.0 dan lebih baru mendukung model TimeSeries. Pastikan Anda menggunakan versi yang sesuai dari Tablestore SDK untuk Python.

    Catatan

    Untuk informasi lebih lanjut, lihat Riwayat Versi Tablestore SDK untuk Python.

  • Nama tabel deret waktu harus unik dalam suatu instance dan tidak boleh sama dengan nama tabel yang sudah ada.

  • Anda hanya dapat membuat satu penyimpanan analitik untuk setiap tabel deret waktu. Total jumlah penyimpanan analitik dan indeks Lastpoint tidak boleh melebihi 10.

    Catatan

    Fitur penyimpanan analitik dan indeks Lastpoint didukung di wilayah berikut: Tiongkok (Hangzhou), Tiongkok (Shanghai), Tiongkok (Beijing), dan Tiongkok (Zhangjiakou).

  • Anda dapat menentukan hingga empat bidang data sebagai kolom kunci utama tabel deret waktu.

  • Saat menentukan pengenal deret waktu kustom untuk tabel deret waktu, Anda dapat menambahkan maksimal enam bidang.

Prasyarat

Klien Tablestore telah diinisialisasi. Untuk informasi lebih lanjut, lihat Inisialisasi Klien Tablestore.

Parameter

Tabel berikut menjelaskan parameter yang termasuk dalam request.

Parameter

Deskripsi

table_meta (wajib)

Informasi skema tabel deret waktu, yang terdiri dari item-item berikut:

  • timeseries_table_name (wajib): nama tabel deret waktu.

  • timeseries_table_options (opsional): informasi konfigurasi tabel deret waktu, yang mencakup item berikut:

    • time_to_live (wajib): periode retensi data dalam tabel deret waktu. Satuan: detik.

      Periode retensi minimum data dalam tabel deret waktu adalah 86.400 detik (satu hari). Anda juga dapat mengatur time_to_live ke -1, yang menentukan bahwa data tidak pernah kedaluwarsa.

  • timeseries_meta_options (opsional): informasi konfigurasi metadata deret waktu, yang terdiri dari item-item berikut:

    • meta_time_to_live (opsional): periode retensi metadata deret waktu. Satuan: detik.

      Nilai default: -1, yang menentukan bahwa metadata deret waktu tidak pernah kedaluwarsa. Periode retensi minimum metadata deret waktu adalah 604.800 detik (tujuh hari).

      Penting

      Nilai meta_time_to_live harus lebih besar dari atau sama dengan nilai time_to_live.

    • allow_update_attributes (opsional): menentukan apakah diperbolehkan memperbarui atribut metadata deret waktu. Nilai defaultnya adalah True, yang menentukan bahwa pembaruan atribut metadata deret waktu diperbolehkan.

      Penting

      Jika meta_time_to_live diatur ke nilai selain -1, Anda harus mengatur allow_update_attributes ke False, yang menentukan bahwa pembaruan atribut metadata deret waktu tidak diperbolehkan.

  • timeseries_keys (opsional): pengenal deret waktu kustom. Secara default, pengenal deret waktu terdiri dari nama metrik, sumber data, dan tag.

    Catatan

    Anda hanya perlu menentukan item ini saat ingin menentukan pengenal deret waktu kustom.

  • field_primary_keys (opsional): bidang data yang ditentukan sebagai kolom kunci utama, yang memungkinkan Anda menyimpan beberapa baris data dengan pengenal deret waktu dan timestamp yang sama dalam tabel deret waktu.

    Catatan

    Anda hanya perlu menentukan item ini saat ingin menyimpan beberapa baris data dengan pengenal deret waktu dan timestamp yang sama pada saat bersamaan.

analytical_stores (opsional)

Informasi konfigurasi penyimpanan analitik untuk deret waktu, yang terdiri dari item-item berikut:

  • analytical_store_name (wajib): nama penyimpanan analitik.

  • time_to_live (opsional): periode retensi data dalam penyimpanan analitik. Satuan: detik.

    Nilai default: -1, yang menentukan bahwa data dalam penyimpanan analitik tidak pernah kedaluwarsa. Periode retensi minimum data dalam penyimpanan analitik adalah 2.592.000 detik (30 hari).

  • sync_option (opsional): mode sinkronisasi penyimpanan analitik. Nilai valid:

    • SYNC_TYPE_FULL (default): sinkronisasi penuh.

    • SYNC_TYPE_INCR: sinkronisasi tambahan.

lastpoint_index_metas (opsional)

Informasi konfigurasi indeks Lastpoint, yang terdiri dari item berikut:

  • index_table_name (wajib): nama indeks Lastpoint.

Contoh

Buat tabel deret waktu

Kode contoh berikut menunjukkan cara membuat tabel deret waktu:

try:
    # Setel periode retensi data dalam tabel deret waktu menjadi 172.800 detik (dua hari).
    tableOption = TimeseriesTableOptions(172800)
    # Setel periode retensi metadata deret waktu menjadi -1 dan tentukan bahwa pembaruan atribut metadata deret waktu diperbolehkan.
    metaOption = TimeseriesMetaOptions(-1, True)
    tableMeta = TimeseriesTableMeta("", tableOption, metaOption)

    # Panggil operasi untuk membuat tabel deret waktu.
    request = CreateTimeseriesTableRequest(tableMeta)
    otsClient.create_timeseries_table(request)
    print("berhasil membuat tabel deret waktu.")
except Exception as e:
    # Jika pengecualian dilemparkan, tabel deret waktu gagal dibuat. Tangani pengecualian.
    print("gagal membuat tabel deret waktu. %s" % e)

Buat tabel deret waktu dengan penyimpanan analitik

Kode contoh berikut menunjukkan cara membuat tabel deret waktu dengan penyimpanan analitik:

try:
    # Setel periode retensi data dalam tabel deret waktu menjadi 172.800 detik (dua hari).
    tableOption = TimeseriesTableOptions(172800)
    # Setel periode retensi metadata deret waktu menjadi -1 dan tentukan bahwa pembaruan atribut metadata deret waktu diperbolehkan.
    metaOption = TimeseriesMetaOptions(-1, True)
    tableMeta = TimeseriesTableMeta("", tableOption, metaOption)

    # Konfigurasikan penyimpanan analitik.
    analyticalStore = TimeseriesAnalyticalStore("default_analytical_store", -1, SyncType.SYNC_TYPE_FULL)

    # Panggil operasi untuk membuat tabel deret waktu.
    request = CreateTimeseriesTableRequest(tableMeta, [analyticalStore])
    otsClient.create_timeseries_table(request)
    print("berhasil membuat tabel deret waktu.")
except Exception as e:
    # Jika pengecualian dilemparkan, tabel deret waktu gagal dibuat. Tangani pengecualian.
    print("gagal membuat tabel deret waktu. %s" % e)

Buat tabel deret waktu dengan pengenal deret waktu kustom dan bidang data kustom yang ditentukan sebagai kolom kunci utama

Kode contoh berikut menunjukkan cara membuat tabel deret waktu dengan pengenal deret waktu kustom keyA, keyB, dan keyC, serta dua bidang data gid (tipe String) dan uid (tipe Integer) sebagai kolom kunci utama:

try:
    # Setel periode retensi data dalam tabel deret waktu menjadi 86.400 detik (satu hari).
    tableOption = TimeseriesTableOptions(86400)
    # Setel periode retensi metadata deret waktu menjadi -1 dan tentukan bahwa pembaruan atribut metadata deret waktu diperbolehkan.
    metaOption = TimeseriesMetaOptions(-1, True)
    # Tentukan pengenal deret waktu kustom
    timeseriesKeys = ["keyA", "keyB", "keyC"]
    # Tentukan bidang data kustom sebagai kolom kunci utama tabel deret waktu.
    fieldPrimaryKeys = [('gid', 'STRING'), ('uid', 'INTEGER')]
    tableMeta = TimeseriesTableMeta("", tableOption, metaOption, timeseriesKeys,
                                    fieldPrimaryKeys)

    # Panggil operasi untuk membuat tabel deret waktu.
    request = CreateTimeseriesTableRequest(tableMeta)
    otsClient.create_timeseries_table(request)
    print("berhasil membuat tabel deret waktu.")
except Exception as e:
    # Jika pengecualian dilemparkan, tabel deret waktu gagal dibuat. Tangani pengecualian.
    print("gagal membuat tabel deret waktu. %s" % e)

Buat tabel deret waktu dengan indeks Lastpoint

Kode contoh berikut menunjukkan cara membuat tabel deret waktu dengan indeks Lastpoint:

try:
    # Setel periode retensi data dalam tabel deret waktu menjadi 86.400 detik (satu hari).
    tableOption = TimeseriesTableOptions(86400)
    # Setel periode retensi metadata deret waktu menjadi 604.800 detik (tujuh hari) dan tentukan bahwa pembaruan atribut metadata deret waktu tidak diperbolehkan.
    metaOption = TimeseriesMetaOptions(604800, False)
    tableMeta = TimeseriesTableMeta("", tableOption, metaOption)

    # Konfigurasikan indeks Lastpoint.
    lastPointIndex = LastpointIndexMeta("")

    # Panggil operasi untuk membuat tabel deret waktu.
    request = CreateTimeseriesTableRequest(tableMeta, None, [lastPointIndex])
    otsClient.create_timeseries_table(request)
    print("berhasil membuat tabel deret waktu.")
except Exception as e:
    # Jika pengecualian dilemparkan, tabel deret waktu gagal dibuat. Tangani pengecualian.
    print("gagal membuat tabel deret waktu. %s" % e)