全部產品
Search
文件中心

Tablestore:建立時序表

更新時間:Aug 04, 2026

使用 Java SDK 建立時序表,並配置時序資料和時間軸中繼資料的生命週期、時間軸標識、資料欄位主鍵、分析儲存及 Lastpoint 索引。

前提條件

安裝Tablestore Java SDK並初始化時序模型用戶端。

功能說明

調用 createTimeseriesTable 方法建立用於儲存時序資料和時間軸中繼資料的時序表。時序表名稱不能與執行個體中已有的表名稱相同,包括資料表和時序表。

public CreateTimeseriesTableResponse createTimeseriesTable(CreateTimeseriesTableRequest request)

以下樣本建立 example_timeseries_table。未設定時,時序資料的生命週期預設為 -1,表示資料永不到期;預設不建立分析儲存。

TimeseriesClient timeseriesClient = client.asTimeseriesClient();

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);

timeseriesClient.createTimeseriesTable(request);

參數說明

CreateTimeseriesTableRequest 包含以下參數。

名稱

類型

說明

timeseriesTableMeta(必選)

TimeseriesTableMeta

時序表結構。

analyticalStores(可選)

List<TimeseriesAnalyticalStore>

自訂分析儲存列表,預設值為空白。建立時序表時最多建立一個分析儲存。

enableAnalyticalStore(可選)

boolean

是否建立預設分析儲存,預設值為 false。未配置 analyticalStores 時,設定為 true 將建立名稱為 default_analytical_store 的分析儲存;其資料生命週期預設為 -1,資料同步方式為 SYNC_TYPE_FULL。配置 analyticalStores 時,建立自訂分析儲存。

lastpointIndexes(可選)

List<CreateTimeseriesTableRequest.LastpointIndex>

隨時序表建立的 Lastpoint 索引列表,預設值為空白。建立時序表時最多同時建立一個 Lastpoint 索引;一個時序表的 Lastpoint 索引與分析儲存總數不能超過 10 個。

時序表結構

timeseriesTableMeta 的類型為 TimeseriesTableMeta,包含以下參數。

名稱

類型

說明

timeseriesTableName(必選)

String

時序表名稱,不能與執行個體中已有的表名稱相同,包括資料表和時序表。

timeseriesTableOptions(可選)

TimeseriesTableOptions

時序資料生命週期配置。不設定時使用預設配置。

timeseriesMetaOptions(可選)

TimeseriesMetaOptions

時間軸中繼資料配置,包括生命週期和屬性列更新設定。

timeseriesKeys(可選)

List<String>

自訂時間軸標識的欄位名稱列表,最多包含 6 個欄位。不設定時,時間軸標識由度量名稱、資料來源和標籤構成。關於該功能的更多資訊,請參見自訂時間軸標識和資料欄位主鍵

fieldPrimaryKeys(可選)

List<PrimaryKeySchema>

作為主鍵的資料欄位列表,最多包含 4 個欄位,用於儲存時間軸標識和時間點均相同的多行資料。關於該功能的更多資訊,請參見自訂時間軸標識和資料欄位主鍵

時序資料生命週期

timeseriesTableMeta.timeseriesTableOptions 的類型為 TimeseriesTableOptions,包含以下參數。

名稱

類型

說明

timeToLive(可選)

int

時序資料的生命週期,單位為秒,預設值為 -1。取值為 -1 或不小於 86400 的整數;-1 表示資料永不到期。資料超過生命週期後由系統自動清理,建立後可通過更新時序表配置修改。

時間軸中繼資料

timeseriesTableMeta.timeseriesMetaOptions 的類型為 TimeseriesMetaOptions,包含以下參數。

名稱

類型

說明

metaTimeToLive(可選)

int

時間軸中繼資料的生命週期,單位為秒。取值為 -1 或不小於 604800 的整數;-1 表示時間軸中繼資料永不到期。該值不能小於 timeToLivetimeToLive-1 時,該值也必須為 -1。設定有限生命週期後,必須將 allowUpdateAttributes 設定為 false

allowUpdateAttributes(可選)

boolean

是否允許更新時間軸中繼資料的屬性列。設定有限的 metaTimeToLive 時必須為 false

資料欄位主鍵

timeseriesTableMeta.fieldPrimaryKeys[] 中每個元素的類型為 PrimaryKeySchema,包含以下參數。

名稱

類型

說明

name(必選)

String

作為主鍵的資料欄位名稱。

type(必選)

PrimaryKeyType

資料欄位類型。取值為 INTEGERSTRING

分析儲存

analyticalStores[] 中每個元素的類型為 TimeseriesAnalyticalStore,包含以下參數。

名稱

類型

說明

analyticalStoreName(必選)

String

分析儲存名稱。

timeToLive(可選)

int

分析儲存的資料生命週期,單位為秒,預設值為 -1。取值為 -1 或不小於 2592000 的 int32 整數;-1 表示資料永不到期。

syncOption(可選)

AnalyticalStoreSyncType

資料同步方式,預設值為 SYNC_TYPE_FULL。建立時序表時僅支援 SYNC_TYPE_FULL,表示全量同步。

Lastpoint 索引

lastpointIndexes[] 中每個元素的類型為 CreateTimeseriesTableRequest.LastpointIndex,包含以下參數。

名稱

類型

說明

indexName(必選)

String

Lastpoint 索引名稱。關於該功能的更多資訊,請參見Lastpoint 索引

情境樣本

配置時間軸中繼資料生命週期

以下樣本將時序資料的生命週期設定為 7 天,將時間軸中繼資料的生命週期設定為 14 天,並禁止更新時間軸中繼資料的屬性列。

String tableName = "example_timeseries_table";
TimeseriesTableOptions tableOptions = new TimeseriesTableOptions(604800);
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName, tableOptions);

TimeseriesMetaOptions metaOptions = new TimeseriesMetaOptions();
metaOptions.setMetaTimeToLive(1209600);
metaOptions.setAllowUpdateAttributes(false);
tableMeta.setTimeseriesMetaOptions(metaOptions);

CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);
timeseriesClient.createTimeseriesTable(request);

自訂時間軸標識和資料欄位主鍵

重要

自訂時間軸標識和資料欄位主鍵需要使用 5.17.1 及以上版本,建議使用最新版本的 SDK。使用前,請確認執行個體所在地區支援該功能。

以下樣本使用 pk1pk2 構成時間軸標識,並將 field1field2 設定為資料欄位主鍵。

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
tableMeta.addTimeseriesKey("pk1");
tableMeta.addTimeseriesKey("pk2");
tableMeta.addFieldPrimaryKey("field1", PrimaryKeyType.INTEGER);
tableMeta.addFieldPrimaryKey("field2", PrimaryKeyType.STRING);

CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);
timeseriesClient.createTimeseriesTable(request);

建立 Lastpoint 索引

重要

Lastpoint 索引需要使用 5.17.1 及以上版本,建議使用最新版本的 SDK。使用該功能前,需要在支援該功能的地區建立時序模型執行個體。支援的地區,請參見Lastpoint 索引

以下樣本隨時序表建立名稱為 example_lastpoint_index 的 Lastpoint 索引。

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);
request.addLastpointIndex(
        new CreateTimeseriesTableRequest.LastpointIndex("example_lastpoint_index"));

timeseriesClient.createTimeseriesTable(request);

建立分析儲存

分析儲存用於低成本儲存和分析時序資料。使用該功能前,需要在支援該功能的地區建立時序模型執行個體。支援的地區及功能詳情,請參見分析儲存

預設分析儲存

enableAnalyticalStore 設定為 true,建立名稱為 default_analytical_store 的預設分析儲存。

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);
request.setEnableAnalyticalStore(true);

timeseriesClient.createTimeseriesTable(request);

自訂分析儲存

以下樣本隨時序表建立 example_analytical_store,分析儲存中的資料永不到期,並使用全量同步方式。

String tableName = "example_timeseries_table";
TimeseriesTableMeta tableMeta = new TimeseriesTableMeta(tableName);
CreateTimeseriesTableRequest request = new CreateTimeseriesTableRequest(tableMeta);

TimeseriesAnalyticalStore analyticalStore =
        new TimeseriesAnalyticalStore("example_analytical_store");
analyticalStore.setTimeToLive(-1);
analyticalStore.setSyncOption(AnalyticalStoreSyncType.SYNC_TYPE_FULL);
request.setAnalyticalStores(Collections.singletonList(analyticalStore));

timeseriesClient.createTimeseriesTable(request);

相關文檔