CN113032368A - 一种数据迁移方法、装置、存储介质及平台 - Google Patents
一种数据迁移方法、装置、存储介质及平台 Download PDFInfo
- Publication number
- CN113032368A CN113032368A CN202110321312.2A CN202110321312A CN113032368A CN 113032368 A CN113032368 A CN 113032368A CN 202110321312 A CN202110321312 A CN 202110321312A CN 113032368 A CN113032368 A CN 113032368A
- Authority
- CN
- China
- Prior art keywords
- data
- migrated
- hive
- target
- database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005012 migration Effects 0.000 title claims abstract description 162
- 238000013508 migration Methods 0.000 title claims abstract description 162
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000006243 chemical reaction Methods 0.000 claims abstract description 62
- 238000011068 loading method Methods 0.000 claims abstract description 43
- 238000012545 processing Methods 0.000 claims abstract description 8
- 238000012546 transfer Methods 0.000 claims description 17
- 238000004140 cleaning Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 238000013467 fragmentation Methods 0.000 claims description 9
- 238000006062 fragmentation reaction Methods 0.000 claims description 9
- 230000008439 repair process Effects 0.000 claims description 4
- 238000013501 data transformation Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 12
- 239000002609 medium Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000012120 mounting media Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种数据迁移方法、装置、存储介质及平台,涉及大数据处理技术领域。所述方法应用于分布式大数据迁移平台,包括:将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。通过本发明实施例提供的技术方案,可以快速、高效地将源数据库中的数据迁移至目标数据库中,降低数据迁移过程中的对***业务的影响。
Description
技术领域
本发明实施例涉及大数据处理技术领域,尤其涉及一种数据迁移方法、装置、存储介质及平台。
背景技术
伴随互联网技术的完善,数据采集渠道多样化,给各行各业提供了丰富的数据和海量的信息。然而,随着信息化建设的不断进步、完善,当当前环境不能适应新的需求的时候,就会被更强大的***取代,此时,需要不同数据库间进行数据迁移。
数据迁移的同时需要对历史异常数据进行修复,满足新数据库的特性。数据迁移的成功失败直接关系到***是否能成功上线投产,数据迁移的质量严重响新***的稳定性,特别是对于金融、电信行业的显得尤为重要。因此,如何实现快速、高效的进行数据迁移转换,降低迁移过程中的对业务影响,变得至关重要。
发明内容
本发明实施例提供一种数据迁移方法、装置、存储介质及平台,可以快速、高效地将源数据库中的数据迁移至目标数据库。
第一方面,本发明实施例提供了一种数据迁移方法,包括:
将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;
在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;
将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。
第二方面,本发明实施例还提供了一种数据迁移装置,包括:
数据加载模块,用于将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;
数据转换模块,用于在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;
数据迁移模块,用于将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。
第三方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的数据迁移方法。
第四方面,本发明实施例提供了一种分布式大数据迁移平台,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例提供的数据迁移方法。
本发明实施例提供的数据迁移方案,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。通过本发明实施例提供的技术方案,可以快速、高效地将源数据库中的数据迁移至目标数据库中,降低数据迁移过程中的对***业务的影响。
附图说明
图1为本发明一实施例提供的一种数据迁移方法的流程图;
图2是本发明一实施例提供的数据转换的示意图;
图3是本发明一实施例提供的数据清洗示意图;
图4是本发明另一实施例中的一种数据迁移方法的流程图;
图5是本发明一实施例提供的数据迁移过程示意图;
图6是本发明另一实施例中的一种数据迁移装置的结构示意图;
图7是本发明另一实施例中的一种分布式大数据迁移平台的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的实施例。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
应当理解,本发明的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本发明中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本发明实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
相关技术中,主要通过数据迁移工具实现数据迁移,但是数据迁移工具只能一对一进行数据迁移,无法满足数据转换、数据加工、数据修复等场景需求。而目前分布式大型数据库,越来越多的应用到金融、电信等行业,单机的数据处理能力已到天花板,不能满足海量数据迁移性能需求,而且数据拆分、非法数据处理、乱码字符剔除等数据转换操作是数据迁移过程中必不可少的步骤,这些都是目前的迁移工具无法实现的。
图1为本发明一实施例提供的一种数据迁移方法的流程图,本发明实施例可适用于对数据进行迁移情况,该方法可以由数据迁移装置来执行,该装置可由硬件和/或软件组成,并一般可集成在分布式大数据迁移平台中。如图1所示,该方法具体包括如下步骤:
步骤110,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
其中,分布式大数据迁移平台可理解为包含分布式数据库的数据迁移平台,其中,分布式数据为位于不同的地点的多台计算器服务器通过网络相互连接,统统组成一个完整的、全局的逻辑上集中、物理上分布的大型数据库。例如,分布式大数据迁移平台可以为Hadoop平台。源数据库可以为用于存储源***中的数据的数据库。源***为与分布式大数据迁移平台相互独立的***。其中,Hive可以是基于分布式大数据迁移平台(如Hadoop)的数据仓库工具,可用于数据提取、转化、加载,是一种可以存储、查询、分析存在Hadoop中的大规模数据组件。
在本发明实施例中,分布式大数据迁移平台将源数据库中的待迁移数据加载至分布式大数据迁移平台的Hive数据仓库中。其中,待迁移数据以为源数据库中的全部数据,也可以为源数据库中的部分数据。具体的,分布式大数据迁移平台从源数据库中获取待迁移数据,并将待迁移数据存储至分布式大数据迁移平台的Hive数据仓库中。可选的,源数据库可以包括Hdfs、Hive、Elasticsearch、Hbase、Oracle及Mysql等数据库。源数据库中的待迁移数据可以为任何业务相关的数据。例如,源数据库中的待迁移数据可以为客户相关数据,如可以包括客户证件基本信息、客户地址基本信息、客户电话基本信息、客户合约基本信息、客户机构信息、客户关系基本信息及客户其他信息。
可选的,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中,包括:基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中;将所述HDFS文件***中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。示例性的,基于FTP(FileTransfer Protocol,文件传输协议),从源数据库中获取待迁移数据。也即,将分布式大数据迁移平台基于FTP从源数据库中加载待迁移数据。将加载的待迁移数据存储至分布式大数据迁移平台的HDFS文件***中。示例性的,可以将加载的待迁移数据直接存储于分布式大数据迁移平台的HDFS文件***中,也可以先将加载的待迁移数据存储于分布式大数据迁移平台的本地磁盘中,然后再将本地磁盘中的待迁移数据加载至分布式大数据迁移平台的HDFS文件***中。可选的,基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中,包括:基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据同步至所述分布式大数据迁移平台的本地磁盘中;基于数据接入组件从所述本地磁盘中加载所述待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中。具体的,分布式大数据迁移平台基于FTP将源数据库中待迁移数据同步至本地磁盘中,然后通过数据接入组件将本地磁盘中的待迁移数据上传至HDFS文件***中。将HDFS文件***中的待迁移数据加载至分布式大数据迁移平台的Hive数据仓库中。
可选的,所述源数据库为关系型数据库;相应的,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中,包括:基于Java数据库连接JDBC将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。具体的,当源***中的源数据库为关系型型数据库时,也即需要对关系型数据库中的数据进行迁移时,分布式大数据迁移平台可以通过JDBC(Java Database Connectivity,Java数据库连接)从源数据库中抽取待迁移数据,并将待迁移数据加载至分布式大数据迁移平台的Hive数据仓库中。
可选的,所述源数据库为非关系型数据库;相应的,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中,包括:基于网络认证协议Kerberos将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。其中,非关系型数据库可以为Nosql数据库,即不能使用标准sql语句进行查询、更新的数据库。非关系型数据库可以包括Hbase数据库和Elasticsearch数据库。具体的,当源***的源数据库为非关系型数据库时,也急需要对非关系型数据库进行数据迁移时,分布式大数据迁移平台可以通过网络认证协议Kerberos从源数据库中抽取待迁移数据,并将待迁移数据加载至分布式大数据迁移平台的Hive数据仓库中。
步骤120,在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据。
其中,Spark引擎是一款大规模数据处理引擎,可基于内存计算,计算中间数据不需要落地到磁盘,Spark可以包括SparkCore、SparkSql、SparkStreaming等。在本发明实施例中,分布式大数据迁移平台在Hive数据仓库中,通过Spark引擎对待迁移数据进行数据转换,并将转换后的待迁移数据作为目标数据。其中,对待迁移数据的数据转换可以包括数据分片、数据关联、冗余数据丢弃、差异数据修复及缺失数据补齐等相关操作,以使得生成的目标数据符合目标数据库的存储规则。
可选的,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据,包括:基于Spark引擎执行数据转换策略,并基于所述数据转换策略对所述待迁移数据进行数据转换,生成目标数据。其中,数据转换策略可以为SQL脚本开发的转换策略,在数据转换策略中包含了对待迁移数据的转换方式及转换规则。因此,基于Spark引擎执行数据转换策略,以基于数据转换策略对待迁移数据进行数据转换。可选的,所述数据转换策略包括数据分片策略、数据关联策略、冗余数据丢弃策略、差异数据修复策略及缺失数据补齐策略中的至少一个。其中,数据分片策略可以理解为对源数据库中的待迁移数据进行切分的切分规则;数据关联策略可以理解为对源数据库中的待迁移数据进行关联操作的规则;冗余数据丢弃策略可以理解为对源数据库中的待迁移数据进行冗余判断的判断规则及对冗余数据的处理规则;差异数据修复策略可以理解为对源数据库中的待迁移数据进行差异数据判断的判断规则及对差异数据的修复规则;缺失数据补齐策略可以理解为对源数据库中的待迁移数据进行缺失数据的判断规则及对缺失数据的补齐规则。
示例性的,数据转换策略为数据分片策略,待迁移数据为客户信息,也即对源数据库中的客户信息进行分布式迁移,因此,可基于数据分片策略,以客户所属机构作为基础,对客户各个维度的信息进行数据分库、分片,生成目标数据。这样减少跨库事务,对同一客户的查询、维护在同一个分片内完成,降低交易响应时间,可提高客户体验。
示例性的,图2是本发明一实施例提供的数据转换的示意图。如图2所示,数据转换策略为数据关联策略,数据A(Data-a)与数据B(Data-B)为源数据库中的待迁移数据,基于Spark引擎分别确定数据A与数据B的数据类型(DataFrame),然后再进一步分别确定数据A和数据B对应的Hive数据表,然后通过将数据A对应的数据类型及Hive数据表与数据B对应的数据类型及Hive数据表信息关联操作(Join),生成最终的目标数据(Data-Result)。
可选的,在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据,包括:在所述Hive数据仓库的Yarn组件内存中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据。具体的,分布式大数据平台通过Spark引擎,在Yarn组件内存中对待迁移数据进行数据转换。这样设置的好处在于,可以使得数据转换的性能极高,相对传统的数据转换方式,无需把中间临时数据落地到本地磁盘,可有效减少磁盘IO读写次数,由于内存读写效率是磁盘读写效率的数十倍以上,使得数据转换的逻辑越复杂,效率越高。
步骤130,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。
在本发明实施例中,分布式大数据迁移平台将目标数据从Hive数据仓库中迁出,并迁移至目标数据库中。其中,目标数据库可以为目标***中用于存储数据的数据库,目标***为与分布式大数据迁移平台相互独立的***。目标数据库可以包括Hdfs、Hive、Hbase、Oracle、OceanBase等数据库。
可选的,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中,包括:基于文件传输协议FTP,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中;或者,所述目标数据库为关系型数据库,相应的,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中,包括:基于Java数据库连接JDBC将所述目标数据从所述Hive数据仓库中迁移至所述关系型数据库中;或者,所述目标数据库为非关系型数据库,相应的,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中,包括:基于网络认证协议Kerberos将所述目标数据从所述Hive数据仓库中迁移至非关系型数据库中。具体的,可以基于FTP将目标数据从Hive数据仓库中迁移至目标数据库中,也即将目标数据导出成数据文件的形式,然后分布式大数据迁移平台基于FTP将数据文件从Hive数据仓库中传输至目标数据库中。其中,可以以定长或非定长的方式,将目标数据导出成数据文件。当目标数据为关系型数据库时,分布式大数据迁移平台可以基于JDBC将目标数据从Hive数据仓库中迁出,并迁移至目标数据库中。当目标数据为非关系型数据库时,分布式大数据迁移平台可以基于网络认证协议Kerberos将目标数据从Hive数据仓库中迁出,并迁移至目标数据库中。
本发明实施例提供的数据迁移方法,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。通过本发明实施例提供的技术方案,可以快速、高效地将源数据库中的数据迁移至目标数据库中,降低数据迁移过程中的对***业务的影响。
在一些实施例中,在通过Spark引擎对所述待迁移数据进行数据转换之前,还包括:基于数据清洗配置信息对所述待迁移数据进行数据清洗。具体的,可以基于数据清洗配置信息从待迁移数据中确定乱码数据或非法数据,并对乱码数据或非法数据进行清洗处理。其中,可以基于数据清洗配置信息对非法Unicode码值、非法日期、非法数值、不可见乱码、控制字符进行清洗。图3是本发明一实施例提供的数据清洗示意图。如图3所示,数据按照常用的Utf-8码值,区分Unicode汉字、数字、字母、控制字符等区间,因此,可判断待迁移数据是否处于汉字Unicode区间、字母Unicode区间、数字Unicode区间或符号Unicode区间内,若否,则将该待迁移数据作为乱码进行清洗处理。根据数字类型、时间戳类型、是否非空或长度判断待迁移数据是否为非法数据或异常数据,若是,则基于数据清洗配置信息对该异常数据进行清洗处理。
在一些实施例中,还包括:基于预设检核方式对所述待迁移数据或所述目标数据进行数据检核。具体的,为了保证迁移数据的正确性,在数据迁移的过程中,可基于预设检核方式对待迁移数据或目标数据进行数据检核,使得迁移前后的数据保持一致。其中,所述预设检核方式包括文件检核、数据条数检核、数据大小检核、抽样检核、代码取值检核及主键检核中的至少一种。可选的,可以在将源数据库中的待迁移数据加载至分布式大数据迁移平台的Hive数据仓库的前后,基于预设检核方式对待迁移数据进行检核,也可以在通过Spark引擎对所述待迁移数据进行数据转换前后,对待迁移数据进行检核;还可以在将目标数据从Hive数据仓库中迁移至目标数据库前后,对目标数据进行检核。当检核通过后,在对待迁移数据或目标数据进行后续操作。
图4是本发明另一实施例中的一种数据迁移方法的流程图,如图4所示,该方法包括如下步骤:
步骤410,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
可选的,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中,包括:基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中;将所述HDFS文件***中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。其中,基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中,包括:基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据同步至所述分布式大数据迁移平台的本地磁盘中;基于数据接入组件从所述本地磁盘中加载所述待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中。
可选的,所述源数据库为关系型数据库;相应的,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中,包括:基于Java数据库连接JDBC将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
可选的,所述源数据库为非关系型数据库;相应的,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中,包括:基于网络认证协议Kerberos将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
步骤420,基于数据清洗配置信息对所述待迁移数据进行数据清洗。
步骤430,在所述Hive数据仓库的Yarn组件内存中,基于Spark引擎执行数据转换策略,并基于所述数据转换策略对所述待迁移数据进行数据转换,生成目标数据。
步骤440,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。
可选的,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中,包括:基于文件传输协议FTP,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中;或者,所述目标数据库为关系型数据库,相应的,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中,包括:基于Java数据库连接JDBC将所述目标数据从所述Hive数据仓库中迁移至所述关系型数据库中;或者,所述目标数据库为非关系型数据库,相应的,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中,包括:基于网络认证协议Kerberos将所述目标数据从所述Hive数据仓库中迁移至非关系型数据库中。
可选的,还包括:基于预设检核方式对所述待迁移数据或所述目标数据进行数据检核。
示例性的,图5是本发明一实施例提供的数据迁移过程示意图。
本发明实施例提供的数据迁移方法,可以快速、高效地将源数据库中的数据迁移至目标数据库中,降低数据迁移过程中的对***业务的影响,而且可以适用于对多源数据库与多目标数据库间的数据迁移,在迁移数转过程中对待迁移数据进行清洗,确保目标数据库中数据的干净、稳定。
图6为本发明另一实施例提供的一种数据迁移装置的结构示意图。如图6所示,该装置包括:数据加载模块610,数据转换模块620和数据迁移模块630。其中,
数据加载模块610,用于将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;
数据转换模块620,用于在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;
数据迁移模块630,用于将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。
本发明实施例提供的数据迁移装置,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。通过本发明实施例提供的技术方案,可以快速、高效地将源数据库中的数据迁移至目标数据库中,降低数据迁移过程中的对***业务的影响。
可选的,所述数据加载模块,包括:
数据存储单元,用于基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中;
数据加载单元,用于将所述HDFS文件***中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
可选的,所述数据存储单元,用于:
基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据同步至所述分布式大数据迁移平台的本地磁盘中;
基于数据接入组件从所述本地磁盘中加载所述待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中。
可选的,所述源数据库为关系型数据库;
相应的,所述数据加载模块,用于:
基于Java数据库连接JDBC将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
可选的,所述源数据库为非关系型数据库;
相应的,所述数据加载模块,用于:
基于网络认证协议Kerberos将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
可选的,所述数据转换模块,用于:
基于Spark引擎执行数据转换策略,并基于所述数据转换策略对所述待迁移数据进行数据转换,生成目标数据。
可选的,所述数据转换策略包括数据分片策略、数据关联策略、冗余数据丢弃策略、差异数据修复策略及缺失数据补齐策略中的至少一个。
可选的,所述数据转换模块,用于:
在所述Hive数据仓库的Yarn组件内存中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据。
可选的,所述装置还包括:
数据清洗模块,用于在通过Spark引擎对所述待迁移数据进行数据转换之前,基于数据清洗配置信息对所述待迁移数据进行数据清洗。
可选的,所述装置还包括:
数据检核模块,用于基于预设检核方式对所述待迁移数据或所述目标数据进行数据检核。
可选的,所述预设检核方式包括文件检核、数据条数检核、数据大小检核、抽样检核、代码取值检核及主键检核中的至少一种。
可选的,所述数据迁移模块,用于:基于文件传输协议FTP,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中;或者,
所述目标数据库为关系型数据库,相应的,所述数据迁移模块,用于:基于Java数据库连接JDBC将所述目标数据从所述Hive数据仓库中迁移至所述关系型数据库中;或者,
所述目标数据库为非关系型数据库,相应的,所述数据迁移模块,用于:基于网络认证协议Kerberos将所述目标数据从所述Hive数据仓库中迁移至非关系型数据库中。
上述装置可执行本发明前述所有实施例所提供的方法,具备执行上述方法相应的功能模块和有益效果。未在本发明实施例中详尽描述的技术细节,可参见本发明前述所有实施例所提供的方法。
本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行数据迁移方法,该方法包括:
将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;
在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;
将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机***存储器或随机存取存储器,诸如DRAM、DDRRAM、SRAM、EDORAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机***中,或者可以位于不同的第二计算机***中,第二计算机***通过网络(诸如因特网)连接到第一计算机***。第二计算机***可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机***中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的数据迁移操作,还可以执行本发明任意实施例所提供的数据迁移方法中的相关操作。
本发明实施例提供了一种分布式大数据迁移平台,该分布式大数据迁移平台中可集成本发明实施例提供的数据迁移装置。图7为本发明实施例提供的一种分布式大数据迁移平台的结构框图。分布式大数据迁移平台7Hive可以包括:存储器701,处理器702及存储在存储器701上并可在处理器运行的计算机程序,所述处理器702执行所述计算机程序时实现如本发明实施例所述的数据迁移方法。
本发明实施例中提供的分布式大数据迁移平台,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。通过本发明实施例提供的技术方案,可以快速、高效地将源数据库中的数据迁移至目标数据库中,降低数据迁移过程中的对***业务的影响。
上述实施例中提供的数据迁移装置、存储介质及平台可执行本发明任意实施例所提供的数据迁移方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的数据迁移方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (15)
1.一种数据迁移方法,其特征在于,应用于分布式大数据迁移平台,包括:
将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;
在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;
将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。
2.根据权利要求1所述的方法,其特征在于,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中,包括:
基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中;
将所述HDFS文件***中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
3.根据权利要求2所述的方法,其特征在于,基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中,包括:
基于文件传输协议FTP,从源数据库中获取待迁移数据,并将所述待迁移数据同步至所述分布式大数据迁移平台的本地磁盘中;
基于数据接入组件从所述本地磁盘中加载所述待迁移数据,并将所述待迁移数据存储至所述分布式大数据迁移平台的HDFS文件***中。
4.根据权利要求1所述的方法,其特征在于,所述源数据库为关系型数据库;
相应的,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中,包括:
基于Java数据库连接JDBC将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
5.根据权利要求1所述的方法,其特征在于,所述源数据库为非关系型数据库;
相应的,将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中,包括:
基于网络认证协议Kerberos将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中。
6.根据权利要求1所述的方法,其特征在于,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据,包括:
基于Spark引擎执行数据转换策略,并基于所述数据转换策略对所述待迁移数据进行数据转换,生成目标数据。
7.根据权利要求6所述的方法,其特征在于,所述数据转换策略包括数据分片策略、数据关联策略、冗余数据丢弃策略、差异数据修复策略及缺失数据补齐策略中的至少一个。
8.根据权利要求1所述的方法,其特征在于,在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据,包括:
在所述Hive数据仓库的Yarn组件内存中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据。
9.根据权利要求1所述的方法,其特征在于,在通过Spark引擎对所述待迁移数据进行数据转换之前,还包括:
基于数据清洗配置信息对所述待迁移数据进行数据清洗。
10.根据权利要求1所述的方法,其特征在于,还包括:
基于预设检核方式对所述待迁移数据或所述目标数据进行数据检核。
11.根据权利要求10所述的方法,其特征在于,所述预设检核方式包括文件检核、数据条数检核、数据大小检核、抽样检核、代码取值检核及主键检核中的至少一种。
12.根据权利要求1所述的方法,其特征在于,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中,包括:基于文件传输协议FTP,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中;或者,
所述目标数据库为关系型数据库,相应的,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中,包括:基于Java数据库连接JDBC将所述目标数据从所述Hive数据仓库中迁移至所述关系型数据库中;或者,
所述目标数据库为非关系型数据库,相应的,将所述目标数据从所述Hive数据仓库中迁移至目标数据库中,包括:基于网络认证协议Kerberos将所述目标数据从所述Hive数据仓库中迁移至非关系型数据库中。
13.一种数据迁移装置,其特征在于,应用于分布式大数据迁移平台,包括:
数据加载模块,用于将源数据库中的待迁移数据加载至所述分布式大数据迁移平台的Hive数据仓库中;
数据转换模块,用于在所述Hive数据仓库中,通过Spark引擎对所述待迁移数据进行数据转换,生成目标数据;
数据迁移模块,用于将所述目标数据从所述Hive数据仓库中迁移至目标数据库中。
14.一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理装置执行时实现如权利要求1-12中任一所述的数据迁移方法。
15.一种分布式大数据迁移平台,其特征在于,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-12任一所述的数据迁移方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110321312.2A CN113032368A (zh) | 2021-03-25 | 2021-03-25 | 一种数据迁移方法、装置、存储介质及平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110321312.2A CN113032368A (zh) | 2021-03-25 | 2021-03-25 | 一种数据迁移方法、装置、存储介质及平台 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113032368A true CN113032368A (zh) | 2021-06-25 |
Family
ID=76473788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110321312.2A Pending CN113032368A (zh) | 2021-03-25 | 2021-03-25 | 一种数据迁移方法、装置、存储介质及平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113032368A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114860349A (zh) * | 2022-07-06 | 2022-08-05 | 深圳华锐分布式技术股份有限公司 | 数据加载方法、装置、设备及介质 |
-
2021
- 2021-03-25 CN CN202110321312.2A patent/CN113032368A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114860349A (zh) * | 2022-07-06 | 2022-08-05 | 深圳华锐分布式技术股份有限公司 | 数据加载方法、装置、设备及介质 |
CN114860349B (zh) * | 2022-07-06 | 2022-11-08 | 深圳华锐分布式技术股份有限公司 | 数据加载方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109034993B (zh) | 对账方法、设备、***及计算机可读存储介质 | |
US11182366B2 (en) | Comparing data stores using hash sums on disparate parallel systems | |
US10152497B2 (en) | Bulk deduplication detection | |
US10754853B2 (en) | Virtual edge of a graph database | |
US10901996B2 (en) | Optimized subset processing for de-duplication | |
WO2018036549A1 (zh) | 分布式数据库查询方法、装置及管理*** | |
CN106649676B (zh) | 一种基于hdfs存储文件的去重方法及装置 | |
US9619492B2 (en) | Data migration | |
TW201800967A (zh) | 分布式流式資料處理的方法和裝置 | |
JP2022118108A (ja) | ログ監査方法、装置、電子機器、媒体およびコンピュータプログラム | |
EP2862101B1 (en) | Method and a consistency checker for finding data inconsistencies in a data repository | |
CN107423390B (zh) | 一种基于oltp-olap混合关系型数据库***内部的数据实时同步方法 | |
CN107506464A (zh) | 一种基于ES实现HBase二级索引的方法 | |
CN107330098B (zh) | 一种自定义报表的查询方法、计算节点及查询*** | |
CN111625552B (zh) | 数据收集方法、装置、设备和可读存储介质 | |
CN110647531A (zh) | 数据同步方法、装置、设备及计算机可读存储介质 | |
US20220121652A1 (en) | Parallel Stream Processing of Change Data Capture | |
CN113032368A (zh) | 一种数据迁移方法、装置、存储介质及平台 | |
US10089350B2 (en) | Proactive query migration to prevent failures | |
CN109165262A (zh) | 一种关系型大表的分片集群***及其分片方法 | |
CN107291938A (zh) | 订单查询***及方法 | |
CN106682107B (zh) | 数据库表关联关系确定方法及装置 | |
CN110825453A (zh) | 基于大数据平台的数据处理方法及装置 | |
CN111061719B (zh) | 数据收集方法、装置、设备和存储介质 | |
CN109739883B (zh) | 提升数据查询性能的方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |