使用s3作为数据库而不是dynamodb

时间:2019-02-12 07:37:16

标签: amazon-web-services amazon-s3 amazon-dynamodb

我在AWS中有一个whatsapp聊天机器人项目。我正在使用DynamoDB作为系统的数据库。我希望将数据移植到S3,以为在S3中存储数据比DynamoDB更便宜。但是我不确定它是否合适,因为我会失去数据库的关键约束和其他功能。

我什至不确定这是否是一个好主意,因为我正在考虑必须读取,更新和删除行的情况。由于成本方面的考虑,提出了迁移到S3的想法。

请告诉我将项目数据移至S3是否是一个好主意。如果是这样,将更改哪些步骤?

谢谢。

编辑: 我正在考虑将DynamoDB中的数据作为json文件写入S3中而不是csv中。我认为我必须经过很多步骤才能对csv进行简单的更新。

第二次修改: 事实证明,这种想法并不是最好的选择。我没有查询功能,没有办法更新文件(必须用所有数据重写整个文件)和数据检索延迟。我现在坚持使用dynamodb。 我已经在表上扫描了一段时间了,而没有探索其他查询方法。收费在去年11月至12月飙升;我备份了这些表并删除了它们,以便进行其他项目。自2周以来,它又开始进行处理,并且没有产生任何费用。

1 个答案:

答案 0 :(得分:0)

使用s3作为数据存储很诱人,但是您会遇到如下限制

  1. S3的响应时间不一致,少于发电机组。 (请进行性能测试,将相同的数据放入s3和dynamodb中并进行提取)。

  2. 按上次修改日期支持将不会有任何获取所有邮件的排序。

  3. 不会部分检索json。除非您对所有内容进行非规范化考虑到s3响应时间比dynamodb更长,这将对性能造成巨大影响。

  4. 几乎不可能将关系模型存储为平面键值,而除了可能的文件之外,存储的文件之间没有任何关系。

考虑到以上几点,我不会将s3用作关系用例的数据存储。

相关问题