我正在处理将在EC2 Web服务器上运行的应用程序。该应用将使用两个数据库,一个管理站点/应用程序并持有所有相关数据的小型数据库,第二个将是一个大型数据库,该数据库专用于浮点值的存储和检索。
即使阅读了一些AWS文档,我仍然对最佳方法感到困惑。该数据库应该存储在附件的EBS卷上还是使用SimpleDB,RDS或S3?
一个人将如何存储数据库?我已经读到SimpleDB是简单数据库的绝佳解决方案(该数据库将是(没有关系,每个表只有一个ID和值列)),但是SimpledB并不是大型数据库的绝佳解决方案。显然,将元数据存储在SimpleDB中,然后S3中的主要数据是一种方法,但我并不真正了解在数据库中的工作方式。
rds听起来过度杀伤,因为我的数据库没有关系等。
我想一些解释来填补我所知的明显差距,但主要目标是找到满足我需求的最佳解决方案,我的需求主要是便宜的存储和快速数据检索。
根据您的要求,AWS DynamoDB最适合您的方案。
- DynamoDB是一个关键值,并且为更高规模而构建的文档数据库,并由AWS完全管理。
- 它非常适合查询没有关系和复杂交易的可索引数据。
- 如果数据记录大小大于400KB,则可以将数据存储在AWS S3中,并将元数据保留在DynamoDB中以查询。
- 由于DynamoDB在多个设施中复制了它,因此提供了高可用性。
- 它还支持自动缩放来处理较大的负载。