kettle 读入 MongoDB 数据

  经过测试发现,如果 MongoDB 需要验证的话,kettle 的 “MongoDB input” 组件是无法连接 MongoDB 的。

  (kettle 6.1 以及以下,如果你的连接成功了,请指教,谢谢,QQ:415426435)

  那么我们怎么用 kettle 读入 MongoDB 的数据呢,笔者是如下操作的。

第一步:把 MongoDB 的数据导出成 JSON 文件

  参考链接:http://www.cnblogs.com/wanggs/p/5737402.html

第二步:把第一步的操作设置成定时任务

  参考链接:http://www.cnblogs.com/wanggs/p/5740163.html

第三步:读取 JSON 文件

  经过测试发现,kettle 无法直接读取 MongoDB 导出的 JSON 文件。(参考链接:http://blog.csdn.net/hubeilihao/article/details/43567815)

json 文件如下:

{"_id":{"$oid":"57a2151ee4b04c98a83e27aa"},"content":{"localIP":"172.*.*.26","remoteIP":"171.*.*.166","timestamp":"2016-08-04 00:00:29"},"funcNo":"AS001","payLoad":{"cacheLevel":"2","instId":"00001","userID":"1015375ce2*******"},"result":{"erroCode":"0000","msg":"获取数据成功"}}
{"_id":{"$oid":"57a2151ee4b04c98a83e27aa"},"content":{"localIP":"172.*.*.26","remoteIP":"171.*.*.166","timestamp":"2016-08-04 00:00:29"},"funcNo":"AS001","payLoad":{"cacheLevel":"2","instId":"00001","userID":"1015375ce2*******"},"result":{"erroCode":"0000","msg":"获取数据成功"}}
{"_id":{"$oid":"57a2151ee4b04c98a83e27aa"},"content":{"localIP":"172.*.*.26","remoteIP":"171.*.*.166","timestamp":"2016-08-04 00:00:29"},"funcNo":"AS001","payLoad":{"cacheLevel":"2","instId":"00001","userID":"1015375ce2*******"},"result":{"erroCode":"0000","msg":"获取数据成功"}}

  笔者是先把 JSON 文件读入字段,再解析 JSON 字段的。

 trans 如下:

文本文件输入配置如下:

json input 配置如下:

预览数据如下:

 

原文地址:https://www.cnblogs.com/wanggs/p/5741877.html