database - 如何填充 DynamoDB 表

标签 database amazon-web-services aws-lambda amazon-dynamodb alexa

首先,我对 DynamoDB 和一般的 AWS 服务还很陌生 - 所以当我被所有细节轰炸时,我发现很难。

我的问题是我有一个包含 CSV 格式数据的 excel 文件,我希望将所述数据添加到 DynamoDB 表中,以便轻松访问我要构建的 Alexa 功能。表格格式如下:

ID, Name, Email, Number, Room

1534234,    Dr Neesh Patel, Patel.Neesh@work.com,   +44 (0)3424 111111, HW101

有些行有空字段。

但是我在网上到处查看,似乎没有一种简单的方法可以真正实现这一点 - 而且我也找不到任何官方方法。因此,由于我对该领域的了解有限 - 我怀疑我是否正在以完全错误的方式处理这件事。所以首先,我是不是想错了?我应该为后端数据库寻找一个完全不同的解决方案吗?我原以为这将是一项常见任务,但缺乏支持或简单的解决方案 - 我错了吗?

其次,如果我要做这一切都很好 - 怎么办?我知道 DynamoDB 需要特定的 JSON 格式——而且似乎没有直接的方法将我的 CSV 转换为所述格式。

谢谢,伙计们。

最佳答案

当我开始使用 DynamoDB 时遇到了同样的问题。当你来到分布式大数据系统时,你真的需要设计如何跨系统移动数据。这是您开始的地方。

这里有明确的记录,

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/SampleData.LoadData.html

添加更多详细信息以了解流程。

第 1 步:将您的 csv 转换为 json 文件。

如果您的数据量不大,可以使用在线工具。

http://www.convertcsv.com/csv-to-json.htm

 {
   "ID": 1534234,
   "Name": "Dr Neesh Patel",
   "Email": "Patel.Neesh@work.com",
   "Number": "+44 (0)3424 111111",
   "Room": "HW101"
 }

您可以看到它的格式化效果如何,删除空格等,选择正确的选项并执行转换。

如果您的数据量很大,那么您需要使用大数据工具来并行处理这些数据以进行转换。

第 2 步:使用 CLI 进行小型一次性上传

aws dynamodb batch-write-item --request-items file://data.json

如果要定期上传文件,则需要创建数据管道或不同的流程。

希望对您有所帮助。

关于database - 如何填充 DynamoDB 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49900906/

相关文章:

mysql - 如何知道我在 MySQL 中的时区

mysql - 如何修复命令 "mysql -v"上的错误

amazon-web-services - APIGateway 在使用 POSTMan 调用时不执行请求验证

amazon-web-services - 如何在多个 AWS Lambda 函数之间共享数据?

java - 我的 Java AWS Lambda 函数的 mvn 包在编译期间无法解析 Lambdalogger 类

python - 使用 Flask-SQLAlchemy 在多个不同的数据库中运行 SQL

java - org.hibernate.InstantiationException : Cannot instantiate abstract class or interface: device. 处置

amazon-web-services - CloudFormation cfn-init 在 Ubuntu 基础上的 AWS::EC2::LaunchTemplate 中中断

python-3.x - 使用 boto3 验证 AWS 凭证

amazon-web-services - Lambda 别名和 CloudFront : The function ARN must reference a specific function version