数据同步ES
Posted blablablabla
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据同步ES相关的知识,希望对你有一定的参考价值。
数据同步ES
数据同步ES的原因是利用ES进行查询,加快查询速度。
ES同步前先检查:
1 ES环境是否搭建好,用http://ip:9200/_plugin/head/ 进行访问(ip和端口找运维人员核实)。健康值为绿色,表示正常。
2 检查数据库表数据;
如262,检查262_account 表的数据是否有updatetime和触发器。
更新语句的触发器:
CREATE TRIGGER `340_account_triger` BEFORE UPDATE ON `340_account` FOR EACH ROW set NEW.updatetime=now();
检查262_drug_sale表的数据的sale_time是否符合"yyyy-MM-dd HH:mm:ss"格式。
3 mysql同步es数据库表t_es_sync,检查要同步的表
CREATE TABLE `t_es_sync` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`tablename` varchar(255) DEFAULT NULL,
`synctype` int(1) DEFAULT ‘0‘ COMMENT ‘0 全量同步 1增量同步‘,
`syncthread` int(2) DEFAULT ‘1‘ COMMENT ‘控制线程数‘,
`pagesize` int(8) DEFAULT ‘1000‘ COMMENT ‘翻页,每页大小‘,
`starttime` datetime DEFAULT NULL COMMENT ‘增量同步开始时间‘,
`status` int(1) DEFAULT NULL COMMENT ‘0 表示同步成功 -1表示同步失败 1 表示同步中‘,
`synctime` datetime DEFAULT NULL COMMENT ‘最近一次同步开始时间‘,
`synendctime` datetime DEFAULT NULL COMMENT ‘最近一次同步结束时间‘,
`syncsql` text COMMENT ‘同步sql‘,
`remark` text COMMENT ‘同步出错时记录出错日志‘,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=312 DEFAULT CHARSET=utf8
4 检查ES索引是否创建如:
ES添加索引,参考?cjksearch工程note目录下的创建索引脚本:如图:
??????
索引是否存在:
5 数据同步
同步会员表,会员表同步为增量同步
http://ip:61280/cjksearch/essearch/sync.do?dp_id_start=249&dp_id_end=250&table=249_account
同步销售表,销售表同步先删除历史数据,然后再同步,如果不删除历史数据直接覆盖就添加delete=false
http://ip:61280/cjksearch/essearch/sync.do?dp_id_start=249&dp_id_end=250&table=249_drug_sale&delete=false
同步会员和销售:
http://ip:61280/cjksearch/essearch/sync.do?dp_id_start=249&dp_id_end=250
以上是关于数据同步ES的主要内容,如果未能解决你的问题,请参考以下文章
[es和数据库怎么同步]mysql与elasticsearch实时同步常用插件及优缺点对比(ES与关系型数据库同步)