Anda dapat memanggil operasi CreateTimeseriesTable untuk membuat tabel deret waktu. Saat membuat tabel deret waktu, Anda dapat menentukan masa hidup (TTL) data, informasi konfigurasi metadata deret waktu, pengenal deret waktu kustom, dan bidang data kustom sebagai kolom kunci utama tabel. Anda juga dapat membuat indeks Lastpoint dan penyimpanan analitik. Penyimpanan analitik digunakan untuk menganalisis data deret waktu secara cepat, sedangkan indeks Lastpoint digunakan untuk mengambil data titik terbaru di tabel deret waktu.
Prasyarat
Sebuah instance untuk model TimeSeries telah dibuat. Untuk informasi lebih lanjut, lihat Buat Instance untuk Model TimeSeries.
PentingUntuk menggunakan fitur penyimpanan analitik atau indeks Lastpoint, Anda harus membuat instance untuk model TimeSeries di wilayah yang mendukung fitur tersebut.
Klien telah diinisialisasi. Untuk informasi lebih lanjut, lihat Inisialisasi Klien Tablestore.
Catatan Penggunaan
Nama tabel deret waktu yang Anda buat tidak boleh sama dengan nama tabel data yang sudah ada.
CatatanAnda dapat memanggil operasi ListTimeseriesTable untuk menanyakan nama-nama tabel deret waktu dalam sebuah instance. Untuk informasi lebih lanjut, lihat Tanyakan Nama-Nama Tabel Deret Waktu.
Anda hanya dapat membuat satu penyimpanan analitik untuk tabel deret waktu.
Jumlah total indeks Lastpoint dan penyimpanan analitik yang Anda buat untuk tabel deret waktu tidak boleh melebihi 10.
Anda dapat menentukan hingga empat bidang data sebagai kolom kunci utama tabel deret waktu.
Anda dapat menentukan hingga enam bidang sebagai pengenal deret waktu kustom dari tabel deret waktu.
Parameter
Parameter | Deskripsi |
TimeseriesTableMeta | Konfigurasi tabel deret waktu.
|
enableAnalyticalStore | Menentukan apakah akan membuat penyimpanan analitik default. Nilai default: true, yang menentukan bahwa penyimpanan analitik default dibuat. Setelah Anda membuat penyimpanan analitik, Anda dapat menggunakan penyimpanan analitik untuk menyimpan data deret waktu dengan biaya rendah dan menanyakan serta menganalisis data deret waktu. Untuk informasi lebih lanjut, lihat Penyimpanan analitik untuk deret waktu. Jika Anda tidak ingin membuat penyimpanan analitik, atur parameter ini ke false. |
analyticalStores | Konfigurasi penyimpanan analitik, yang terdiri dari item-item berikut:
|
Contoh
Buat tabel deret waktu tanpa penyimpanan analitik
Kode sampel berikut memberikan contoh cara membuat tabel deret waktu:
/**
* CreateTimeseriesTableSample digunakan untuk membuat tabel deret waktu. timeseriesTableName digunakan untuk menentukan nama tabel deret waktu dan timeTolive digunakan untuk menentukan TTL tabel deret waktu.
*/
func CreateTimeseriesTableSample(client *tablestore.TimeseriesClient, timeseriesTableName string , timeToLive int64) {
fmt.Println("[Info]: Mulai membuat tabel deret waktu: " , timeseriesTableName)
// Konstruksi informasi konfigurasi tabel deret waktu.
timeseriesTableOptions := tablestore.NewTimeseriesTableOptions(timeToLive)
// Konstruksi informasi metadata tabel.
// Tentukan nama tabel deret waktu.
timeseriesTableMeta := tablestore.NewTimeseriesTableMeta(timeseriesTableName)
// Tentukan informasi konfigurasi tabel deret waktu.
timeseriesTableMeta.SetTimeseriesTableOptions(timeseriesTableOptions)
// Konstruksi permintaan untuk membuat tabel deret waktu.
createTimeseriesTableRequest := tablestore.NewCreateTimeseriesTableRequest()
createTimeseriesTableRequest.SetTimeseriesTableMeta(timeseriesTableMeta)
// Tentukan bahwa penyimpanan analitik default tidak dibuat.
createTimeseriesTableRequest.SetEnableAnalyticalStore(false)
// Panggil klien untuk membuat tabel deret waktu.
createTimeseriesTableResponse , err := client.CreateTimeseriesTable(createTimeseriesTableRequest)
if err != nil {
fmt.Println("[Error]: Gagal membuat tabel deret waktu dengan kesalahan: " , err)
return
}
fmt.Println("[Info]: CreateTimeseriesTable selesai! RequestId: " , createTimeseriesTableResponse.RequestId)
}Buat tabel deret waktu dan penyimpanan analitik
Saat membuat tabel deret waktu, Anda dapat membuat penyimpanan analitik default atau penyimpanan analitik kustom.
Buat tabel deret waktu dan penyimpanan analitik default
Kode sampel berikut memberikan contoh cara membuat tabel deret waktu dan penyimpanan analitik default secara bersamaan. Dalam contoh ini, nama penyimpanan analitik default adalah default_analytical_store dan data di penyimpanan analitik default tidak pernah kedaluwarsa.
/**
* CreateTimeseriesTableSample digunakan untuk membuat tabel deret waktu. timeseriesTableName digunakan untuk menentukan nama tabel deret waktu dan timeTolive digunakan untuk menentukan TTL tabel deret waktu.
*/
func CreateTimeseriesTableSample(client *tablestore.TimeseriesClient, timeseriesTableName string , timeToLive int64) {
fmt.Println("[Info]: Mulai membuat tabel deret waktu: " , timeseriesTableName)
// Konstruksi informasi konfigurasi tabel deret waktu.
timeseriesTableOptions := tablestore.NewTimeseriesTableOptions(timeToLive)
// Konstruksi informasi metadata tabel.
// Tentukan nama tabel deret waktu.
timeseriesTableMeta := tablestore.NewTimeseriesTableMeta(timeseriesTableName)
// Tentukan informasi konfigurasi tabel deret waktu.
timeseriesTableMeta.SetTimeseriesTableOptions(timeseriesTableOptions)
// Konstruksi permintaan untuk membuat tabel deret waktu.
createTimeseriesTableRequest := tablestore.NewCreateTimeseriesTableRequest()
createTimeseriesTableRequest.SetTimeseriesTableMeta(timeseriesTableMeta)
// Panggil klien untuk membuat tabel deret waktu.
createTimeseriesTableResponse , err := client.CreateTimeseriesTable(createTimeseriesTableRequest)
if err != nil {
fmt.Println("[Error]: Gagal membuat tabel deret waktu dengan kesalahan: " , err)
return
}
fmt.Println("[Info]: CreateTimeseriesTable selesai! RequestId: " , createTimeseriesTableResponse.RequestId)
}Buat tabel deret waktu dan penyimpanan analitik kustom
Kode sampel berikut memberikan contoh cara membuat tabel deret waktu dan penyimpanan analitik kustom secara bersamaan. Dalam contoh ini, nama penyimpanan analitik kustom adalah test_analytical_store dan data di penyimpanan analitik kustom tidak pernah kedaluwarsa.
/**
* CreateTimeseriesTableSample digunakan untuk membuat tabel deret waktu. timeseriesTableName digunakan untuk menentukan nama tabel deret waktu dan timeTolive digunakan untuk menentukan TTL tabel deret waktu. Dalam contoh ini, penyimpanan analitik bernama test_analytical_store dibuat.
*/
func CreateTimeseriesTableSample(client *tablestore.TimeseriesClient, timeseriesTableName string , timeToLive int64) {
fmt.Println("[Info]: Mulai membuat tabel deret waktu: " , timeseriesTableName)
// Konstruksi informasi konfigurasi tabel deret waktu.
timeseriesTableOptions := tablestore.NewTimeseriesTableOptions(timeToLive)
// Konstruksi informasi metadata tabel.
// Tentukan nama tabel deret waktu.
timeseriesTableMeta := tablestore.NewTimeseriesTableMeta(timeseriesTableName)
// Tentukan informasi konfigurasi tabel deret waktu.
timeseriesTableMeta.SetTimeseriesTableOptions(timeseriesTableOptions)
// Konstruksi permintaan untuk membuat tabel deret waktu.
createTimeseriesTableRequest := tablestore.NewCreateTimeseriesTableRequest()
createTimeseriesTableRequest.SetTimeseriesTableMeta(timeseriesTableMeta)
// Konstruksi informasi konfigurasi penyimpanan analitik.
createTimeseriesTableRequest.SetAnalyticalStores([]*tablestore.TimeseriesAnalyticalStore{
tablestore.NewTimeseriesAnalyticalStore("test_analytical_store"),
})
// Panggil klien untuk membuat tabel deret waktu.
createTimeseriesTableResponse , err := client.CreateTimeseriesTable(createTimeseriesTableRequest)
if err != nil {
fmt.Println("[Error]: Gagal membuat tabel deret waktu dengan kesalahan: " , err)
return
}
fmt.Println("[Info]: CreateTimeseriesTable selesai! RequestId: " , createTimeseriesTableResponse.RequestId)
}Tentukan pengenal deret waktu kustom dan bidang data kustom sebagai kolom kunci utama tabel deret waktu
Versi terbaru Tablestore SDK for Go memungkinkan Anda menentukan pengenal deret waktu kustom dan bidang data kustom sebagai kolom kunci utama tabel deret waktu. Pastikan Anda menggunakan versi yang benar dari Tablestore SDK for Go saat menentukan pengenal deret waktu kustom dan bidang data kustom sebagai kolom kunci utama tabel deret waktu.
Kode sampel berikut memberikan contoh cara membuat tabel deret waktu di mana pengenal deret waktu terdiri dari pk1 dan pk2 dan bidang data field1 (Integer), field2 (String), dan field3 (Binary) ditentukan sebagai kolom kunci utama:
/**
* CreateTimeseriesTableSample digunakan untuk membuat tabel deret waktu. timeseriesTableName digunakan untuk menentukan nama tabel deret waktu dan timeTolive digunakan untuk menentukan TTL tabel deret waktu.
*/
func CreateTimeseriesTableSample(client *tablestore.TimeseriesClient, timeseriesTableName string, timeToLive int64) {
fmt.Println("[Info]: Mulai membuat tabel deret waktu: ", timeseriesTableName)
timeseriesTableOptions := tablestore.NewTimeseriesTableOptions(timeToLive)
timeseriesTableMeta := tablestore.NewTimeseriesTableMeta(timeseriesTableName)
timeseriesTableMeta.SetTimeseriesTableOptions(timeseriesTableOptions)
// Tambahkan pengenal deret waktu kustom.
timeseriesTableMeta.AddTimeseriesKey("pk1")
timeseriesTableMeta.AddTimeseriesKey("pk2")
// Tambahkan bidang data yang ditentukan sebagai kolom kunci utama tabel deret waktu.
timeseriesTableMeta.AddFieldPrimaryKey("field1", tablestore.PrimaryKeyType_INTEGER)
timeseriesTableMeta.AddFieldPrimaryKey("field1", tablestore.PrimaryKeyType_STRING)
timeseriesTableMeta.AddFieldPrimaryKey("field3", tablestore.PrimaryKeyType_BINARY)
// Konstruksi permintaan untuk membuat tabel deret waktu.
createTimeseriesTableRequest := tablestore.NewCreateTimeseriesTableRequest()
createTimeseriesTableRequest.SetTimeseriesTableMeta(timeseriesTableMeta)
createTimeseriesTableResponse, err := client.CreateTimeseriesTable(createTimeseriesTableRequest)
if err != nil {
fmt.Println("[Error]: Gagal membuat tabel deret waktu dengan kesalahan: ", err)
return
}
fmt.Println("[Info]: CreateTimeseriesTable selesai! RequestId: ", createTimeseriesTableResponse.RequestId)
}Buat tabel deret waktu dan indeks Lastpoint
Versi terbaru Tablestore SDK for Go mendukung fitur indeks Lastpoint. Pastikan Anda menggunakan versi yang benar dari Tablestore SDK for Go saat menggunakan fitur indeks Lastpoint.
Kode sampel berikut memberikan contoh cara membuat tabel deret waktu dan indeks Lastpoint bernama index1 untuk tabel deret waktu secara bersamaan:
func createTimeseriesTable(client *tablestore.TimeseriesClient) {
timeseriesTableMeta := tablestore.NewTimeseriesTableMeta("test_timeseries_table")
timeseriesTableMeta.SetTimeseriesTableOptions(tablestore.NewTimeseriesTableOptions(-1))
request := tablestore.NewCreateTimeseriesTableRequest()
request.SetTimeseriesTableMeta(timeseriesTableMeta)
request.SetLastpointIndexNames([]string{"index1"})
_, err := client.CreateTimeseriesTable(request)
if err != nil {
log.Fatal(err)
}
}Referensi
Setelah membuat tabel deret waktu, Anda dapat menulis data deret waktu ke tabel dan membaca data deret waktu dari tabel. Untuk informasi lebih lanjut, lihat Tulis Data Deret Waktu dan Tanyakan Data Deret Waktu.
Jika Anda ingin menyimpan data deret waktu dengan biaya rendah dan menanyakan serta menganalisis data deret waktu secara cepat, Anda dapat membuat penyimpanan analitik untuk tabel deret waktu. Untuk informasi lebih lanjut, lihat Buat Penyimpanan Analitik.
Anda dapat memodifikasi TTL data di tabel deret waktu. Untuk informasi lebih lanjut, lihat Perbarui Tabel Deret Waktu.
Anda dapat menanyakan semua tabel deret waktu pada instance saat ini. Untuk informasi lebih lanjut, lihat Tanyakan Nama-Nama Tabel Deret Waktu.
Anda dapat menanyakan informasi tentang tabel deret waktu. Untuk informasi lebih lanjut, lihat Tanyakan Informasi Tabel Deret Waktu.
Anda dapat menghapus tabel deret waktu yang tidak lagi Anda butuhkan. Untuk informasi lebih lanjut, lihat Hapus Tabel Deret Waktu.
Untuk mencadangkan data deret waktu di Tablestore dengan cara yang hemat biaya atau mengekspor data deret waktu sebagai file ke perangkat lokal, Anda dapat menggunakan fitur Data Integration dari DataWorks untuk menyinkronkan data deret waktu dari Tablestore ke Object Storage Service (OSS) untuk penyimpanan atau unduhan. Untuk informasi lebih lanjut, lihat Sinkronkan Data dari Tablestore ke OSS.
Untuk memvisualisasikan data deret waktu, Anda dapat menghubungkan Tablestore ke Grafana. Untuk informasi lebih lanjut, lihat Hubungkan Tablestore ke Grafana.
Jika Anda menggunakan Realtime Compute for Apache Flink untuk menghitung dan menganalisis data, Anda dapat menggunakan tabel deret waktu Tablestore untuk menyimpan hasilnya. Untuk informasi lebih lanjut, lihat Tutorial (Model TimeSeries).