Elasticsearch mysql 增量同步 三表联合 脚本

在上一篇中简略的说了一下es同步数据脚本的大致情况,但是实际情况里肯定不会像上一篇里面的脚本那么简单。比如目前我就有三张表,两张实体表,一张关联表。大致实现如下:

bin目录建立一个statefile.json文件:

{
    "type" : "jdbc",
    "statefile" : "statefile.json",
   "jdbc": {
        "url" : "jdbc:mysql://",
        "user" : "",
        "password" : "",
        "type" : "actor",
        "index": "test",
           "schedule" : "0 * * * * ?",
        "metrics" : { 
      "lastexecutionstart" : "0",
      "lastexecutionend" : "0",
      "counter" : "1" 
    },  
        
       "sql" : [
            {
                "statement" : "select a.actor_id as _id ,a.*,GROUP_CONCAT(b.tag_name ) as tag_name from ( ( gd_actor_info as a  left join gd_actor_tag as ab on a.actor_id = ab.actor_id ) left join gd_tag_actor as b on ab.tag_id = b.tag_id)   where a.update_time >? or ab.update_time > ? group by a.actor_id ",
                "parameter" : [ "$metrics.lastexecutionstart" ,"$metrics.lastexecutionstart" ]
            }
        ]
      
    }
}

 

主要是lastexecutionstart设置为0,为了让第一次执行能进行一次全量备份。

 

其实sh脚本信息也就都在上面了,再写一个就好了

转载于:https://www.cnblogs.com/csonezp/p/5490206.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值