我正在寻找一种可以支持复杂查询的点击流分析工具。我在AWS上使用DynamoDB-由于写入速度快且具有免费层,因此最初以一分钟的批次存储传入的数据。此后每半小时,AWS Lambda代码将把ETL执行到MongoDB中。然后,将Mongo用于运行查询和创建渠道。
选择mongoDB的原因是其聚合管道和处理大型非结构化数据集的能力。另外,MongoDB具有自己的map-reduce功能-尽管我不确定如何在AWS EMR上运行它。
最近,我开始怀疑使用Mongo的决定,因为似乎很多人在EMR上将DynamoDB和Hadoop一起使用。
有人可以在查询复杂性和处理/ RAM需求方面给我Mongo和Hadoop的比较吗?
此外,如果有一种方法可以在EMR上运行Mongo的map-reduce,那就太好了-充分利用map-reduce和聚合管道的优势。
我知道有一个mongo-hadoop连接器,但是我不清楚如何使用它及其含义。