玖叶教程网

前端编程开发入门

彩虹桥之es同步模块上线

背景

之前介绍了彩虹桥的mysql冗余功能,以及缓存同步功能,最近老顾又把es同步进行了上线,大家可以升级1.2.0版本即可。

下面我们就简单介绍一下

Es同步,主要功能就是把mysql的数据同步到es中;只需要简单的配置即可

ES目标源

类型:指定为es

服务器地址:链接es服务器的地址

链接配置:代表链接es的配置,配置格式(k1=v1;k2=v2);没有用户名和密码时,可不需要配置username=elastic;password=elastic;案例如下:

connectTimeOut=3000;socketTimeOut=3000;connectionRequestTimeOut=3000;maxConnectCount=100;maxConnectPerRoute=10;keepAliveMinutes=10

es版本:链接es服务器的es版本,目的只是说明而已,可以不填写

Es任务规则


如下新增es任务规则

父子文档配置

索引格式:数据同步哪一个index索引中,支持freemarker

id格式:index文档的唯一id,支持freemarker

同步模式: 0:索引更新sql模式(执行sql语句,获得es属性)),1:索引更新canal模式(直接从binlog属性中获取)

sql模式针对负责需求,需要关联其他表时用到

字段映射:canal模式时有效,json格式,映射es和db的属性字段,格式{k1:v1, k2:v2} k1=v1(es属性=db列)

sql语句:sql模式时有效,sql格式,有事件时执行sql,变量用?代替

sql字段:sql模式时有效,sql格式中?对应的值,(以#@#隔开)

sqlNull字段:sql模式时有效,如果sql执行结果为空是,需要清理的esFiled(逗号隔开)

字段类型:字段的类型(k1=v1 以#@#隔开)(表示:es字段名=字段类型)\n类型有 int、date、string、array、json、decimal\n如:\nF1=array; 数组格式 array+值分隔符(1个字符)+值类型(int,decimal,string;默认不写为string), 配合 group_concat 字符; 代表值以;隔开\nF1=json json对象

忽略字段:跳过忽略此字段(es属性),不需要把此es属性更新进去(F1,F2以逗号隔开)

文档类型:0:普通文档,1:父文档,2:子文档

父子关联名:父子文档时有效,父子关联健名(父子文档有效),如:join_field

文档关联名:父子文档时有效,文档关联名(父子文档有效),如:父:question,子:answer

子文档路由:子文档的route格式(父子文档有效)支持freemarker

子文档的父Id:子文档的parent格式(父子文档有效)支持freemarker

删除策略:0:根据index和id模板删除索引,1:sql模式有效,执行sql模板,更新索引


开源项目地址:

https://gitee.com/gujiachun/bridge

https://github.com/gujiachun/bridge.git

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言