MongoDB摄取ETL设计选项

时间:2014-03-28 23:21:29

标签: node.js mongodb pymongo etl logstash

对于MongoDB来说,我是一个完整的新手,但我之前有过使用 Hbase Accumulo 等nosql商店的经验。当我使用这些其他的nosql平台时,我最终编写了自己的数据摄取框架(通常在java中)执行类似ETL的函数,以及内联丰富。

我还没有找到一个与Mongo具有相似功能的工具,但也许我错过了它。

到目前为止,我有一个Logstash实例并从多个来源收集日志,并将其作为JSON保存到磁盘。我知道Logstash有一个mongodb output plugin,但它没有任何选项来配置记录的索引方式(即聚合文档等)。

根据我的需要,我想为通过Logstash到达的每个事件创建多个聚合文档 - 这需要对Mongo进行一些预处理和特定插入。

底线 - 在我构建摄取工具之前(可能在python或节点中) - 是否存在某些东西?

3 个答案:

答案 0 :(得分:1)

尝试node-datapumps,一个nodejs的etl工具。只需从JSON对象填充输入缓冲区,在.process()中丰富数据,并使用mongo mixin写入mongodb。

答案 1 :(得分:0)

答案 2 :(得分:0)

我刚刚找到一个ETL工具Talend Open Studio,它支持多种文件格式。我刚刚使用Talend在MongoDB上上传了多个xml文件。它还得到了Talend论坛的支持,其中许多Q& A可以找到。