本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
重要
This section refers to API version 2011-12-05,
which is deprecated and should not be used for new
applications.
如需目前低階 的文件API,請參閱 Amazon DynamoDB API參考。
描述
CreateTable
操作會將新的資料表新增到帳戶。
與發出請求的帳戶以及 AWS 接收請求 AWS 的區域 (例如 dynamodb.us-west-2.amazonaws.com) 相關聯的資料表名稱必須是唯一的。每個 DynamoDB 端點都是完全獨立的。例如,如果您有兩個名為「」的資料表MyTable,其中一個在 dynamodb.us-west-2.amazonaws.com 中,另一個在 dynamodb.us-west-1.amazonaws.com 中,它們是完全獨立的,不會共用任何資料。
CreateTable
操作會觸發非同步工作流程以開始建立資料表。DynamoDB 會立即傳回資料表狀態 (CREATING
),直到資料表處於 ACTIVE
狀態。一旦資料表處於 ACTIVE
狀態,您便可執行資料平面操作。
使用 DescribeTables 操作來檢查資料表的狀態。
請求
語法
// This header is abbreviated. // For a sample of a complete header, see DynamoDB 低階 API. POST / HTTP/1.1 x-amz-target: DynamoDB_20111205.CreateTable content-type: application/x-amz-json-1.0 {"TableName":"Table1", "KeySchema": {"HashKeyElement":{"AttributeName":"AttributeName1","AttributeType":"S"}, "RangeKeyElement":{"AttributeName":"AttributeName2","AttributeType":"N"}}, "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10} }
名稱 | 描述 | 必要 |
---|---|---|
TableName
|
要建立的資料表名稱。 允許的字元為 a-z、A-Z、0-9、_ (底線)、- (破折號) 和 . (點)。名稱長度可介於 3 到 255 個字元之間。 類型:字串 |
是 |
KeySchema
|
資料表的主索引鍵 (簡單或複合) 結構。需要 主索引鍵元素名稱長度可以介於 1 到 255 個字元之間,且沒有字元限制。 的可能值 AttributeType 為「S」 (字串)、「N」 (數字) 或「B」 (二進位)。 類型:複合主索引鍵的 |
是 |
ProvisionedThroughput
|
指定資料表的新輸送量,包括 ReadCapacityUnits 與 WriteCapacityUnits 的值。如需詳細資訊,請參閱 DynamoDB 佈建容量模式。注意如需目前的最大/最小值,請參閱 Amazon DynamoDB 中的服務、帳戶和資料表配額。 類型:陣列 |
是 |
ProvisionedThroughput :
ReadCapacityUnits |
設定 DynamoDB 與其他操作平衡負載之前,所指定資料表每秒所需的最低一致性 最終一致讀取操作比一致性讀取負擔更輕,因此每秒 50 次一致性 類型:數字 |
是 |
ProvisionedThroughput :
WriteCapacityUnits |
設定 DynamoDB 與其他操作平衡負載之前,所指定資料表每秒所需的最低 WriteCapacityUnits 數目。類型:數字 |
是 |
回應
語法
HTTP/1.1 200 OK
x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 311
Date: Tue, 12 Jul 2011 21:31:03 GMT
{"TableDescription":
{"CreationDateTime":1.310506263362E9,
"KeySchema":
{"HashKeyElement":{"AttributeName":"AttributeName1","AttributeType":"S"},
"RangeKeyElement":{"AttributeName":"AttributeName2","AttributeType":"N"}},
"ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10},
"TableName":"Table1",
"TableStatus":"CREATING"
}
}
名稱 | 描述 |
---|---|
TableDescription
|
資料表屬性的容器。 |
CreationDateTime |
以 UNIX epoch 時間 類型:數字 |
KeySchema
|
資料表的主索引鍵 (簡單或複合) 結構。需要 類型:複合主索引鍵的 |
ProvisionedThroughput
|
指定資料表的輸送量,包括 類型:陣列 |
ProvisionedThroughput
:ReadCapacityUnits |
DynamoDB 與其他操作平衡負載之前,每秒所需的最低 類型:數字 |
ProvisionedThroughput
:WriteCapacityUnits |
類型:數字 |
TableName
|
已建立的資料表名稱。 類型:字串 |
TableStatus
|
資料表目前的狀態 ( 使用 DescribeTablesAPI檢查資料表的狀態。 類型:字串 |
特殊錯誤
錯誤 | 描述 |
---|---|
ResourceInUseException
|
嘗試重新建立已存在的資料表。 |
LimitExceededException
|
同步資料表請求數 ( 注意如需目前的最大/最小值,請參閱 Amazon DynamoDB 中的服務、帳戶和資料表配額。 |
範例
以下範例會使用包含一個字串和數字的複合主索引鍵建立資料表。如需使用 的範例 AWS SDK,請參閱 在 DynamoDB 中使用資料表和資料。
請求範例
// This header is abbreviated. // For a sample of a complete header, see DynamoDB 低階 API. POST / HTTP/1.1 x-amz-target: DynamoDB_20111205.CreateTable content-type: application/x-amz-json-1.0 {"TableName":"comp-table", "KeySchema": {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"}, "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}}, "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10} }
回應範例
HTTP/1.1 200 OK
x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 311
Date: Tue, 12 Jul 2011 21:31:03 GMT
{"TableDescription":
{"CreationDateTime":1.310506263362E9,
"KeySchema":
{"HashKeyElement":{"AttributeName":"user","AttributeType":"S"},
"RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}},
"ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10},
"TableName":"comp-table",
"TableStatus":"CREATING"
}
}