8

我是 DynamoDB 的新手,我想知道从这个键/值对数据存储生成报告与从 DBMS 生成报告是否会有任何不同。

我的(Java)应用程序将数据写入 DynamoDB,我希望从中生成业务报告(例如销售报告)。

我的理解是亚马逊提供 EMR(弹性地图缩减),进一步阅读是它下面有 Hive,这将允许我使用类似 SQL 的语法来查询 DynamoDB。

如果我的数据小于 50GB,使用 EMR 完成这项任务是否过大?

4

1 回答 1

7

是的,hive 使用类似 SQL 的语法。Hive 仍然是用 java 编写的,并且在底层它仍然是 java。Hive wiki是一个很好的起点。这是一篇关于将 Dynamo DB 与 EMR 结合使用的好文章 http://aws.amazon.com/articles/28549

如果我的数据小于 50GB,使用 EMR 完成这项任务是否过大?

我不这么认为,一旦您设置了 EMR 并将 dynamo 表导出到 s3 或内部 hadoop 表。然后,您可以查询 S3 或内部 hadoop 表,而不会影响 DynamoDB 的临时吞吐能力。由于 S3 非常快,您可以编写各种复杂的配置单元查询来获得所需的报告。

启动 EMR的命令行工具非常容易设置,如果您想省钱,您可以随时竞价竞价实例。

此外,当作业运行缓慢时,您可以根据需要增加核心和任务节点以使作业快速运行。

于 2013-03-06T00:22:15.300 回答