搭配 AWS CLI 使用 Amazon DynamoDB - AWS Command Line Interface

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

搭配 AWS CLI 使用 Amazon DynamoDB

Amazon DynamoDB 簡介

AWS Command Line Interface (AWS CLI) 提供對所有 AWS 資料庫服務 (包括 Amazon DynamoDB) 的支援。您可以將 AWS CLI 應用於臨時操作,例如建立資料表。您也可以用其在公用程式指令碼中嵌入 DynamoDB 操作。

如需有關搭配 DynamoDB 使用 AWS CLI 的詳細資訊,請參閱 AWS CLI 命令參考中的 dynamodb

若要列出 DynamoDB 的 AWS CLI 命令,請使用下列命令。

$ aws dynamodb help

必要條件

若要執行 dynamodb 命令,您需要:

建立和使用 DynamoDB 資料表

命令列格式包含 DynamoDB 命令名稱,隨後接著該命令的參數。AWS CLI 支援適用於參數值的 CLI 速記語法 以及完整 JSON。

以下範例會建立名為 MusicCollection 的資料表。

$ aws dynamodb create-table \ --table-name MusicCollection \ --attribute-definitions AttributeName=Artist,AttributeType=S AttributeName=SongTitle,AttributeType=S \ --key-schema AttributeName=Artist,KeyType=HASH AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput ReadCapacityUnits=1,WriteCapacityUnits=1

您可以使用類似於以下範例中所示的命令,新增行到資料表。這些範例混合使用速記語法和 JSON。

$ aws dynamodb put-item \ --table-name MusicCollection \ --item '{ "Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"} , "AlbumTitle": {"S": "Somewhat Famous"} }' \ --return-consumed-capacity TOTAL { "ConsumedCapacity": { "CapacityUnits": 1.0, "TableName": "MusicCollection" } }
$ aws dynamodb put-item \ --table-name MusicCollection \ --item '{ "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"} , "AlbumTitle": {"S": "Songs About Life"} }' \ --return-consumed-capacity TOTAL { "ConsumedCapacity": { "CapacityUnits": 1.0, "TableName": "MusicCollection" } }

在單行命令中編寫有效的 JSON 可能很困難。為了讓這項操作更容易達成,AWS CLI 可以讀取 JSON 檔案。例如,請試想下列 JSON 程式碼片段,其存放在名為 expression-attributes.json 的檔案中。

{ ":v1": {"S": "No One You Know"}, ":v2": {"S": "Call Me Today"} }

您可以使用該檔案來使用 AWS CLI 發出 query 請求。在下列範例中,expression-attributes.json 檔案的內容會作為 --expression-attribute-values 參數的數值使用。

$ aws dynamodb query --table-name MusicCollection \ --key-condition-expression "Artist = :v1 AND SongTitle = :v2" \ --expression-attribute-values file://expression-attributes.json { "Count": 1, "Items": [ { "AlbumTitle": { "S": "Somewhat Famous" }, "SongTitle": { "S": "Call Me Today" }, "Artist": { "S": "No One You Know" } } ], "ScannedCount": 1, "ConsumedCapacity": null }

使用 DynamoDB Local

除了 DynamoDB,您也能搭配 DynamoDB Local 使用 AWS CLI。DynamoDB Local 是模擬 DynamoDB 服務的小型用戶端資料庫及伺服器。DynamoDB Local 可讓您編寫使用 DynamoDB API 的應用程式,無須處理 DynamoDB Web 服務中的任何表格與資料。所有 API 動作均會重新路由至本機資料庫。如此可讓您節省佈建輸送、資料儲存和數據傳輸費。

如需有關 DynamoDB Local 及其搭配 AWS CLI 使用的詳細資訊,請參閱《Amazon DynamoDB 開發人員指南》中的下列章節:

資源

AWS CLI 參考:

服務參考: