Amazon dynamodb DynamoDB在本地计算机中创建表

Amazon dynamodb DynamoDB在本地计算机中创建表,amazon-dynamodb,Amazon Dynamodb,我已经将dynamodbjars下载到我的本地windows机器上,并且能够使用下面的命令启动服务 java -jar DynamoDBLocal.jar -dbPath . 我可以使用localhost:8000/shell访问web控制台/ 然而,我不知道如何创建表,有人能给我语法和任何例子吗 如果我想创建包含以下详细信息的表,如何创建和插入数据 表:学生 列:sid、firstname、lastname、address 感谢您的投入。您可以在此处查看API文档: 或者您也可以使用aws

我已经将dynamodbjars下载到我的本地windows机器上,并且能够使用下面的命令启动服务

java -jar DynamoDBLocal.jar -dbPath .
我可以使用localhost:8000/shell访问web控制台/

然而,我不知道如何创建表,有人能给我语法和任何例子吗

如果我想创建包含以下详细信息的表,如何创建和插入数据

表:学生 列:sid、firstname、lastname、address


感谢您的投入。

您可以在此处查看API文档:

或者您也可以使用
aws cli
进行本地DynamoDB安装:
文档可能有点难以理解。因为您使用的是dynamodbshell,所以我假设您请求一个JavaScript查询来创建表

var参数={
表名:'学生',
键模式:[
{ 
AttributeName:'sid',
KeyType:'哈希',
},
],
属性定义:[
{
AttributeName:'sid',
属性类型:“N”,
},
],
供应途径:{
阅读:10,
写容量单位:10,
},
};
dynamodb.createTable(参数、函数(错误、数据){
if(err)ppJson(err);//发生错误
else ppJson(数据);//响应成功
});
在本地db shell的浏览器中运行上述代码段

http://localhost:8000/shell/

它创建一个以“sid”作为哈希键的表

插入:

var参数={
表名:'学生',
项:{//属性名称到AttributeValue的映射
席德:123,
名字:{'S':'abc'},
姓氏:{'S':'xyz'},
地址:{S':'pqr'},
returnValue:'无',//可选(无|全部_旧)
ReturnConsumedCapacity:'无',//可选(无|总|索引)
ReturnItemCollectionMetrics:'无',//可选(无|大小)
}
};
docClient.put(参数、函数(错误、数据){
if(err)ppJson(err);//发生错误
else ppJson(数据);//响应成功
});

我建议使用docker(但也可以运行jar):

$docker run-d-p 8000:8000亚马逊/dynamodb本地版
然后,您可以通过传入
端点url
,在docker容器中创建一个表:

$aws dynamodb创建表格\
--表名统一表\
--属性定义AttributeName=pk,AttributeType=S AttributeName=sk,AttributeType=S\
--密钥模式AttributeName=pk,KeyType=HASH AttributeName=sk,KeyType=RANGE\
--已配置吞吐量ReadCapacityUnits=5,WriteCapacityUnits=5\
--端点urlhttp://localhost:8000
您可以检查该表是否存在,如下所示:

$aws dynamodb列表表--端点urlhttp://localhost:8000
#输出:
# {
#“表格名称”:[
#“统一表格”
#     ]
# }

您使用的是什么语言?(python,java..)我通过运行
tutorial.start()
来运行教程。这真的很有帮助。我已经看了好几天了。这是我第一次看到引用的
localhost:8000/shell
。说了很多关于该地区的文档状态!是啊,我花了一天的时间才弄清楚到底是怎么回事。这只是众多服务中的一个。您还可以使用生成
params
,因为它的结构非常复杂。文档中说明,我可以为本地数据库列出表,如
aws dynamodb列表表--端点urlhttp://localhost:8000
。但是,如何在本地创建表?例如,node.js文档说明我可以提供一个端点url:。但是aws.config.update不再支持端点url。
aws.config.update({
 dynamodb: {
      endpoint: 'http://localhost:8000'
 },
}