【技术实现步骤摘要】
数据同步方法、装置、设备及存储介质
本公开涉及计算机
,尤其涉及数据同步方法、装置、设备及存储介质。
技术介绍
从数据流的角度看,数据架构可以分为前后端两个部分。前端为业务数据与日志收集系统,其中业务数据系统一般都是利用关系型数据库实现,例如MySQL,PostgreSQL,后端为数据分析与处理系统,例如ElasticSearch搜索引擎,Redshift数据仓库,基于S3的Hadoop系统等等,或者基于SparkSteam的实时分析后端。目前MySQL数据库与ElasticSearch搜索引擎的同步开源组件主要有:Elasticsearch-jdbc、Logstash-jdbc和Canal。以上组件在实现数据同步时,存在以下问题:(1)在每次添加新的要同步的表或者是修改同步的表字段时,都需要修改代码或者配置文件,工作量大,灵活度不高,无法实现快速简便的修改;(2)配置信息通常保存在同步开源组件的配置文件中,没有历史记录和修改版本供操作人员查看,没有可视化的配置页面,只能通过修改代码实现 ...
【技术保护点】
1.数据同步方法,其特征在于,包括以下步骤:/n获取数据同步配置信息,所述数据同步配置信息包括MySQL数据库表与ElasticSearch文档结构的映射;/n获取MySQL数据库的数据更新信息;/n根据所述数据同步配置信息和所述数据更新信息,生成ElasticSearch更新文档;/n根据所述ElasticSearch更新文档,更新ElasticSearch。/n
【技术特征摘要】
1.数据同步方法,其特征在于,包括以下步骤:
获取数据同步配置信息,所述数据同步配置信息包括MySQL数据库表与ElasticSearch文档结构的映射;
获取MySQL数据库的数据更新信息;
根据所述数据同步配置信息和所述数据更新信息,生成ElasticSearch更新文档;
根据所述ElasticSearch更新文档,更新ElasticSearch。
2.根据权利要求1所述的数据同步方法,其特征在于,所述获取数据同步配置信息,具体包括:
在web端访问数据同步配置界面,加载存储在数据库中的所述数据同步配置信息。
3.根据权利要求1所述的数据同步方法,其特征在于,所述获取MySQL数据库的数据更新信息,具体包括,
监听Canal并实时获取Entry对象,所述Entry对象由所述Canal解析所述MySQL数据库的bin_log信息生成;
对所述Entry对象进行解析;
获取所述MySQL数据库的数据更新信息。
4.根据权利要求1所述的数据同步方法,其特征在于,所述根据所述数据同步配置信息和所述数据更新信息,生成ElasticSearch更新文档具体包括,
根据所述数据更新信息选择相应的所述数据同步配置信息;
根据所述数据同步配置信息获取相应的SQL和数据ID;
根据所述SQL和所述数据ID在所述MySQL数据库中查询相应的数据;
根据查询结果生成ElasticSearch更新文档。
5.根据权利要求1所述的数据同步方法,其特征在于,所述根据所述ElasticSearch更新文档更新ElasticSearch,具体包括,
将所述ElasticSearch更新文档写入Kafka消息队列;
Logstash拉取所述Kafka消息队列中的数据;
将所述Kafka消息队列中的数据写入ElasticSearch。
6.根据权利要求1所述的数据同步方法,其特征在于,所述映射的建立方法,包括以下步骤,
获取MySQL数据库的表结构;<...
【专利技术属性】
技术研发人员:李桐,
申请(专利权)人:上海好屋网信息技术有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。