Kettle+MongoDB 数据同步到MySQL
1、前言:
MongoDB中的date类型以UTC(Coordinated Universal Time)存储,isodate类型,就等于GMT(格林尼治标准时)时间。而北京所处的是+8区,所以mongo shell会将当前的GMT+0800时间减去8,存储成GMT时间。
2、抽取作业概述

3、组件选择:
![2HVPYT5A]RM[TZS3PQMJ}9E.png wKiom1gcMmCSvfeCAAB2KBt8RfU414.png-wh_50](https://code84.com/wp-content/uploads/2022/10/wKiom1gcMmCSvfeCAAB2KBt8RfU414.png-wh_500x0-wm_3-wmp_4-s_3340592222.png)
4、增量处理:
![P[UI@X6PF0]GWD]VOPSB@I8.png wKioL1gcMhjAiRZ-AABJJuEeWGY991.png-wh_50](https://code84.com/wp-content/uploads/2022/10/wKioL1gcMhjAiRZ-AABJJuEeWGY991.png-wh_500x0-wm_3-wmp_4-s_1042098246.png)
![%HE@W9SG@F)]T]}1(KCD3AF.png wKioL1gcP4uzlQs-AAAoztvowqs375.png-wh_50](https://code84.com/wp-content/uploads/2022/10/wKioL1gcP4uzlQs-AAAoztvowqs375.png-wh_500x0-wm_3-wmp_4-s_4254173693.png)
在MongoDB中查询如下是正确的:
> db.xamessages.find({created_at:{$gte:ISODate("2016-08-16 18:33:36")},yy_id:48}).sort({created_at:1}).limit(1)但是在kettle mongodb中查询则会报错。
解决办法:
{"$query":{"created_at":{"$gte":{"$date":"2016-11-03T00:00:00Z"}}}}
kettle维基百科:http://wiki.pentaho.com/display/BAD/Create+a+Parameterized+Report+with+MongoDB
转载于:https://blog.51cto.com/chenhuican/1869505