经过测试发现,如果 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 如下:

kettle 读入 MongoDB 数据

文本文件输入配置如下:

kettle 读入 MongoDB 数据

kettle 读入 MongoDB 数据

kettle 读入 MongoDB 数据

json input 配置如下:

kettle 读入 MongoDB 数据

kettle 读入 MongoDB 数据

kettle 读入 MongoDB 数据

预览数据如下:

 kettle 读入 MongoDB 数据

相关文章:

  • 2022-12-23
  • 2021-11-02
  • 2022-01-20
  • 2021-12-11
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-04-29
  • 2021-12-20
  • 2022-01-22
  • 2022-01-05
  • 2021-12-30
  • 2021-03-30
  • 2021-12-17
相关资源
相似解决方案