一种数据表连接方法及装置制造方法及图纸

技术编号:14766459 阅读:79 留言:0更新日期:2017-03-08 10:54
本发明专利技术公开了一种数据表连接方法及装置,涉及数据库领域,解决了传统方式对跨数据库的数据表进行连接时操作复杂且资源开销过大的问题。本发明专利技术的方法包括:获取多个待查询数据表所在数据库的访问地址和访问权限;根据所述访问地址和所述访问权限,创建所述多个待查询数据表各自对应的内存数据集;分别将所述各自的内存数据集进行转化,得到所述多个待查询数据表各自对应的表征数据集;其中,所述表征数据集为二维表数据集或多维表数据集;将所述各自对应的表征数据集进行连接,以得到临时复合数据表。

【技术实现步骤摘要】

本专利技术涉及数据库领域,特别是涉及一种数据表连接方法及装置
技术介绍
数据库是按照数据结构对数据进行组织、存储和管理的仓库,随着日常生活中产生的数据量越来越大,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统,多种类型的数据库在各个方面都得到广泛的应用。通常在数据库中存储有多张不同的数据表,这些数据表的属性各不相同,当需要跨数据表查询数据时,需要对数据表进行连接查询(Join),在同一数据库中,Join操作无需任何其他开销即可完成,但是在不同数据库中跨数据表查询数据时,由于数据库的类型不同,因此跨数据库的数据表通常不能直接进行连接。传统的对不同数据库之间的数据表进行连接的方式:主要是通过建立第三方数据库,并分别将不同数据库中的数据表移植到第三方数据库中,然后在第三方数据库中进行数据表连接操作。现有技术的缺陷为:由于需要建立第三方数据库,因此耗费一定的资源,并且当多种类型数据表在第三方数据库进行连接时,往往还需要进行结构改,这样一来还会造成对数据库的误操作。
技术实现思路
有鉴于此,本专利技术提出了一种数据表连接方法及装置,主要目的在于解决传统方式对数据表进行连接时操作复杂且资源开销过大的问题。依据本专利技术的第一个方面,本专利技术提出了一种数据表连接方法,包括:获取多个待查询数据表所在数据库的访问地址和访问权限;根据所述访问地址和所述访问权限,创建所述多个待查询数据表各自对应的内存数据集;分别将所述各自对应的内存数据集进行转化,得到所述多个待查询数据表各自对应的表征数据集;其中,所述表征数据集为二维表数据集或多维表数据集;将所述各自对应的表征数据集进行连接,以得到临时复合数据表。依据本专利技术的第二个方面,本专利技术提出了一种数据表连接装置,包括:获取单元,用于获取多个待查询数据表所在数据库的访问地址和访问权限;创建单元,用于根据所述访问地址和所述访问权限,创建所述多个待查询数据表各自的内存数据集;转化单元,用于分别将所述各自对应的内存数据集进行转化,得到多个待查询数据表各自对应的表征数据集;其中,所述表征数据集为二维表数据集或多维表数据集;连接单元,用于将所述各自对应的表征数据集进行连接,以得到临时复合数据表。借由上述技术方案,本专利技术实施例提供的一种数据表连接方法及装置,能够根据获取的不同源数据库的访问地址和访问权限读取不同源或同源数据库中的待查询数据表,并创建各自的内存数据集,分别将各自的内存数据集转化为各自对应的表征数据集,并将各自对应的表征数据集注册为临时表后进行连接,得到临时复合数据表。而现有技术中对跨数据库数据表进行连接时需要更改源数据库的结构或者需要建立第三方数据库,不仅操作复杂而且资源开销过大,因此与现有技术中的缺陷相比,本专利技术实施例通过创建临时表的方式对跨数据库的数据表进行连接,减少了改动源数据库结构可能带来的误操作同时减少了建立第三方数据库造成的资源开销。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了本专利技术实施例提供的一种数据表连接方法的流程图;图2示出了本专利技术实施例提供的一种数据表连接装置的组成框图;图3示出了本专利技术实施例提供的一种数据表连接装置的组成框图。具体实施方式下面将参照附图更加详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。在日常使用数据库的过程中,常常会遇到在数据库之间查询数据的情况,例如,由于数据库的类型不同,因此跨数据库的数据表通常不能直接进行连接查询。而现有技术中对跨数据库数据表进行连接查询时需要更改源数据库的结构或者需要建立第三方数据库,不仅操作复杂而且资源开销过大。为了解决上述问题,本专利技术实施例提供了一种数据表连接方法,如图1所示,该方法包括:101、获取多个待查询数据表所在数据库的访问地址和访问权限。其中,多个待查询数据表可以在同源数据库或不同源数据库中。具体而言,要查询数据库中的数据表首先需要获取数据库的访问地址和访问权限,此处为了便于理解本专利技术,在后续实施例中均以步骤101中需要获取不同源数据库的访问地址和访问权限为例进行说明。102、根据访问地址和访问权限,创建多个待查询数据表各自对应的内存数据集。具体而言,例如当获取到不同源数据库的访问地址和访问权限后,可以读取不同源数据库中的待查询数据表,由于不同源数据库的类型不同,其各自的数据表的类型也不同,无法进行连接查询。因此本专利技术实施例的步骤102可以读取的不同源数据库中的待查询数据表,创建出多个待查询数据表各自对应的内存数据集。以其中一个内存数据集为例,在访问该内存数据集时,指针只会指向与操作相关的部分,例如存在一个面向列的数据结构,其中一个实现为Int的数组,另一个实现为Float的数组,如果只需要访问Int字段,那么该内存数据集的指针可以只访问Int数组,避免了对整个数据结构的扫描。103、分别将各自对应的内存数据集进行转化,得到多个待查询数据表各自对应的表征数据集。其中,根据不应用需求,该表征数据集可以二维表数据集或多维表数据集。例如,当得到不同源数据库中的待查询数据表对应的内存数据集后,本专利技术实施例的步骤103需要将待查询数据表各自对应的内存数据集转化为各自对应的二维表数据集,该二维表数据集与上述内存数据集的主要区别在于,该二维表数据集的每一列都带有名称和类型,从而能够得知所存数据元素的具体内部结构。104、将各自对应的表征数据集进行连接,以得到临时复合数据表。具体而言,可以分别将各自对应的二维表数据集或多维表数据集注册为临时表并进行连接,得到临时复合数据表。其中,可以将临时表以内表连接、相邻表连接和/或全表连接等方式进行连接。进一步地,内表连接可以是指待查询数据的特征值内在关联性选择连接;相邻表连可以是指当前指针所处位置的数据表为中心(确定出中心数据表),在该中心表左右相邻表进行连接;全表连接可以是指以某一个或多个事件所形成的全部数据表进行多关连性连接。例如,当步骤103得到由行(row)对象以及描述行对象中每列数据类型的架构组成的二维表数据集后,本专利技术实施例的步骤104需要分别将各自对应的二维表数据集注册为临时表,并将各自对应的临时表进行连接得到临时复合数据表,然后通过结构化查询语言从临时复合数据表中进行数据查询。本专利技术实施例提供的一种数据表连接方法,能够根据获取的同源或不同源数据库的访问地址和访问权限读取不同源数据库中的待查询数据表,并创建各自的内存数据集,分别将各自的内存数据集转化为各自对应的二维表数据集或多维表数据集(即表征数据集),并将各自对应的表征数据集注册为本文档来自技高网...
一种数据表连接方法及装置

【技术保护点】
一种数据表连接方法,其特征在于,所述方法包括:获取多个待查询数据表所在数据库的访问地址和访问权限;根据所述访问地址和所述访问权限,创建所述多个待查询数据表各自对应的内存数据集;分别将所述各自对应的内存数据集进行转化,得到所述多个待查询数据表各自对应的表征数据集;其中,所述表征数据集为二维表数据集或多维表数据集;将所述各自对应的表征数据集进行连接,以得到临时复合数据表。

【技术特征摘要】
1.一种数据表连接方法,其特征在于,所述方法包括:获取多个待查询数据表所在数据库的访问地址和访问权限;根据所述访问地址和所述访问权限,创建所述多个待查询数据表各自对应的内存数据集;分别将所述各自对应的内存数据集进行转化,得到所述多个待查询数据表各自对应的表征数据集;其中,所述表征数据集为二维表数据集或多维表数据集;将所述各自对应的表征数据集进行连接,以得到临时复合数据表。2.根据权利要求1所述的方法,其特征在于,所述根据所述访问地址和所述访问权限,创建所述多个待查询数据表各自对应的内存数据集,包括:根据所述访问地址和所述访问权限,读取数据库中待查询数据表;确定所述多个待查询数据表对应的行和/或列;以及,创建所述多个待查询数据表各自对应的内存数据集。3.根据权利要求1所述的方法,其特征在于,所述根据所述访问地址和所述访问权限,创建所述多个待查询数据表各自对应的内存数据集,包括:根据所述访问地址和所述访问权限,确定不同源数据库中的待查询数据表;以及,创建各自对应的弹性分布式数据集。4.根据权利要求1所述的方法,其特征在于,所述将所述各自对应的表征数据集进行连接,以得到临时复合数据表包括:分别将所述各自对应的表征数据集注册为临时表;将所述临时表进行内表连接、相邻表连接和/或全表连接。5.根据权利要求1所述的方法,其特征在于,在将所述各自对应的表征数据集进行连接,以得到临时复合数据表之后,所述方法还包括:使用结构化查询语言在所述临时复合数据表中进行数据查询,将查询结果转化为对应的表征数据集;判断所述查询结果是否需要保存;若需要保存,则将所述查询结果按指定格式保存;若不...

【专利技术属性】
技术研发人员:高旭何恺铎黄健洪超
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:北京;11

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

1