本发明属于数据处理领域,具体涉及一种关系型数据库文件快速处理装置及方法。
背景技术:
随着互联网的快速发展,互联网中数据的种类和规模都在以惊人的速度增长,大数据时代的来临已经成为现实。目前,由于传统的关系型数据库(如mysql、oracle、sqlserver、postgresql、db2等)在应对大数据的存储、查询和分析等需求时,出现了性能和规模上的瓶颈,因此各种非关系型数据库(nosql数据库,如hbase、mongodb、redis、hadoop、couchdb、ealsticsearch等)应运而生,成为数据存储和分析领域的一支新生力量。
对非关系型数据库的存储性能和规模优势,越来越多的互联网应用商开始转向非关系型数据库。例如,在同一个应用中同时使用关系型数据库和非关系型数据库、或是将数据在关系型数据库和非关系型数据库之间进行导入导出、分析非关系型数据库的数据结构等。
但是,由于非关系型数据库一般没有固定的存储规则(或模型),因此,将数据从关系型数据库导入非关系型数据库时,需要通过应用的性能和规模需求动态设计存储方式,这种方式无法批量进行转换,转换方式复杂,且现有的数据迁移方法需要花费开发人员大量的时间,效率低。
技术实现要素:
为了解决现有技术中存在的上述问题,本发明提供了一种关系型数据库文件快速处理装置及方法。本发明要解决的技术问题通过以下技术方案实现:
本发明实施例提供了一种关系型数据库文件快速处理方法,包括以下步骤:
s1、接收第一类型数据文件;
s2、对所述第一类型数据文件进行处理,得到格式转换文件;
s3、根据所述格式转换文件生成第二类型数据文件。
在一个具体实施例中,所述第一类型数据文件为关系型数据库文件,所述第二类型数据文件为非关系型数据库文件;
所述步骤s2还包括:
s201、根据所述关系型数据库文件的表模式生成对应的实体类对象;
s202、根据所述关系型数据库文件的表模式调用对应的数据库驱动;
s203、利用所述数据库驱动查询所述关系型数据库文件中的关系数据;
s204、根据所述关系数据对所述实体类对象进行赋值,得到赋值的实体类对象;
s205、将所述赋值的实体类对象转换为第一格式转换文件。
在一个具体实施例中,所述步骤s3还包括:
s301、判断是否预先建立有第一预设映射文件,若是则执行步骤s302,若否,则执行步骤s303;
s302、根据所述第一预设映射文件对所述第一格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
s303、调用映射引擎创建第一映射关系,并根据所述第一映射关系将所述第一格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
在一个具体实施例中,所述第一类型数据文件为文档型数据文件,所述第二类型数据文件为非关系型数据库文件;
所述步骤s2还包括:
s211、根据所述文档型数据文件选择对应的处理模板;
s212、根据所述处理模板对所述文档型数据文件进行解析;
s213、将解析后的数据文件转换为第二格式转换文件。
在一个具体实施例中,所述步骤s3还包括:
s311、判断是否预先建立有第二预设映射文件,若是则执行步骤s302,若否,则执行步骤s313;
s312、根据所述第二预设映射文件对所述第二格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
s313、调用映射引擎创建第二映射关系,并根据所述第二映射关系将所述第二格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
本发明同时提供另一种关系型数据库文件快速处理装置,包括:
数据接收单元,用于接收第一类型数据文件;
数据处理单元,连接所述数据接收单元,用于对所述第一类型数据文件进行处理,得到格式转换文件;
数据生成单元,连接所述数据处理单元,用于根据所述格式转换文件生成第二类型数据文件。
在一个具体实施例中,所述第一类型数据文件为关系型数据库文件,所述第二类型数据文件为非关系型数据库文件;
所述数据处理单元还包括:
对象生成子单元,用于根据所述关系型数据库文件的表模式生成对应的实体类对象;
数据库调用子单元,用于根据所述关系型数据库文件的表模式调用对应的数据库驱动;
数据库查询子单元,连接所述数据库调用子单元,用于利用所述数据库驱动查询所述关系型数据库文件中的关系数据;
对象赋值子单元,连接所述数据库查询子单元和所述对象生成子单元,用于根据所述关系数据对所述实体类对象进行赋值,得到赋值的实体类对象;
第一格式转换子单元,连接所述对象赋值子单元,用于将所述赋值的实体类对象转换为第一格式转换文件。
在一个具体实施例中,所述数据生成单元还包括:
第一映射判断子单元,用于判断是否预先建立有第一预设映射文件,若是则发送第一执行命令,若否,则发送第二执行命令;
第一映射执行子单元,连接所述映射判断子单元,用于根据所述第一预设映射文件对所述第一格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
第一文件导入子单元,连接所述映射判断子单元,用于调用映射引擎创建第一映射关系,并根据所述第一映射关系将所述第一格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
在一个具体实施例中,所述第一类型数据文件为文档型数据文件,所述第二类型数据文件为非关系型数据库文件;
所述数据处理单元还包括:
模板选择子单元,用于根据所述文档型数据文件选择对应的处理模板;
文件解析子单元,连接所述模板选择单元,用于根据所述处理模板对所述文档型数据文件进行解析;
第二格式转换子单元,连接所述文件解析单元,将解析后的数据文件转换为第二格式转换文件。
在一个具体实施例中,所述数据生成单元还包括:
第二映射判断子单元,用于判断是否预先建立有第二预设映射文件,若是则发送第三执行命令,若否,则发送第四执行命令;
第二映射执行子单元,连接所述第二映射判断子单元,用于根据所述第二预设映射文件对所述第二格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
第二文件导入子单元,连接所述第二映射执行单元,用于调用映射引擎创建第二映射关系,并根据所述第二映射关系将所述第二格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
与现有技术相比,本发明的有益效果:
本发明的关系型数据库文件快速处理通过预先设计的处理模板,对输入的关系型数据库文件选择对应的模板自动生成对应的转换格式,从而完成向非关系型数据库的转换,转换效率高,转换简单,便于后续进行处理。
附图说明
图1为本发明实施例提供的一种关系型数据库文件快速处理装置模块框图;
图2为本发明实施例提供的一种关系型数据库文件快速处理方法流程图;
图3为本发明实施例提供的一种关系型数据库文件快速处理方法s2步骤流程图;
图4为本发明实施例提供的一种关系型数据库文件快速处理方法s3步骤流程图;
图5为本发明另一实施例提供的关系型数据库文件快速处理方法s2步骤流程图;
图6为本发明另一实施例提供的关系型数据库文件快速处理方法s3步骤流程图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
实施例一
请参见图1,图1为本发明实施例提供的一种关系型数据库文件快速处理装置模块框图,包括:
数据接收单元1,用于接收第一类型数据文件;
数据处理单元2,连接所述数据接收单元1,用于对所述第一类型数据文件进行处理,得到格式转换文件;
数据生成单元3,连接所述数据处理单元2,用于根据所述格式转换文件生成第二类型数据文件。
在一个具体实施例中,所述第一类型数据文件为关系型数据库文件,所述第二类型数据文件为非关系型数据库文件;
所述数据处理单元还包括:
对象生成子单元,用于根据所述关系型数据库文件的表模式生成对应的实体类对象;
数据库调用子单元,用于根据所述关系型数据库文件的表模式调用对应的数据库驱动;
数据库查询子单元,连接所述数据库调用子单元,用于利用所述数据库驱动查询所述关系型数据库文件中的关系数据;
对象赋值子单元,连接所述数据库查询子单元和所述对象生成子单元,用于根据所述关系数据对所述实体类对象进行赋值,得到赋值的实体类对象;
第一格式转换子单元,连接所述对象赋值子单元,用于将所述赋值的实体类对象转换为第一格式转换文件。
在一个具体实施例中,所述数据生成单元还包括:
第一映射判断子单元,用于判断是否预先建立有第一预设映射文件,若是则发送第一执行命令,若否,则发送第二执行命令;
第一映射执行子单元,连接所述映射判断子单元,用于根据所述第一预设映射文件对所述第一格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
第一文件导入子单元,连接所述映射判断子单元,用于调用映射引擎创建第一映射关系,并根据所述第一映射关系将所述第一格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
在一个具体实施例中,所述第一类型数据文件为文档型数据文件,所述第二类型数据文件为非关系型数据库文件;
所述数据处理单元还包括:
模板选择子单元,用于根据所述文档型数据文件选择对应的处理模板;
文件解析子单元,连接所述模板选择单元,用于根据所述处理模板对所述文档型数据文件进行解析;
第二格式转换子单元,连接所述文件解析单元,将解析后的数据文件转换为第二格式转换文件。
在一个具体实施例中,所述数据生成单元还包括:
第二映射判断子单元,用于判断是否预先建立有第二预设映射文件,若是则发送第三执行命令,若否,则发送第四执行命令;
第二映射执行子单元,连接所述第二映射判断子单元,用于根据所述第二预设映射文件对所述第二格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
第二文件导入子单元,连接所述第二映射执行单元,用于调用映射引擎创建第二映射关系,并根据所述第二映射关系将所述第二格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
本发明的关系型数据库文件快速处理方法通过预先设计的处理模板,对输入的关系型数据库文件选择对应的模板自动生成对应的转换格式,从而完成向非关系型数据库的转换,转换效率高,转换简单,便于后续进行处理。
实施例二
请参见图2,图2为本发明实施例提供的一种关系型数据库文件快速处理方法流程图,包括以下步骤:
s1、接收第一类型数据文件;
s2、对所述第一类型数据文件进行处理,得到格式转换文件;
s3、根据所述格式转换文件生成第二类型数据文件。
在一个具体实施例中,所述第一类型数据文件为关系型数据库文件,所述第二类型数据文件为非关系型数据库文件;
请参见图3,所述步骤s2还包括:
s201、根据所述关系型数据库文件的表模式生成对应的实体类对象;
s202、根据所述关系型数据库文件的表模式调用对应的数据库驱动;
s203、利用所述数据库驱动查询所述关系型数据库文件中的关系数据;
s204、根据所述关系数据对所述实体类对象进行赋值,得到赋值的实体类对象;
s205、将所述赋值的实体类对象转换为第一格式转换文件。
在一个具体实施例中,请参见图4,所述步骤s3还包括:
s301、判断是否预先建立有第一预设映射文件,若是则执行步骤s302,若否,则执行步骤s303;
s302、根据所述第一预设映射文件对所述第一格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
s303、调用映射引擎创建第一映射关系,并根据所述第一映射关系将所述第一格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
其中第一预设映射文件为xml映射文件,把关系数据库中的表模式定义导出成xml文档,通过xml文档解析器解析文档中的内容;然后,解析的结果被表模式转换器读取,并对所有表进行模式的变换,之后创建新的表模式定义文档,把变换后的结果保存在定义文档之中;最后,由表模式适配器从定义文档中读取新的表模式定义,最终在非关系数据库中创建对应的表并把数据迁移到新建的表中。
具体的,在将关系型数据库(如mysql、oracle、sqlserver、postgresql、db2)数据导入非关系型数据库(如hbase、mongodb、redis、hadoop、couchdb、ealsticsearch等)中时,数据处理引擎会根据关系型数据库的表通过模板技术自动生成需要的实体类对象,数据查询引擎会根据不同的数据库动态调用不同的数据驱动,从关系型数据库查询数据并运用反射技术把查询出的数据自动进行赋值,赋值后的实休类对象会通过数据转换引擎把数据转换json格式或xml格式的数据,如果有人工建立的xml映射文件,数据处理引擎会根据映射文件建立非关系型数据库的mapping,如果没有映射文件,数据处理引擎会调用mapping引擎自动创建需要的mapping,最后将映射后的数据导入到非关系型数据库中。
本发明的关系型数据库文件快速处理方法通过预先设计的处理模板,对输入的关系型数据库文件选择对应的模板自动生成对应的转换格式,从而完成向非关系型数据库的转换,转换效率高,转换简单,便于后续进行处理。
实施例三
在一个具体实施例中,所述第一类型数据文件为文档型数据文件,所述第二类型数据文件为非关系型数据库文件;
请参见图5,所述步骤s2还包括:
s211、根据所述文档型数据文件选择对应的处理模板;
s212、根据所述处理模板对所述文档型数据文件进行解析;
s213、将解析后的数据文件转换为第二格式转换文件。
在一个具体实施例中,请参见图6,所述步骤s3还包括:
s311、判断是否预先建立有第二预设映射文件,若是则执行步骤s302,若否,则执行步骤s313;
s312、根据所述第二预设映射文件对所述第二格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
s313、调用映射引擎创建第二映射关系,并根据所述第二映射关系将所述第二格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
具体的,在将文档类型数据(如txt、excel、cvs等)导入非关系型数据库(如hbase、mongodb、redis、hadoop、couchdb、ealsticsearch等)中时,数据处理引擎会根据文件类型选择不同文本的处理模板,解析文件内容,把解析后的文件内容转换json或xml格式的数据。如果有人工建立的xml映射文件,数据处理引擎会根据映射文件建立非关系型数据库的mapping,如果没有映射文件,数据处理引擎会调用mapping引擎自动创建需要的mapping,最后将映射后的数据导入到非关系型数据库中。
本发明的关系型数据库文件快速处理方法通过预先设计的处理模板,对输入的关系型数据库文件选择对应的模板自动生成对应的转换格式,从而完成向非关系型数据库的转换,转换效率高,转换简单,便于后续进行处理。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
1.一种关系型数据库文件快速处理装置,其特征在于,包括:
数据接收单元,用于接收第一类型数据文件;
数据处理单元,连接所述数据接收单元,用于对所述第一类型数据文件进行处理,得到格式转换文件;
数据生成单元,连接所述数据处理单元,用于根据所述格式转换文件生成第二类型数据文件;
所述第一类型数据文件为关系型数据库文件,所述第二类型数据文件为非关系型数据库文件;
所述数据处理单元还包括:
对象生成子单元,用于根据所述关系型数据库文件的表模式生成对应的实体类对象;
数据库调用子单元,用于根据所述关系型数据库文件的表模式调用对应的数据库驱动;
数据库查询子单元,连接所述数据库调用子单元,用于利用所述数据库驱动查询所述关系型数据库文件中的关系数据;
对象赋值子单元,连接所述数据库查询子单元和所述对象生成子单元,用于根据所述关系数据对所述实体类对象进行赋值,得到赋值的实体类对象;
第一格式转换子单元,连接所述对象赋值子单元,用于将所述赋值的实体类对象转换为第一格式转换文件。
2.根据权利要求1所述的关系型数据库文件快速处理装置,其特征在于,所述数据生成单元还包括:
第一映射判断子单元,用于判断是否预先建立有第一预设映射文件,若是则发送第一执行命令,若否,则发送第二执行命令;
第一映射执行子单元,连接所述映射判断子单元,用于根据所述第一预设映射文件对所述第一格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
第一文件导入子单元,连接所述映射判断子单元,用于调用映射引擎创建第一映射关系,并根据所述第一映射关系将所述第一格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
3.一种关系型数据库文件快速处理方法,其特征在于,包括以下步骤:
s1、接收第一类型数据文件;
s2、对所述第一类型数据文件进行处理,得到格式转换文件;
s3、根据所述格式转换文件生成第二类型数据文件;
所述第一类型数据文件为关系型数据库文件,所述第二类型数据文件为非关系型数据库文件;
所述步骤s2还包括:
s201、根据所述关系型数据库文件的表模式生成对应的实体类对象;
s202、根据所述关系型数据库文件的表模式调用对应的数据库驱动;
s203、利用所述数据库驱动查询所述关系型数据库文件中的关系数据;
s204、根据所述关系数据对所述实体类对象进行赋值,得到赋值的实体类对象;
s205、将所述赋值的实体类对象转换为第一格式转换文件。
4.根据权利要求3所述的关系型数据库文件快速处理方法,其特征在于,所述步骤s3还包括:
s301、判断是否预先建立有第一预设映射文件,若是则执行步骤s302,若否,则执行步骤s303;
s302、根据所述第一预设映射文件对所述第一格式转换文件进行映射,将映射后的文件导入到对应的非关系型数据库;
s303、调用映射引擎创建第一映射关系,并根据所述第一映射关系将所述第一格式转换文件映射后,将映射后的文件导入到对应的非关系型数据库,形成非关系型数据库文件。
技术总结