146
汽車大全
BatchWriteRow__API 概覽_API 參考_表格存儲-阿裏雲
行為:
批量插入、修改或刪除一個或多個表中的若幹行數據。
BatchWriteRow 操作可視為多個 PutRow、UpdateRow、DeleteRow 操作的集合。各個操作獨立執行,獨立返回結果,獨立計算服務能力單元。
與執行大量的單行寫操作相比,使用 BatchWriteRow 操作可以有效減少請求的響應時間,提高數據的寫入速率。
請求結構:
message BatchWriteRowRequest {
repeated TableInBatchWriteRowRequest tables = 1;
}
tables:
類型:repeated TableInBatchWriteRowRequest。
是否必要參數:是。
指定了需要要執行寫操作的行信息。
以下情況都會返回整體錯誤:
tables 中任一表不存在。
tables 中包含同名的表。
tables 中任一表名表名不符合表名命名規範。
tables 中任一行操作未指定主鍵、主鍵列名稱不符合規範或者主鍵列類型不正確。
tables 中任一屬性列名稱不符合列名命名規範。
tables 中任一行操作存在與主鍵列同名的屬性列。
tables 中任一主鍵列或者屬性列的值大小超過上限。
tables 中任一表中存在主鍵完全相同的請求。
tables 中所有表總的行操作個數超過 200 個,或者其含有的總數據大小超過 4 M。
tables 中任一表內沒有包含行操作,則返回 OTSParameterInvalidException 的錯誤。
tables 中任一 PutRowInBatchWriteRowRequest 包含的 Column 個數超過 1024 個。
tables 中任一 UpdateRowInBatchWriteRowRequest 包含的 ColumnUpdate 個數超過 1024 個。
響應消息結構:
message BatchWriteRowResponse {
repeated TableInBatchWriteRowResponse tables = 1;
}
tables:
對應了每個 table 下各操作的響應信息,包括是否成功執行,錯誤碼和消耗的服務能力單元。
響應消息中 TableInBatchWriteRowResponse 對象的順序與 BatchWriteRowRequest 中的 TableInBatchWriteRowRequest 對象的順序相同;每個 TableInBatchWriteRowRequest 中 put_rows、update_rows、delete_rows 包含的 RowInBatchWriteRowResponse 對象的順序分別與 TableInBatchWriteRowRequest 中 put_rows、update_rows、delete_rows 包含的 PutRowInBatchWriteRowRequest、UpdateRowInBatchWriteRowRequest 和 DeleteRowInBatchWriteRowRequest 對象的順序相同。
若某行讀取失敗,該行所對應的 RowInBatchWriteRowResponse 中 is_ok 將為 false。
注意:BatchWriteRow 操作可能會在行級別部分失敗,此時返回的 HTTP 狀態碼仍為 200。應用程序必須對 RowInBatchWriteRowResponse 中的 error 進行檢查,確認每一行的執行結果並進行相應的處理。
服務能力單元消耗:
如果本次操作整體失敗,不消耗任何服務能力單元。
如果請求超時,結果未定義,服務能力單元有可能被消耗,也可能未被消耗。
其他情況將每個 PutRowInBatchWriteRowRequest、UpdateRowInBatchWriteRowRequestDelete、RowInBatchWriteRowRequest 依次視作相對應的寫操作獨立計算讀服務能力單元。PutRow 服務能力單元消耗、UpdateRow 服務能力單元消耗、DeleteRow 服務能力單元消耗。
請求示例:
BatchWriteRowRequest {
tables {
table_name: "consume_history"
put_rows {
condition {
row_existence: IGNORE
}
primary_key {
name: "CardID"
value {
type: STRING
v_string: "2007035023"
}
}
primary_key {
name: "SellerID"
value {
type: STRING
v_string: "00022"
}
}
primary_key {
name: "DeviceID"
value {
type: STRING
v_string: "061104"
}
}
primary_key {
name: "OrderNumber"
value {
type: INTEGER
v_int: 142857
}
}
attribute_columns {
name: "Amount"
value {
type: DOUBLE
v_double: 2.5
}
}
attribute_columns {
name: "Remarks"
value {
type: STRING
v_string: "ice cream"
}
}
}
update_rows {
condition {
row_existence: EXPECT_EXIST
}
primary_key {
name: "CardID"
value {
type: STRING
v_string: "2007035023"
}
}
primary_key {
name: "SellerID"
value {
type: STRING
v_string: "00026"
}
}
primary_key {
name: "DeviceID"
value {
type: STRING
v_string: "065499"
}
}
primary_key {
name: "OrderNumber"
value {
type: INTEGER
v_int: 153846
}
}
attribute_columns {
type: PUT
name: "Amount"
value {
type: DOUBLE
v_double: 1
}
}
attribute_columns {
type: DELETE
name: "Remarks"
}
}
delete_rows {
condition {
row_existence: IGNORE
}
primary_key {
name: "CardID"
value {
type: STRING
v_string: "2007035023"
}
}
primary_key {
name: "SellerID"
value {
type: STRING
v_string: "00026"
}
}
primary_key {
name: "DeviceID"
value {
type: STRING
v_string: "065499"
}
}
primary_key {
name: "OrderNumber"
value {
type: INTEGER
v_int: 166666
}
}
}
}
}
響應示例:
tables {
table_name: "consume_history"
put_rows {
is_ok: true
consumed {
capacity_unit {
write: 1
}
}
}
update_rows {
consumed {
capacity_unit {
write: 1
}
}
}
delete_rows {
consumed {
capacity_unit {
write: 1
}
}
}
}
最後更新:2016-11-23 16:03:56
上一篇:
BatchGetRow__API 概覽_API 參考_表格存儲-阿裏雲
下一篇:
CreateTable__API 概覽_API 參考_表格存儲-阿裏雲
工作流程__工作原理_用戶指南_彈性伸縮-阿裏雲
apache日誌__常見日誌格式_用戶指南_日誌服務-阿裏雲
一分鍾創建伸縮方案__快速入門_彈性伸縮-阿裏雲
獲取應用操作記錄__應用管理類 API_Open API 參考_企業級分布式應用服務 EDAS-阿裏雲
標簽表達式__附錄_OpenAPI 1.0_移動推送-阿裏雲
線路說明___購買指導_DDoS 高防IP-阿裏雲
訂閱消息__快速入門_消息隊列 MQ-阿裏雲
使用Dashboard__快速入門_雲監控-阿裏雲
升級RDS實例版本__實例管理_API 參考_雲數據庫 RDS 版-阿裏雲
旋轉__圖片_圖片處理指南_對象存儲 OSS-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲