CN110019135A - 一种将关系型数据迁移至HBase数据库的方法及装置 - Google Patents
一种将关系型数据迁移至HBase数据库的方法及装置 Download PDFInfo
- Publication number
- CN110019135A CN110019135A CN201711451023.4A CN201711451023A CN110019135A CN 110019135 A CN110019135 A CN 110019135A CN 201711451023 A CN201711451023 A CN 201711451023A CN 110019135 A CN110019135 A CN 110019135A
- Authority
- CN
- China
- Prior art keywords
- data
- tables
- importing
- database
- migrate
- 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
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
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种将关系型数据迁移至HBase数据库的方法及装置,用于解决目前将数据从关系型数据库迁移到HBase数据库的数据迁移方式不够成熟的技术问题,以提高数据迁移效率,并且可以通过容错验证的方式确保数据迁移的完整和有效以提高数据迁移的准确性。该方法包括:从关系型数据库中获取需要迁移的数据表;根据所述需要迁移的数据表为目标HBase数据库创建列族名称和列名;通过将字段类型转换成字符型对所述需要迁移的数据表中的数据进行数据转换以获得转换后的数据,并记录转换数据量;将所述转换后的数据导入所述目标HBase数据库中并生成导入记录报表;根据所述转换数据量和所述导入记录报表判断数据迁移的完整性,以获得数据是否完整迁移的验证结果。
Description
技术领域
本发明涉及数据存储技术领域,尤其涉及一种将关系型数据迁移至HBase数据库的方法及装置。
背景技术
HBase是Hadoop项目所属的子项目,是Hadoop上的一个NOSQL数据库的实现,同时也是一个分布式的、面向列的开源数据库,可以说,HBase不仅拥有大部分NOSQL数据库所拥有的优点,而且由于能与Hadoop无缝集成,所以它提供了更为强大的扩展性以及数据操作性能。并且随着云计算技术不断落地成为支撑各行业信息技术发展的重要支柱,由于HBase数据库存在的巨大优势,越来越多的场景下都需要利用HBase数据库等菲关系型数据库进行数据存储和管理。
以发票数据为例,根据有效统计,截至目前全国金税盘开票机已达到约千万台,而通过金税盘打印增值税专票数据大概13亿条左右,普通发票20亿条左右,发票数据更是以T为单位存储,而目前发票数据一般是保存在关系型数据库中,例如Oracle或mysql等等,而将如此大量的数据存储在关系型数据库中已经大大限制了对历史数据的分析,为了提高数据查询和分析管理效率,有必要将关系型数据库中的存储数据迁移至HBase大数据平台数据库中进行保存,以便于后续的快速查找和高效管理,也就是说,对于海量数据的存储,有必要将其从关系型数据库迁移至HBase数据库,而目前的数据迁移方式还不够成熟,效率不高。
发明内容
本发明实施例提供一种将关系型数据迁移至HBase数据库的方法及装置,用于解决目前将数据从关系型数据库迁移到HBase数据库的数据迁移方式还不够成熟的技术问题。
第一方面,提供一种将关系型数据迁移至HBase数据库的方法,所述方法包括:
从关系型数据库中获取需要迁移的数据表;
根据所述需要迁移的数据表为目标HBase数据库创建列族名称和列名;
通过将字段类型转换成字符型对所述需要迁移的数据表中的数据进行数据转换以获得转换后的数据,并记录转换数据量;
将所述转换后的数据导入所述目标HBase数据库中并生成导入记录报表;
根据所述转换数据量和所述导入记录报表判断数据迁移的完整性,以获得数据是否完整迁移的验证结果。
可选的,根据所述需要迁移的数据表为目标HBase数据库创建列族名称和列名,包括:
根据所述需要迁移的数据表对应的数据库类型创建所述目标HBase数据库的列族名称,以及根据创建的列族名称和所述需要迁移的数据表的表名定义所述列族名称对应的列族所包括的列名。
可选的,从关系型数据库中获取需要迁移的数据表,包括:
判断是否存在迁移筛选条件;
若存在所述迁移筛选条件,则根据所述迁移筛选条件从所述关系型数据库的全量表中进行筛选以获得所述需要迁移的数据表;
若不存在所述迁移筛选条件,则将所述关系型数据库中的全量表确定为所述需要迁移的数据表。
可选的,根据所述转换数据量和所述导入记录报表判断数据迁移的完整性,包括:
根据所述转换数据量和所述导入记录报表表明的导入数据量,判断数据导入是否完整;
若所述转换数据量和所述导入数据量相等,则表明数据导入完整;
若所述转换数据量和所述导入数据量不相等则表明数据导入不完整,则输出用于表明导入数据不完整的提醒信息。
可选的,所述方法还包括:
在确定数据导入不完整时,根据所述转换数据量和所述导入数据量之间的差异确定导入失败的数据;
将所述导入失败的数据存储至平面文件中,以便根据所述平面文件将所述导入失败的数据重新导入。
第二方面,提供一种将关系型数据迁移至HBase数据库的装置,所述装置包括:
获取模块,用于从关系型数据库中获取需要迁移的数据表;
创建模块,用于根据所述需要迁移的数据表为目标HBase数据库创建列族名称和列名;
数据转换模块,用于通过将字段类型转换成字符型对所述需要迁移的数据表中的数据进行数据转换以获得转换后的数据,并记录转换数据量;
数据导入模块,用于将所述转换后的数据导入所述目标HBase数据库中并生成导入记录报表;
完整校验模块,用于根据所述转换数据量和所述导入记录表判断数据迁移的完整性,以获得数据是否完整迁移的验证结果。
可选的,所述创建模块用于:
根据所述需要迁移的数据表对应的数据库类型创建所述目标HBase数据库的列族名称,以及根据创建的列族名称和所述需要迁移的数据表的表名定义所述列族名称对应的列族所包括的列名。
可选的,所述获取模块用于:
判断是否存在迁移筛选条件;
若存在所述迁移筛选条件,则根据所述迁移筛选条件从所述关系型数据库的全量表中进行筛选以获得所述需要迁移的数据表;
若不存在所述迁移筛选条件,则将所述关系型数据库中的全量表确定为所述需要迁移的数据表。
可选的,所述完整校验模块用于:
根据所述转换数据量和所述导入记录报表表明的导入数据量,判断数据导入是否完整;
若所述转换数据量和所述导入数据量相等,则表明数据导入完整;
若所述转换数据量和所述导入数据量不相等则表明数据导入不完整,则输出用于表明导入数据不完整的提醒信息。
可选的,所述装置还包括失败处理模块,用于在确定数据导入不完整时,根据所述转换数据量和所述导入数据量之间的差异确定导入失败的数据;以及将所述导入失败的数据存储至平面文件中,以便根据所述平面文件将所述导入失败的数据重新导入。
本发明实施例中,可以先从关系型数据库中获取到需要迁移至HBase数据库的数据表,再根据需要迁移的数据表自动为目标HBase数据库创建列族名称和列名,这里的目标HBase数据库即为用于存储迁移数据的HBase数据库,进一步地,为了符合HBase数据库的特性,再通过将字段类型转换成HBase数据库对应的字段类型(即字符型)对需要迁移的数据表中的数据进行转换以活动转换后的数据,最后再将转换后的数据导入目标HBase数据库中以完成数据从关系型数据库到HBase数据库的快速迁移。
也就是说,本发明实施例通过自动创建列族名的方式为目标HBase数据库添加列族名称,以及通过自动修改数据的字段类型的方式来匹配HBase数据库的数据结构,从而可以实现对数据的快速、准确迁移,以提高数据从关系型数据库迁移至HBase数据库的数据迁移效率。
同时,由于在数据转换时还记录转换数据量以及在数据导入时生成导入记录报表,进而在数据导入结束之后可以根据所记录的转换数据量和导入记录报表来判断数据迁移的完整性,并获得数据是否完整迁移的验证结果,换句话说,通过转换数据和实际导入数据的比较可以知晓数据的导入是否完整,通过容错验证的方式可以确保数据迁移的完整和有效,以提高数据迁移的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例中的将关系型数据迁移至HBase数据库的方法的流程图;
图2本发明实施例中的将关系型数据迁移至HBase数据库的装置的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,在不做特别说明的情况下,一般表示前后关联对象是一种“或”的关系。
本发明实施例提供一种将关系型数据迁移至HBase数据库的方法及装置,用于解决目前将数据从关系型数据库迁移到HBase数据库的数据迁移方式还不够成熟的技术问题,以提高数据从关系型数据库迁移至HBase数据库的数据迁移效率,并且通过转换数据和实际导入数据的比较可以知晓数据的导入是否完整,通过容错验证的方式可以尽量确保数据迁移的完整和有效,提高数据迁移的准确性。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
请参见图1,本发明实施例提供一种将关系型数据迁移至HBase数据库的方法,该方法的流程描述如下。
步骤101:从关系型数据库中获取需要迁移的数据表。
要实现数据从关系型数据库到HBase数据库的迁移,首先需要从关系型数据库中获得需要进行迁移的数据表,而要从关系型数据库中获得需要进行迁移的数据表则需要先与数据源数据库(即待迁移的数据库)建立数据库之间的连接。又由于存在多种类型的关系型数据库,而不同类型的关系型数据库与HBase数据库之间的连接方式不同,在具体实施过程中,可以通过自动匹配或者手动匹配的方式实现数据源数据库与HBase数据库之间的连接。
其中,对于自动匹配连接的方式来说,可以预先设置各种关系型数据库的特征信息,针对某一个数据源数据库可以采用特征比对的方式直接确定其数据库类型,进而直接采用对应的与HBase数据库连接的方式实现与目标HBase数据库之间的自动匹配连接,通过自动匹配的方式可以实现两种数据库之间的快速连接,无需用户操作,系统更加智能化程度较高。
对应手动匹配的方式来说,例如用户可以手动选择某种连接方式直接实现数据源数据库与HBase数据库之间的连接,或者可以通过填写数据库地址与端口号的方式实现数据源数据库与HBase数据库之间的匹配,进而再以匹配的连接方式进行连接。
在数据源数据库与HBase数据库连接之后,则可以通过例如TCP/IP协议将数据源数据库中的需要进行数据迁移的数据表传输至目标HBase数据库所在的大数据平台的服务器上,进而再通过该服务器实现对待迁移数据的转换和最终导入。
在实际迁移过程中,由于一些原因可能不需要将数据源数据库中的所有数据均全部迁移,那么在从数据源数据库中获得需要迁移的数据表时就可以先经过一定程度的筛选,通过筛选可以使得最终迁移的数据是满足用户的实际迁移需求的,例如用户只希望迁移3天前的数据,或者用户只希望将某部门的发票报销数据进行迁移,等等,由于这些实际的迁移需求,所以在本发明实施例中在进行迁移之前可以采用一定的筛选手段进行预先过滤。
例如,可以先判断是否存在迁移筛选条件,该迁移筛选条件例如可以是由系统自动设置的(例如只迁移3天前的所有数据表),或者可以是由用户手动设置的,而筛选的对象可以是整张表,或者也可以是表中的某些数据,等等。进一步地,在有迁移筛选条件时则可以根据迁移筛选条件从需要迁移的数据源数据库所包括的全量表(即所有用户表的列表)中进行筛选以获得最终需要迁移的数据表,当然,当没有迁移筛选条件存在时,则可以将数据源数据库中的全量表均作为需要迁移的数据表,即此时无需进行任何数据过滤。
步骤102:根据需要迁移的数据表为目标HBase数据库创建列族名称和列名。
在确定了需要迁移的数据表之后,根据HBase数据库的特性,可以先为目标HBase数据库(即用于存储迁移数据的HBase数据库)自动创建列族名称和列名,而在具体实施过程中,可以根据需要迁移的数据表来为目标HBase数据库自动创建列族名称和列名,这样是利用HBase数据库的具有列族的特性,使得最后迁移过来的数据存储满足HBase数据库的存储特性。
在一种可能的实施方式中,可以根据需要迁移的数据表对应的数据库类型创建目标HBase数据库的列族名称,即可以为属于同一种类型的关系型数据库的所有数据表创建一个列族名称,例如为均属于A类型关系型数据库的数据表创建“Atable”的列族名称,以及为均属于B类型关系型数据库的数据表创建“Btable”的列族名称,等等,进一步地,再根据创建的列族名称和需要迁移的数据表的表名定义先前所创建的列族名称对应的列族所包括的列的列名,继续以前述例子来说,假设列族名称Atable下可以包括3个发票数据表,这3个发票数据表分别表示三种类型的报销发票,并且这3个发票数据表的表名分别为work、food和phone,那么列族名称Atable所包括的3个列的列名则可以定义为Atable:work、Atable:food和Atable:phone。
步骤103:通过将字段类型转换成字符型对需要迁移的数据表中的数据进行数据转换以获得转换后的数据,并记录转换数据量。
由于关系型数据库与HBase数据库的字段的数据类型不同,并且不同的关系型数据库的字段类型也不一样,为了能够将关系型数据库中的数据准确有效地存储在HBase数据库之中,在确定了需要迁移的数据表之后还需要修改数据的字段类型,由于HBase数据库中存储的数据的字段类型都是字符型,所以无论是哪种类型的关系型数据库,均可以通过将其需要迁移的数据表中的数据的字段类型转换成字符型的方式对需要迁移的数据表进行数据转换,通过前述的数据转换之后可以获得转换后的数据,即通过字段类型自动转换的方式可以匹配HBase数据库的数据结构。
同时,在转换数据的过程中还可以动态记录转换的数据量,那么在转换完成过之后即可以确定总的转换数据量。
在具体实施过程中,步骤102和步骤103的执行先后可以不做限制,例如可以如前面描述的先执行步骤102再执行步骤103,或者也可以先执行步骤103再执行步骤102,只要在数据导入之前完成步骤102和步骤103的执行即可。
步骤104:将转换后的数据导入目标HBase数据库中并生成导入记录报表。
在完成了目标HBase数据库的创建和数据的转换之后,则可以直接将转换后的数据导入到目标HBase数据库中,在导入的过程中,可以根据之前创建的列族名称和该列族名称对应的列族所包括的列名来对应存储各个待迁移的数据表中的数据,以匹配HBase数据库的数据表结构。
同时,在数据导入的过程中,可以生成导入记录报表,具体来说,导入记录报表可以包括每个关系型数据表的导入数据量,每个关系型数据表导入的时间、总导入数据量、导入失败的数据等等与导入过程相关的信息。由于在导入的过程中由于掉线、断网、宕机等因素可能导致某些数据导入失败,所以通过导入记录表不仅可以知晓导入过程的实际情形,还可以知晓导入是否完整。
步骤105:根据转换数据量和导入记录报表判断数据迁移的完整性,以获得数据是否完整迁移的验证结果。
也就是说,在导入过程结束之后,可以根据转换数据量和导入记录表来判断数据的导入是否完整,例如可以根据转换数据量和导入记录报表表明的导入数据量是否相等来判断导入是否完整,若两者相等则表明数据导入完整,若两者不相等则表明数据导入不完整,即存在导入失败的情形,那么此时可以输出用户表明导入失败的提醒信息以对用户进行及时提醒。
在导入过程不完整时,还可以根据转换数据量和导入数据量之间的差异确定导入失败的数据,或者直接根据导入记录报表确定导入失败的数据,再将所确定的导入失败的数据存储在平面文件中,以便于后续根据该平面文件将导入失败的数据进行二次重新导入。例如,当导入失败的数据是很小一部分数据时,用户通过查看平面文件可以直接通过手动添加的方式将小量的失败数据录入,或者,还可以将该平面文件直接作为导入数据实现二次重新导入以实现数据迁移的完整性。可见,本发明实施例通过导入完整性的验证可以尽量确保数据导入的完整和准确,通过一定的容错控制机制可以提高数据迁移的完整性。
基于同一发明构思,请参见图2,本发明实施例还提供一种将关系型数据迁移至HBase数据库的装置,该装置包括获取模块201、创建模块202、数据转换模块203、数据导入模块204和完整校验模块205,而且本发明实施例中的获取模块201、创建模块202、数据转换模块203、数据导入模块204和完整校验模块205可以通过硬件处理器来实现相关功能单元。其中:
获取模块201,用于从关系型数据库中获取需要迁移的数据表;
创建模块202,用于根据所述需要迁移的数据表为目标HBase数据库创建列族名称和列名;
数据转换模块203,用于通过将字段类型转换成字符型对所述需要迁移的数据表中的数据进行数据转换以获得转换后的数据,并记录转换数据量;
数据导入模块204,用于将所述转换后的数据导入所述目标HBase数据库中并生成导入记录报表;
完整校验模块205,用于根据所述转换数据量和所述导入记录表判断数据迁移的完整性,以获得数据是否完整迁移的验证结果。
在一种可能的实施方式中,创建模块202用于:
根据所述需要迁移的数据表对应的数据库类型创建所述目标HBase数据库的列族名称,以及根据创建的列族名称和所述需要迁移的数据表的表名定义所述列族名称对应的列族所包括的列名。
在一种可能的实施方式中,获取模块201用于:
判断是否存在迁移筛选条件;
若存在所述迁移筛选条件,则根据所述迁移筛选条件从所述关系型数据库的全量表中进行筛选以获得所述需要迁移的数据表;
若不存在所述迁移筛选条件,则将所述关系型数据库中的全量表确定为所述需要迁移的数据表。
在一种可能的实施方式中,完整校验模块205用于:
根据所述转换数据量和所述导入记录报表表明的导入数据量,判断数据导入是否完整;
若所述转换数据量和所述导入数据量相等,则表明数据导入完整;
若所述转换数据量和所述导入数据量不相等则表明数据导入不完整,则输出用于表明导入数据不完整的提醒信息。
在一种可能的实施方式中,该装置还包括失败处理模块,用于:
在确定数据导入不完整时,根据所述转换数据量和所述导入数据量之间的差异确定导入失败的数据;
将所述导入失败的数据存储至平面文件中,以便根据所述平面文件将所述导入失败的数据重新导入。
由于本发明实施例提供的装置可以用于执行图1所示的方法所包括的步骤,因此对于本发明实施例中的装置包括的各功能模块所能够实现的功能及一些实现过程可参考图1所示的实施例部分的描述,在此不再赘述。
本发明实施例通过自动创建列族名的方式为目标HBase数据库添加列族名称,以及通过自动修改数据的字段类型的方式来匹配HBase数据库的数据结构,从而可以实现对数据的快速、准确迁移,以提高数据从关系型数据库迁移至HBase数据库的数据迁移效率。
同时,由于在数据转换时还记录转换数据量以及在数据导入时生成导入记录报表,进而在数据导入结束之后可以根据所记录的转换数据量和导入记录报表来判断数据迁移的完整性,并获得数据是否完整迁移的验证结果,换句话说,通过转换数据和实际导入数据的比较可以知晓数据的导入是否完整,通过容错验证的方式可以确保数据迁移的完整和有效,以提高数据迁移的准确性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种将关系型数据迁移至HBase数据库的方法,其特征在于,所述方法包括:
从关系型数据库中获取需要迁移的数据表;
根据所述需要迁移的数据表为目标HBase数据库创建列族名称和列名;
通过将字段类型转换成字符型对所述需要迁移的数据表中的数据进行数据转换以获得转换后的数据,并记录转换数据量;
将所述转换后的数据导入所述目标HBase数据库中并生成导入记录报表;
根据所述转换数据量和所述导入记录报表判断数据迁移的完整性,以获得数据是否完整迁移的验证结果。
2.如权利要求1所述的方法,其特征在于,根据所述需要迁移的数据表为目标HBase数据库创建列族名称和列名,包括:
根据所述需要迁移的数据表对应的数据库类型创建所述目标HBase数据库的列族名称,以及根据创建的列族名称和所述需要迁移的数据表的表名定义所述列族名称对应的列族所包括的列名。
3.如权利要求1所述的方法,其特征在于,从关系型数据库中获取需要迁移的数据表,包括:
判断是否存在迁移筛选条件;
若存在所述迁移筛选条件,则根据所述迁移筛选条件从所述关系型数据库的全量表中进行筛选以获得所述需要迁移的数据表;
若不存在所述迁移筛选条件,则将所述关系型数据库中的全量表确定为所述需要迁移的数据表。
4.如权利要求1-3中任一权利要求所述的方法,其特征在于,根据所述转换数据量和所述导入记录报表判断数据迁移的完整性,包括:
根据所述转换数据量和所述导入记录报表表明的导入数据量,判断数据导入是否完整;
若所述转换数据量和所述导入数据量相等,则表明数据导入完整;
若所述转换数据量和所述导入数据量不相等则表明数据导入不完整,则输出用于表明导入数据不完整的提醒信息。
5.如权利要求4所述的方法,其特征在于,还包括:
在确定数据导入不完整时,根据所述转换数据量和所述导入数据量之间的差异确定导入失败的数据;
将所述导入失败的数据存储至平面文件中,以便根据所述平面文件将所述导入失败的数据重新导入。
6.一种将关系型数据迁移至HBase数据库的装置,其特征在于,所述装置包括:
获取模块,用于从关系型数据库中获取需要迁移的数据表;
创建模块,用于根据所述需要迁移的数据表为目标HBase数据库创建列族名称和列名;
数据转换模块,用于通过将字段类型转换成字符型对所述需要迁移的数据表中的数据进行数据转换以获得转换后的数据,并记录转换数据量;
数据导入模块,用于将所述转换后的数据导入所述目标HBase数据库中并生成导入记录报表;
完整校验模块,用于根据所述转换数据量和所述导入记录表判断数据迁移的完整性,以获得数据是否完整迁移的验证结果。
7.如权利要求6所述的装置,其特征在于,所述创建模块用于:
根据所述需要迁移的数据表对应的数据库类型创建所述目标HBase数据库的列族名称,以及根据创建的列族名称和所述需要迁移的数据表的表名定义所述列族名称对应的列族所包括的列名。
8.如权利要求6所述的装置,其特征在于,所述获取模块用于:
判断是否存在迁移筛选条件;
若存在所述迁移筛选条件,则根据所述迁移筛选条件从所述关系型数据库的全量表中进行筛选以获得所述需要迁移的数据表;
若不存在所述迁移筛选条件,则将所述关系型数据库中的全量表确定为所述需要迁移的数据表。
9.如权利要求6-8中任一权利要求所述的装置,其特征在于,所述完整校验模块用于:
根据所述转换数据量和所述导入记录报表表明的导入数据量,判断数据导入是否完整;
若所述转换数据量和所述导入数据量相等,则表明数据导入完整;
若所述转换数据量和所述导入数据量不相等则表明数据导入不完整,则输出用于表明导入数据不完整的提醒信息。
10.如权利要求9所述的装置,其特征在于,还包括失败处理模块,用于:
在确定数据导入不完整时,根据所述转换数据量和所述导入数据量之间的差异确定导入失败的数据;
将所述导入失败的数据存储至平面文件中,以便根据所述平面文件将所述导入失败的数据重新导入。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711451023.4A CN110019135A (zh) | 2017-12-27 | 2017-12-27 | 一种将关系型数据迁移至HBase数据库的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711451023.4A CN110019135A (zh) | 2017-12-27 | 2017-12-27 | 一种将关系型数据迁移至HBase数据库的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110019135A true CN110019135A (zh) | 2019-07-16 |
Family
ID=67187064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711451023.4A Pending CN110019135A (zh) | 2017-12-27 | 2017-12-27 | 一种将关系型数据迁移至HBase数据库的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110019135A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110674113A (zh) * | 2019-09-24 | 2020-01-10 | 咪咕音乐有限公司 | 数据的一键迁移方法、装置、电子设备及存储介质 |
CN110825813A (zh) * | 2019-11-14 | 2020-02-21 | 中国民航信息网络股份有限公司 | 一种数据迁移方法及装置 |
CN110880131A (zh) * | 2019-11-11 | 2020-03-13 | 深圳前海微众银行股份有限公司 | 一种发票的生成方法及装置 |
CN111309719A (zh) * | 2020-05-13 | 2020-06-19 | 深圳市赢时胜信息技术股份有限公司 | 一种对应HBase数据库的数据规范方法及系统 |
CN112286910A (zh) * | 2020-11-23 | 2021-01-29 | 中国农业银行股份有限公司 | 一种数据校验方法及装置 |
CN112667649A (zh) * | 2020-12-23 | 2021-04-16 | 北京浪潮数据技术有限公司 | 一种数据信息的查询方法、装置、设备及存储介质 |
CN112783856A (zh) * | 2019-11-07 | 2021-05-11 | 北京沃东天骏信息技术有限公司 | 数据迁移方法和装置 |
CN112817930A (zh) * | 2019-11-15 | 2021-05-18 | 北京沃东天骏信息技术有限公司 | 一种数据迁移的方法和装置 |
CN112836108A (zh) * | 2021-01-29 | 2021-05-25 | 宝宝巴士股份有限公司 | 一种爬取第三方网站数据的方法及终端 |
CN113901031A (zh) * | 2021-10-21 | 2022-01-07 | 掌阅科技股份有限公司 | 数据库迁移方法、电子设备及存储介质 |
CN115600560A (zh) * | 2022-09-28 | 2023-01-13 | 中电金信软件有限公司(Cn) | 一种数据转换方法、装置、系统、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495906A (zh) * | 2011-12-23 | 2012-06-13 | 天津神舟通用数据技术有限公司 | 一种实现断点续传的增量式数据迁移方法 |
CN103631907A (zh) * | 2013-11-26 | 2014-03-12 | 中国科学院信息工程研究所 | 一种将关系型数据迁移至HBase的方法及系统 |
CN104504008A (zh) * | 2014-12-10 | 2015-04-08 | 华南师范大学 | 一种基于嵌套的SQL到HBase的数据迁移算法 |
CN106446166A (zh) * | 2016-09-23 | 2017-02-22 | 郑州云海信息技术有限公司 | 数据从db2数据库迁移到k‑db数据库的方法和装置 |
CN107037978A (zh) * | 2016-10-31 | 2017-08-11 | 福建亿榕信息技术有限公司 | 数据迁移校正方法及系统 |
-
2017
- 2017-12-27 CN CN201711451023.4A patent/CN110019135A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495906A (zh) * | 2011-12-23 | 2012-06-13 | 天津神舟通用数据技术有限公司 | 一种实现断点续传的增量式数据迁移方法 |
CN103631907A (zh) * | 2013-11-26 | 2014-03-12 | 中国科学院信息工程研究所 | 一种将关系型数据迁移至HBase的方法及系统 |
CN104504008A (zh) * | 2014-12-10 | 2015-04-08 | 华南师范大学 | 一种基于嵌套的SQL到HBase的数据迁移算法 |
CN106446166A (zh) * | 2016-09-23 | 2017-02-22 | 郑州云海信息技术有限公司 | 数据从db2数据库迁移到k‑db数据库的方法和装置 |
CN107037978A (zh) * | 2016-10-31 | 2017-08-11 | 福建亿榕信息技术有限公司 | 数据迁移校正方法及系统 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110674113A (zh) * | 2019-09-24 | 2020-01-10 | 咪咕音乐有限公司 | 数据的一键迁移方法、装置、电子设备及存储介质 |
CN112783856A (zh) * | 2019-11-07 | 2021-05-11 | 北京沃东天骏信息技术有限公司 | 数据迁移方法和装置 |
CN110880131A (zh) * | 2019-11-11 | 2020-03-13 | 深圳前海微众银行股份有限公司 | 一种发票的生成方法及装置 |
CN110825813A (zh) * | 2019-11-14 | 2020-02-21 | 中国民航信息网络股份有限公司 | 一种数据迁移方法及装置 |
CN110825813B (zh) * | 2019-11-14 | 2022-05-03 | 中国民航信息网络股份有限公司 | 一种数据迁移方法及装置 |
CN112817930A (zh) * | 2019-11-15 | 2021-05-18 | 北京沃东天骏信息技术有限公司 | 一种数据迁移的方法和装置 |
CN111309719A (zh) * | 2020-05-13 | 2020-06-19 | 深圳市赢时胜信息技术股份有限公司 | 一种对应HBase数据库的数据规范方法及系统 |
CN112286910A (zh) * | 2020-11-23 | 2021-01-29 | 中国农业银行股份有限公司 | 一种数据校验方法及装置 |
CN112286910B (zh) * | 2020-11-23 | 2024-04-12 | 中国农业银行股份有限公司 | 一种数据校验方法及装置 |
CN112667649A (zh) * | 2020-12-23 | 2021-04-16 | 北京浪潮数据技术有限公司 | 一种数据信息的查询方法、装置、设备及存储介质 |
CN112836108A (zh) * | 2021-01-29 | 2021-05-25 | 宝宝巴士股份有限公司 | 一种爬取第三方网站数据的方法及终端 |
CN113901031A (zh) * | 2021-10-21 | 2022-01-07 | 掌阅科技股份有限公司 | 数据库迁移方法、电子设备及存储介质 |
CN115600560A (zh) * | 2022-09-28 | 2023-01-13 | 中电金信软件有限公司(Cn) | 一种数据转换方法、装置、系统、电子设备及存储介质 |
CN115600560B (zh) * | 2022-09-28 | 2023-06-20 | 中电金信软件有限公司 | 一种数据转换方法、装置、系统、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110019135A (zh) | 一种将关系型数据迁移至HBase数据库的方法及装置 | |
CN106339222B (zh) | 一种服务实现方法及装置 | |
CN108509392B (zh) | 多机构对账方法、系统、计算机设备和存储介质 | |
CN107395353A (zh) | 一种区块链共识方法及装置 | |
CN104267938B (zh) | 一种流式计算的应用快速开发部署的方法及装置 | |
CN107798120B (zh) | 一种数据转换方法及装置 | |
CN109739762A (zh) | 一种应用程序的性能测试方法与装置 | |
CN107153646B (zh) | 一种数据处理方法和设备 | |
CN106960143A (zh) | 用户账号的识别方法及装置、存储介质、电子设备 | |
CN113722289A (zh) | 构建数据服务的方法、装置、电子设备及介质 | |
CN110058829A (zh) | 一种图像数据处理方法、装置及存储介质 | |
CN112559525B (zh) | 数据检查系统、方法、装置和服务器 | |
CN110532021A (zh) | 分布式控制系统的组态文件的处理方法及装置 | |
CN106294299A (zh) | 一种报表生成方法及装置 | |
CN111190814A (zh) | 软件测试用例的生成方法、装置、存储介质及终端 | |
CN110399309A (zh) | 一种测试数据生成方法及装置 | |
CN109871290A (zh) | 应用于Java的调用堆栈追踪方法、装置和存储介质 | |
CN110198327B (zh) | 一种数据传输方法及相关设备 | |
CN108632047A (zh) | 一种资费数据的确定方法及装置 | |
CN108268468A (zh) | 一种大数据的分析方法及系统 | |
CN108829802A (zh) | 关联日志回放方法及装置 | |
CN107656796A (zh) | 一种虚拟机冷迁移方法、系统及设备 | |
CN109857654A (zh) | 一种自动生成测试用例的时序流程图的方法、装置及系统 | |
CN112765014B (zh) | 一种用于多用户同时操作的自动测试系统及工作方法 | |
CN110019260B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190716 |