注:部分内容引用了 http://blog.sina.com.cn/s/blog_4ac9f56e0101g881.html
1、mongodb传数据到mysql
1)在kettle中,mongodb input组件。
![](https://i-blog.csdnimg.cn/blog_migrate/698b5697959b28b3b5a2419b807295e7.png)
2)编辑组件
![](https://i-blog.csdnimg.cn/blog_migrate/d3020649f3a1be3fe4e4180e8500ad32.png)
输入连接信息
![](https://i-blog.csdnimg.cn/blog_migrate/1e4bb429b1b2f6474a7e032c140b1bf1.png)
选择数据库
![](https://i-blog.csdnimg.cn/blog_migrate/a283b5ce0e85fcb88f45bfd558146545.jpeg)
写查询语句
![](https://i-blog.csdnimg.cn/blog_migrate/7ab2ebb4b0d91ca0e4674f700c809a3d.png)
选择字段。上面的复选框选择是否输入json格式,这时不选。
点击get fileds,获取字段对应关系。
$代表根目录
.代表子目录
[]代表数组中的值,例如:
{"data" :{
"museum":[
{
"country":"italy",
"city": "Vencie",
"id_museum":"109",
"name":"pa"},
{
"country":"Mexico",
"city": "Mexico city",
"id_museum":"36",
"name":"Musre"}
]
}
}
$..city表明元素city是在根节点下data节点内的museum节点内。
$.data.museum[1].city表明指定的元素,即上述museum数组第二个节点的city值
预览数据
![](https://i-blog.csdnimg.cn/blog_migrate/b4561d6790e793c73d3b9d04df259ecb.png)
3)表输出
选择 “输出-表输出”组件。
连接mongodb输入组件和表输出组件。
编辑表输出
![](https://i-blog.csdnimg.cn/blog_migrate/b5047e618f271506a78d8221ed0081f8.png)
4)执行转换
![](https://i-blog.csdnimg.cn/blog_migrate/e860295ad36da642e254c32426b0e5f6.png)
二、mysql数据迁移到mongodb
1)选择“表输入”组件,编辑表输入
![](https://i-blog.csdnimg.cn/blog_migrate/ce3b4033cec89304fe8af03c933c9bdd.jpeg)
2)选择 ”bigdata-mongodb ouput"组件
把两个组件相连。
编辑mongodb output组件
![](https://i-blog.csdnimg.cn/blog_migrate/ba423981a9bdf62f1dd783de984e1ec8.png)
输入连接信息
![](https://i-blog.csdnimg.cn/blog_migrate/81157acfb74b49c369eacdcf010496b7.png)
输入数据数据和集合(没有集合自动创建)
![](https://i-blog.csdnimg.cn/blog_migrate/376f7c11962286c37ce3c6e0bb608515.png)
点击获取字段
3)执行转换
![](https://i-blog.csdnimg.cn/blog_migrate/ddfc7431869941dbcbb355584f6abfac.png)