0

請您指出一個適當的文檔主題,或者提供一個示例,說明如何向DynamoDB添加索引,只要我找不到任何相關信息。如何在創建表後從命令行添加到DynamoDB的索引

根據這個博客:http://aws.amazon.com/blogs/aws/amazon-dynamodb-update-online-indexing-reserved-capacity-improvements/?sc_ichannel=em&sc_icountry=global&sc_icampaigntype=launch&sc_icampaign=em_130867660&sc_idetail=em_1273527421&ref_=pe_411040_130867660_15它似乎可以用UI來完成,但是沒有提及CLI界面的用法。

由於提前, Yevhenii

回答

2

aws命令有幫助的子命令的各個層面。例如,您可以運行aws help以獲取所有服務名稱的列表並發現名稱dynamodb。然後你可以aws dynamodb help找到DDB命令列表,發現update-table是一個可能的罪魁禍首。最後,aws dynamodb update-table help向您顯示添加全局二級索引所需的標誌。

1

AWS CLI文檔非常差,缺乏示例。很顯然,AWS正在推廣SDK或控制檯。

這應用於更新

aws dynamodb update-table --table-name Test \ 
    --attribute-definitions AttributeName=City,AttributeType=S AttributeName=State,AttributeType=S \ 
    --global-secondary-index-updates \ 
    "Create={"IndexName"="state-index", "KeySchema"=[ {"AttributeName"="State", "KeyType"="HASH" }], "Projection"={"ProjectionType"="INCLUDE", "NonKeyAttributes"="City"}, "ProvisionedThroughput"= {"ReadCapacityUnits"=1, "WriteCapacityUnits"=1} }" 
0

在這裏工作是一個殼函數來做到這一點,設置了R/W帽,和任選地,如果索引名設置處理

--global仲索引更新
dynamodb_set_caps() { 
# [ "$1" ] || fail_exit "Missing table name" 
# [ "$3" ] || fail_exit "Missing read capacity" 
# [ "$3" ] || fail_exit "Missing write capacity" 
    if [ "$4" ] ; then 
    aws dynamodb update-table --region $region --table-name ${1} \ 
     --provisioned-throughput ReadCapacityUnits=${2},WriteCapacityUnits=${3} \ 
     --global-secondary-index-updates \ 
     "Update={"IndexName"="${4}", "ProvisionedThroughput"= {"ReadCapacityUnits"=${2}, "WriteCapacityUnits"=${3}} }" 
    else 
    aws dynamodb update-table --region $region --table-name ${1} \ 
     --provisioned-throughput ReadCapacityUnits=${2},WriteCapacityUnits=${3} 
    fi 
} 

完全同意AWS文檔缺乏這方面的

相關問題