本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
若要使用 Amazon DynamoDB,您的應用程式必須使用一些簡單的 API 操作。以下是這些操作的摘要,並依類別分組。
注意
如需 API 操作的完整清單,請參閱 Amazon DynamoDB API 參考。
控制平台
控制平面操作可讓您建立及管理 DynamoDB 資料表。它們也可讓您使用索引、串流,以及相依於資料表的其他物件。
-
CreateTable
:建立新的資料表。您可以選擇性地建立一或多個次要索引,並為資料表啟用 DynamoDB Streams。 -
DescribeTable
:傳回資料表的相關資訊,例如其主索引鍵結構描述、傳輸量設定、索引資訊。 -
ListTables
:傳回您所有的資料表名稱清單。 -
UpdateTable
:修改資料表或其索引的設定、在資料表上建立或移除新的索引,或修改資料表的 DynamoDB Streams 設定。 -
DeleteTable
:從 DynamoDB 移除資料表及其所有相依物件。
資料平面
資料平面操作可讓您對資料表中的資料執行建立、讀取、更新與刪除 (也稱為 CRUD) 動作。部分資料平面操作也可讓您從讀取資料。
您可以使用 PartiQL:一種適用於 Amazon DynamoDB 的 SQL 相容查詢語言 來執行這些 CRUD 操作,也可以使用 DynamoDB 的傳統 CRUD API 將每個操作分隔為不同的 API 呼叫。
PartiQL - 一種 SQL 相容查詢語言
-
ExecuteStatement
:讀取資料表中的多個項目。您也可以寫入或更新資料表中的單一項目。在寫入或更新單一項目時,您必須指定主索引鍵屬性。 -
BatchExecuteStatement
:從資料表寫入、更新或讀取多個項目。這比ExecuteStatement
的效率高上好幾倍,因為您的應用程式只需要往返網路一次即可寫入或讀取項目。
傳統 API
建立資料
-
PutItem
:將單一項目寫入資料表。您必須指定主索引鍵屬性,但不必指定其他屬性。 -
BatchWriteItem
:最多可將 25 個項目寫入資料表。這比呼叫PutItem
的效率高上好幾倍,因為您的應用程式只需要往返網路一次即可寫入項目。
讀取資料
-
GetItem
:從資料表擷取單一項目。您必須指定所需項目的主索引鍵。您可以擷取整個項目,或只擷取其屬性子集。 -
BatchGetItem
:最多可從一或多個資料表擷取 100 個項目。這比呼叫GetItem
的效率高上好幾倍,因為您的應用程式只需要往返網路一次即可讀取項目。 -
Query
:擷取所有具有特定分割區索引鍵的項目。您必須指定分割區索引鍵值。您可以擷取整個項目,或只擷取其屬性子集。您可以選擇性地將條件套用至排序索引鍵值,只擷取具有相同分割區索引鍵的資料子集。您可以在資料表上使用此操作,只要該資料表同時具有分割區索引鍵與排序索引鍵。您也可以在索引上使用此操作,只要該索引同時具有分割區索引鍵與排序索引鍵。 -
Scan
:擷取指定資料表或索引中的所有項目。您可以擷取整個項目,或只擷取其屬性子集。您可以選擇性地套用篩選條件,只傳回您感興趣的值並捨棄其餘值。
更新資料
-
UpdateItem
:修改項目中的一或多個屬性。您必須指定要修改之項目的主索引鍵。您可以新增屬性,以及修改或移除現有的屬性。您也可以執行條件式更新,只在符合使用者定義的條件時,更新才會成功。您可以選擇性地實作原子計數器,遞增或遞減數字屬性,而不會影響其他寫入請求。
刪除資料
-
DeleteItem
:從資料表刪除單一項目。您必須指定要刪除之項目的主索引鍵。 -
BatchWriteItem
:最多可從一或多個資料表刪除 25 個項目。這比呼叫DeleteItem
的效率高上好幾倍,因為您的應用程式只需要往返網路一次即可刪除項目。注意
您可以使用
BatchWriteItem
建立資料和刪除資料。
DynamoDB Streams
DynamoDB Streams 操作可讓您在資料表上啟用或停用串流,並允許存取串流中包含的資料修改紀錄。
-
ListStreams
:傳回您所有的串流清單,或只傳回特定資料表的串流。 -
DescribeStream
:傳回串流的相關資訊,例如其 Amazon Resource Name (ARN),以及您的應用程式可開始讀取前幾個串流紀錄的位置。 -
GetShardIterator
:傳回碎片疊代運算,這是您的應用程式從串流擷取紀錄所使用的資料結構。 -
GetRecords
:使用指定的碎片疊代運算,擷取一或多個串流紀錄。
交易
交易提供了不可分割性、一致性、隔離性和耐久性 (ACID),讓您能夠輕鬆地維持應用程式的資料正確度。
您可以使用 PartiQL:一種適用於 Amazon DynamoDB 的 SQL 相容查詢語言 來執行交易操作,也可以使用 DynamoDB 的傳統 CRUD API 將每個操作分隔為不同的 API 呼叫。
PartiQL - 一種 SQL 相容查詢語言
-
ExecuteTransaction
:允許對資料表內和跨資料表的多個項目進行保證全有或全無變更 CRUD 操作的批次操作。
傳統 API
-
TransactWriteItems
:允許對資料表內和跨資料表的多個項目進行保證全有或全無變更的Put
、Update
和Delete
操作的批次操作。 -
TransactGetItems
:允許Get
操作來從一或多個資料表擷取多個項目的批次操作。