使用UpdateTable介面可以更新指定資料表的配置資訊、Stream配置以及高效能執行個體中的資料表的預留讀/寫輸送量。
前提條件
已初始化Client。具體操作,請參見初始化OTSClient。
已建立資料表。具體操作,請參見建立資料表。
介面
/**
* 更新一個資料表,包括資料表的配置資訊、Stream配置和預留讀寫輸送量。
* 此API可以用來上調或者下調資料表的預留讀寫輸送量。
* @api
* @param [] $request 請求參數。
* @return [] 請求返回。
* @throws OTSClientException 當參數檢查出錯或服務端返回校正出錯時拋出異常。
* @throws OTSServerException 當OTS服務端返回錯誤時拋出異常。
*/
public function updateTable(array $request);
參數
請求資訊
請求參數
參數 | 說明 |
table_name | 資料表名稱。 |
table_options | 資料表的配置資訊。更多資訊,請參見資料版本和生命週期。 配置資訊包括如下內容:
|
reserved_throughput | 為資料表配置預留讀輸送量或預留寫輸送量。 說明 ReservedThroughput的調整有時間間隔限制,目前為1分鐘。 容量型執行個體中的資料表的預留讀/寫輸送量只能設定為0,不允許預留。 預設值為0,即完全隨用隨付。 單位為CU。
|
stream_spec | Stream相關設定(可選配置)。
|
請求格式
$result = $client->updateTable([
'table_name' => '<string>', //設定資料表名稱,必須設定。
'reserved_throughput' => [
'capacity_unit' => [
'read' => <integer>,
'write' => <integer>
]
],
'table_options' => [
'time_to_live' => <integer>,
'max_versions' => <integer>,
'deviation_cell_version_in_sec' => <integer>
],
'stream_spec' => [
'enable_stream' => true || false,
'expiration_time' => <integer>
]
]);
響應資訊
響應參數
參數 | 說明 |
capacity_unit_details | 資料表的預留讀/寫輸送量配置詳情,包括如下內容:
|
table_options | 資料表的配置資訊,包含time_to_live、max_versions和deviation_cell_version_in_sec配置,和請求時一致。 |
stream_details | 資料表的Stream資訊,包括如下內容:
|
結果格式
[
'capacity_unit_details' => [
'capacity_unit' => [
'read' => <integer>,
'write' => <integer>
],
'last_increase_time' => <integer>,
'last_decrease_time' => <integer>
],
'table_options' => [
'time_to_live' => <integer>,
'max_versions' => <integer>,
'deviation_cell_version_in_sec' => <integer>
],
'stream_details' => [
'enable_stream' => true || false,
'stream_id' => '<string>',
'expiration_time' => <integer>,
'last_enable_time' => <integer>
]
]
樣本
更新資料表的預留輸送量
以下樣本用於更新資料表的預留讀輸送量為1,預留寫輸送量為2。
$result = $client->updateTable([
'table_name' => 'SampleTable',
'reserved_throughput' => [
'capacity_unit' => [
'read' => 1, //可以單獨更新預留讀輸送量或者預留寫輸送量。
'write' => 2
]
]
]);
更新資料表的生命週期
以下樣本用於更新資料表的資料生命週期為一天(即86400秒),最大版本數為2, 有效版本偏差為10秒。
$result = $client->updateTable([
'table_name' => 'SampleTable',
'table_options' => [
'time_to_live' => 86400,
'max_versions' => 2,
'deviation_cell_version_in_sec' => 10
]
]);
更新資料表的Stream
以下樣本用於開啟資料表的Stream,並設定到期時間為24小時。
$result = $client->updateTable([
'table_name' => 'SampleTable',
'stream_spec' => [
'enable_stream' => true,
'expiration_time' => 24
]
]);
相關文檔
關於API說明的更多資訊,請參見UpdateTable。
如果要查看更新後的表配置資訊,您可以通過查詢表的描述資訊實現。具體操作,請參見查詢表描述資訊。
如果要讀寫表中資料,您可以通過調用讀寫資料介面實現。具體操作,請參見基礎資料操作。