本文將通過參數說明和範例程式碼為您介紹如何使用 Go SDK 更新表配置。在更新資料表時,您可以修改表的配置資訊(例如資料生命週期、最大版本數、有效版本偏差等)和 Stream 配置。此外,您還可以為高效能型執行個體中資料表調整預留讀寫輸送量。
前提條件
已初始化 Client。具體操作,請參見初始化 OTSClient。
已建立資料表。具體操作,請參見建立資料表。
介面
//更新資料表配置(TableOption、ReservedThroughput或StreamSpec)。
UpdateTable(request *UpdateTableRequest) (*UpdateTableResponse, error)
參數說明
更多資訊,請參見參數說明。
樣本
更新資料表配置
以下樣本用於修改資料表的配置資訊。
func UpdateTable(client *tablestore.TableStoreClient, tableName string) {
updateTableReq := new(tablestore.UpdateTableRequest)
//設定資料表名稱。
updateTableReq.TableName = tableName
updateTableReq.TableOption = new(tablestore.TableOption)
//資料的到期時間,-1表示永不到期。
updateTableReq.TableOption.TimeToAlive = -1
//最大版本數,屬性列值最多保留5個版本。
updateTableReq.TableOption.MaxVersion = 5
//有效版本偏差,即寫入資料的時間戳記與系統目前時間的偏差允許最大值為86400秒(1天)。
updateTableReq.TableOption.DeviationCellVersionInSec = 86400
//允許UpdateRow相關更新寫入操作。
updateTableReq.TableOption.AllowUpdate = proto.Bool(true)
//開啟Stream功能,設定stream到期時間為24小時。
//updateTableReq.StreamSpec = new(tablestore.StreamSpecification)
//updateTableReq.StreamSpec.EnableStream = true
//updateTableReq.StreamSpec.ExpirationTime = 24
_, err := client.UpdateTable(updateTableReq)
if (err != nil) {
fmt.Println("failed to update table with error:", err)
} else {
fmt.Println("update finished")
}
}
更新高效能型執行個體中資料表的預留輸送量
以下樣本用於修改高效能型執行個體中資料表的預留輸送量 。
func UpdateTable(client *tablestore.TableStoreClient, tableName string) {
updateTableReq := new(tablestore.UpdateTableRequest)
//設定資料表名稱。
updateTableReq.TableName = tableName
updateTableReq.ReservedThroughput = new(tablestore.ReservedThroughput)
//設定新的預留讀輸送量為1,寫輸送量為1。容量型執行個體下的資料表只能設定為0。
updateTableReq.ReservedThroughput.Readcap = 1
updateTableReq.ReservedThroughput.Writecap = 1
_, err := client.UpdateTable(updateTableReq)
if (err != nil) {
fmt.Println("failed to update table with error:", err)
} else {
fmt.Println("update finished")
}
}
相關文檔
關於 API 說明的更多資訊,請參見 UpdateTable。
更新表配置後,您可能需要以下操作: