我的这个一直就是全量, 只有第一次的时候会把时间记录在 track_time

我的这个一直就是全量, 只有第一次的时候会把时间记录在 track_time

我的这个一直就是全量, 只有第一次的时候会把时间记录在 track_time ,后续这个里面的时间就不会变化了,我已经跟着你的视频看了三次了,配置文件也是复制的, 然后始终做全量增加

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

5回答
psh 2020-04-21 15:18:58

sql_last_value留存值是最后一条数据的tracking_column字段的值吧

  • psh #1
    另外参考:https://discuss.elastic.co/t/jdbc-sql-last-value/69156
    2020-04-21 15:31:21
qq_小拔_0 2020-04-03 23:18:38

sql加这句试试:order by i.updated_time

williamharley 2020-01-31 11:16:32

同问!!!每次都是全量更新,只有第一次记录track_time的值。

只有第一次的时候,会记录track_time的值。这个定时任务是每分钟执行一次,每次都是全量更新。数据库updated_time是2020-01-01或2020-01-09。es中,updated_time和数据库中的一致,@timestamp全部为2020-01-18。

  • 在更改了某条记录(假设id为2,updated_time为2020-01-01),更改updated_time为2020-01-02,则定时任务只会更新该条记录,同时更新track_time的值2020-01-02。但是如果有多条(假设一万条)数据更改了update_time为2020-01-03,更改后,第一次同步是可以理解的,但是之后每次都还是会同步这一万条数据,这咋整?
    2020-01-31 11:26:31
  • 我好像发现了问题的关键在同步的sql语句那,也就是i.updated_time >= :sql_last_value 改为>即可解决数据无变化时,会一直同步上次同步之后的所有数据的问题。不知道这样是否会有其他问题,还望老师明示!
    2020-01-31 11:31:09
  • 提问者 和尚夜袭寡妇村 回复 williamharley #3
    我也没有解决了,碰到好多问题,这儿我已经改了四五次了,还是没解决了,感觉挺恶心的
    2020-01-31 11:36:42
提问者 和尚夜袭寡妇村 2020-01-30 09:27:42

sql我复制你的,因为表的结构是一样的,我检查了好几次,肯定没问题; 跟踪时间就一直下面的这个时间,我后续手动修改了表中的数据大于这个时间,这个时间不会变化,一直就是这样的

http://img1.sycdn.imooc.com//climg/5e32305c09dd236a19140710.jpg


这个是sql语句

http://img1.sycdn.imooc.com//climg/5e32309f0922e3a318380906.jpg


这个是配置信息

http://img1.sycdn.imooc.com//climg/5e3230dc09d8c7c716900944.jpg


这个是追踪时间始终是不会变化的

http://img1.sycdn.imooc.com//climg/5e32310d09d76a5611870322.jpg

Java架构师讲师团 2020-01-30 00:14:06

是不是可能有细节地方没注意吧。
会不会是查询语句的时间不对呀?时间要大于记录时间。

  • 此外你的记录跟踪时间是多少?数据库中的时间又是多少?是否一样?
    2020-01-30 00:14:57
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师