数据迁移方法、系统、设备及存储介质技术方案

技术编号:24409657 阅读:43 留言:0更新日期:2020-06-06 08:37
本发明专利技术提供了一种数据迁移方法、系统、设备及存储介质,所述方法包括:在关系型数据库中建立数据表,并建立Elasticsearch集群中数据类型与所述数据表的映射关系;创建Elasticsearch集群中需迁移数据的快照;从所述快照中依次取出每条数据,并根据所述映射关系将取出的数据写入所述关系型数据库,至将所述快照中所有数据均写入所述关系型数据为止。通过采用本发明专利技术,可以在不停机的情况下对已有的Elasticsearch集群中的数据迁移至关系型数据库中,在迁移过程中用户的使用不受影响,迁移完成后可直接在关系型数据库中进行关联查询等应用。

Data migration methods, systems, devices and storage media

【技术实现步骤摘要】
数据迁移方法、系统、设备及存储介质
本专利技术涉及数据库
,尤其涉及一种数据迁移方法、系统、设备及存储介质。
技术介绍
Elasticsearch是一个基于Lucene库的搜索引擎,它提供了一个分布式、支持多租户的全文搜索引擎,具有HTTPWeb接口和无模式JSON(JavaScriptObjectNotation,JS对象简谱)文档。Elasticsearch的查询效率高,对海量数据可以进行近似实时的处理,其全文搜索性能较高,条件可以随意排列组合。此外,Elasticsearch对分布式的支持也较好,基于集群的环境可以方便横向扩展,可以将海量的数据分散到多台集群上去存储和检索。但Elasticsearch对事务的支持较差,包含多个文档的事务时不支持事务的正常回滚,对一致性和原子性支持较差。此外,对多种类型的文档之间做关联操作也没有很好的支持。由上可见,虽然Elasticsearch搜索引擎很强大,但是对于一些复杂的关联查询及对数据一致性、可靠性的支持并没有传统的关系型数据库好,传统的关系型数据库仍有强项和存在价值。因此,在实际应用中,可能会需要将Elasticsearch集群的数据迁移至关系型数据库中。目前已有的数据库迁移技术多是同类型的数据库之间进行迁移,或是将传统关系型数据库迁移至非关系型数据库,因此缺少一种数据库迁移技术,可以根据需求将非关系型数据库数据迁移至传统关系型数据库中,从而对于存储在非关系型数据库中的数据来说,无法很好地利用关系型数据库中对数据一致性、可靠性支持的优势。专利技术内容针对现有技术中的问题,本专利技术的目的在于提供一种数据迁移方法、系统、设备及存储介质,实现将Elasticsearch集群的数据迁移至关系型数据库,对于非关系型数据库中的数据来说,可以更好地利用关系型数据库中对数据一致性、可靠性支持的优势。本专利技术实施例提供一种数据迁移方法,包括如下步骤:在关系型数据库中建立数据表,并建立Elasticsearch集群中数据类型与所述数据表的映射关系;创建Elasticsearch集群中需迁移数据的快照;从所述快照中依次取出每条数据,并根据所述映射关系将取出的数据写入所述关系型数据库,至将所述快照中所有数据均写入所述关系型数据为止。可选地,所述建立Elasticsearch集群中数据类型与数据表的映射关系,包括:建立所述Elasticsearch集群中数据类型与所述关系型数据库中的数据表一对一的映射关系;或建立所述Elasticsearch集群中数据类型与所述关系型数据库中的数据表多对一的映射关系;或建立所述Elasticsearch集群中数据类型与所述关系型数据库中的数据表一对多的映射关系。可选地,所述建立Elasticsearch集群中数据类型与数据表的映射关系的步骤,包括:建立所述Elasticsearch集群中数据类型与所述关系型数据库中的数据表一对多的映射关系,且同一数据类型所对应的多张数据表通过外键相互关联。可选地,从所述快照中取出数据,并根据所述映射关系写入所述关系型数据库,包括如下步骤:从所述快照中取出数据,生成写入取出的数据的结构化查询语言语句;在所述关系型数据库中执行所述结构化查询语言语句。可选地,所述创建Elasticsearch集群的快照之后,还包括:监听所述Elasticsearch集群的数据操作,生成数据操作记录;从所述快照中取出数据,并根据所述映射关系写入所述关系型数据库之后,还包括:将所述数据操作记录同步至所述关系型数据库。可选地,所述监听所述Elasticsearch集群的数据操作,包括如下步骤:监听所述Elasticsearch集群的超文本传输协议HTTP请求;从所述HTTP请求中筛选得到粘贴请求、写入请求和删除请求;将筛选得到的粘贴请求、写入请求和删除请求的请求记录按照请求时间顺序添加至操作缓存队列。可选地,将所述数据操作记录同步至所述关系型数据库,包括如下步骤:依次从所述操作缓存队列中获取每条请求记录,根据每条所述请求记录生成结构化查询语言语句;在所述关系型数据库中依次执行所述结构化查询语言语句,并在一结构化查询语言语句执行完毕后,从所述操作缓存队列中删除对应的请求记录;所述操作缓存队列中不存在请求记录时,停止将所述数据操作记录同步至所述关系型数据库。本专利技术实施例还提供一种数据迁移系统,应用于所述的数据迁移方法,所述系统包括:映射模块,用于在关系型数据库中建立数据表,并建立Elasticsearch集群中数据类型与所述数据表的映射关系;快照模块,用于创建Elasticsearch集群中需迁移数据的快照;执行模块,用于从所述快照中依次取出每条数据,并根据所述映射关系将取出的数据写入所述关系型数据库,至将所述快照中所有数据均写入所述关系型数据为止。本专利技术实施例还提供一种数据迁移设备,包括:处理器;存储器,其中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行所述的数据迁移方法的步骤。本专利技术实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被执行时实现所述的数据迁移方法的步骤。本专利技术所提供的数据迁移方法、系统、设备及存储介质具有下列优点:通过采用本专利技术,通过创建快照的方式进行数据迁移,可以在不停机的情况下对已有的Elasticsearch集群中的数据迁移至关系型数据库中,在迁移过程中由于不对Elasticsearch集群中的数据有所变动,也无需将Elasticsearch集群停机专门用于数据迁移,用户的使用不受影响,迁移完成前,用户仍可以在Elasticsearch集群中进行数据操作,迁移完成后,由于快照数据和Elasticsearch集群中数据的高度一致性,用户可直接在关系型数据库中进行关联查询等应用;由此,对于存储在Elasticsearch集群中数据来说,在迁移到关系型数据库中之后,可以更好地利用关系型数据库中对数据一致性、可靠性支持的优势。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显。图1是本专利技术一实施例的数据迁移方法的流程图;图2是本专利技术一实施例的快照数据写入和操作数据写入的流程图;图3是本专利技术一实施例的数据迁移系统的结构示意图;图4是本专利技术一实施例的数据迁移系统与数据库交互的示意图;图5是本专利技术一实施例的数据迁移设备的结构示意图;图6是本专利技术一实施例的计算机存储介质的结构示意图。具体实施方式现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式;相反,提供这些实施方式使得本专利技术将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类本文档来自技高网...

【技术保护点】
1.一种数据迁移方法,其特征在于,包括如下步骤:/n在关系型数据库中建立数据表,并建立Elasticsearch集群中数据类型与所述数据表的映射关系;/n创建Elasticsearch集群中需迁移数据的快照;/n从所述快照中依次取出每条数据,并根据所述映射关系将取出的数据写入所述关系型数据库,至将所述快照中所有数据均写入所述关系型数据为止。/n

【技术特征摘要】
1.一种数据迁移方法,其特征在于,包括如下步骤:
在关系型数据库中建立数据表,并建立Elasticsearch集群中数据类型与所述数据表的映射关系;
创建Elasticsearch集群中需迁移数据的快照;
从所述快照中依次取出每条数据,并根据所述映射关系将取出的数据写入所述关系型数据库,至将所述快照中所有数据均写入所述关系型数据为止。


2.根据权利要求1所述的数据迁移方法,其特征在于,所述建立Elasticsearch集群中数据类型与数据表的映射关系,包括:建立所述Elasticsearch集群中数据类型与所述关系型数据库中的数据表一对一的映射关系;或
建立所述Elasticsearch集群中数据类型与所述关系型数据库中的数据表多对一的映射关系;或
建立所述Elasticsearch集群中数据类型与所述关系型数据库中的数据表一对多的映射关系。


3.根据权利要求1所述的数据迁移方法,其特征在于,所述建立Elasticsearch集群中数据类型与数据表的映射关系的步骤,包括:建立所述Elasticsearch集群中数据类型与所述关系型数据库中的数据表一对多的映射关系,且同一数据类型所对应的多张数据表通过外键相互关联。


4.根据权利要求1所述的数据迁移方法,其特征在于,从所述快照中取出数据,并根据所述映射关系写入所述关系型数据库,包括如下步骤:
从所述快照中取出数据,生成写入取出的数据的结构化查询语言语句;
在所述关系型数据库中执行所述结构化查询语言语句。


5.根据权利要求1所述的数据迁移方法,其特征在于,所述创建Elasticsearch集群的快照之后,还包括:监听所述Elasticsearch集群的数据操作,生成数据操作记录;
从所述快照中取出数据,并根据所述映射关系写入所述关系型数据库之后,还包括:将所述数据操作记录同步至所述关...

【专利技术属性】
技术研发人员:冯懿宣晋兆龙赵波
申请(专利权)人:苏州科达科技股份有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1