CN109669980A - 数据跨库访问方法及装置 - Google Patents

数据跨库访问方法及装置 Download PDF

Info

Publication number
CN109669980A
CN109669980A CN201811575160.3A CN201811575160A CN109669980A CN 109669980 A CN109669980 A CN 109669980A CN 201811575160 A CN201811575160 A CN 201811575160A CN 109669980 A CN109669980 A CN 109669980A
Authority
CN
China
Prior art keywords
database
data
target
access
hive
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.)
Granted
Application number
CN201811575160.3A
Other languages
English (en)
Other versions
CN109669980B (zh
Inventor
李森林
王纯斌
贾金元
张永飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Sefon Software Co Ltd
Original Assignee
Chengdu Sefon Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Sefon Software Co Ltd filed Critical Chengdu Sefon Software Co Ltd
Priority to CN201811575160.3A priority Critical patent/CN109669980B/zh
Publication of CN109669980A publication Critical patent/CN109669980A/zh
Application granted granted Critical
Publication of CN109669980B publication Critical patent/CN109669980B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本申请提供一种数据跨库访问方法及装置。所述方法包括:接收来自用户终端的数据访问请求,并解析得到所有目标数据库标识,及每个目标数据库标识对应的目标数据特征;在存储的所有Hive数据映射表中查找目标数据库标识对应的目标映射表;当查找到时,在目标映射表中查询与目标数据特征对应的特征信息;访问安装有与该目标映射表对应的数据库的目标服务器,并获取与查询到的特征信息匹配的目标获取数据;在得到所有目标映射表各自对应的目标获取数据后,对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给用户终端。所述方法能够实现多个数据库之间的数据跨库关联访问,提高整体的数据获取及时性,确保大数据分析的实现进度。

Description

数据跨库访问方法及装置
技术领域
本申请涉及数据库跨库访问技术领域,具体而言,涉及一种数据跨库访问方法及装置。
背景技术
随着科学技术的不断发展,大数据技术的应用愈发广泛,而伴随着各个行业对大数据技术的使用,不同样式的数据通常会采用不同类型的数据库进行存储,例如,通用式业务系统的实时数据通常会被存放到采用oracle数据库样式或MySQL数据库样式搭建形成的关系型数据库中,而将通用式业务系统的历史数据存放到采用HBase数据库样式或Hive数据库样式搭建形成的非关系型数据库中。在这种情况下,大数据技术需要单独地对各数据库进行数据查询,并相应地从各数据库处获取到想要的数据后,方能实现进行大数据分析功能。但这种数据获取方式存在数据获取及时性不强的问题,影响大数据分析的实现进度。
发明内容
为了克服现有技术中的上述不足,本申请的目的在于提供一种数据跨库访问方法及装置,所述方法能够实现多个数据库之间的数据跨库关联访问,提高整体的数据获取及时性,确保大数据分析的实现进度。
就方法而言,本申请实施例提供一种数据跨库访问方法,所述方法应用于安装有Hive数据库的访问管理服务器,所述访问管理服务器存储有至少一个关系型数据库和/或至少一个非关系型数据库各自在该访问管理服务器处的Hive数据映射表,所述方法包括:
接收来自用户终端的数据访问请求,并对所述数据访问请求进行解析,得到所述数据访问请求所包括的所有目标数据库标识,及每个目标数据库标识对应的目标数据特征;
在存储的所有Hive数据映射表中查找每个目标数据库标识各自对应的目标映射表;
当查找到与所述目标数据库标识对应的目标映射表时,在所述目标映射表中查询与该目标数据库标识的目标数据特征对应的特征信息;
访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据;
在得到所有目标映射表各自对应的目标获取数据后,对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给所述用户终端。
就装置而言,本申请实施例提供一种数据跨库访问装置,所述装置应用于安装有Hive数据库的访问管理服务器,所述访问管理服务器存储有至少一个关系型数据库和/或至少一个非关系型数据库各自在该访问管理服务器处的Hive数据映射表,所述装置包括:
请求解析模块,用于接收来自用户终端的数据访问请求,并对所述数据访问请求进行解析,得到所述数据访问请求所包括的所有目标数据库标识,及每个目标数据库标识对应的目标数据特征;
表项查找模块,用于在存储的所有Hive数据映射表中查找每个目标数据库标识各自对应的目标映射表;
特征查询模块,用于当查找到与所述目标数据库标识对应的目标映射表时,在所述目标映射表中查询与该目标数据库标识的目标数据特征对应的特征信息;
访问获取模块,用于访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据;
数据反馈模块,用于在得到所有目标映射表各自对应的目标获取数据后,对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给所述用户终端。
相对于现有技术而言,本申请实施例提供的数据跨库访问方法及装置具有以下有益效果:所述方法能够实现多个数据库之间的数据跨库关联访问,提高整体的数据获取及时性,确保大数据分析的实现进度。所述方法应用于安装有Hive数据库的访问管理服务器,所述访问管理服务器存储有至少一个关系型数据库和/或至少一个非关系型数据库各自在该访问管理服务器处的Hive数据映射表。首先,所述方法在接收到来自用户终端的数据访问请求后,会在存储的所有Hive数据映射表中查找所述数据访问请求所包括的每个目标数据库标识各自对应的目标映射表;其次,所述方法在当查找到与所述目标数据库标识对应的目标映射表时,在所述目标映射表中查询与所述数据访问请求所包括的该目标数据库标识的目标数据特征对应的特征信息;然后,所述方法将访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据;最后,所述方法在得到所有目标映射表各自对应的目标获取数据后,对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给所述用户终端,从而实现多个数据库之间的数据跨库关联访问,提高整体的数据获取及时性,确保大数据分析的实现进度。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举本申请较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对本申请权利要求保护范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的访问管理服务器的方框示意图。
图2为本申请实施例提供的数据跨库访问方法的流程示意图之一。
图3为本申请实施例提供的数据跨库访问方法的流程示意图之二。
图4为本申请实施例提供的数据跨库访问方法的流程示意图之三。
图5为本申请实施例提供的数据跨库访问方法的流程示意图之四。
图6为本申请实施例提供的数据跨库访问装置的方框示意图之一。
图7为本申请实施例提供的数据跨库访问装置的方框示意图之二。
图8为本申请实施例提供的数据跨库访问装置的方框示意图之三。
图标:10-访问管理服务器;11-存储器;12-处理器;13-通信单元;100-数据跨库访问装置;110-请求解析模块;120-表项查找模块;130-特征查询模块;140-访问获取模块;150-数据反馈模块;160-提示反馈模块;170-表项创建模块。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本申请的描述中,需要说明的是,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图1,是本申请实施例提供的访问管理服务器10的方框示意图。在本申请实施例中,所述访问管理服务器10与至少一个安装有关系型数据库的数据服务器和/或至少一个安装有非关系型数据库的数据服务器通信连接,并与用户终端通信连接,所述访问管理服务器10、安装有关系型数据库的数据服务器及安装有非关系型数据库的数据服务器共同服务于同一通用式业务系统。所述访问管理服务器10中安装有Hive数据库,所述Hive数据库可用于存储某个通用式业务系统的历史数据或实时数据,所述关系型数据库可用于存储该通用式业务系统的实时数据,所述非关系型数据库可用于存储该通用式业务系统的历史数据,所述用户终端可通过访问所述访问管理服务器10的方式,获取到所述关系型数据库、所述非关系型数据库及所述访问管理服务器10的Hive数据库中的至少一个数据库中的数据,以实现多个数据库之间的数据跨库关联访问,提高整体的数据获取及时性,确保大数据分析的实现进度。其中,所述通用式业务系统可以是,但不限于,小说网站登录系统、网络购物登录系统、网银登录系统等;所述服务器可以是,但不限于,网页服务器、云端服务器、集群服务器等;所述用户终端可以是,但不限于,智能手机、个人电脑(personal computer,PC)、平板电脑、个人数字助理(personal digital assistant,PDA)、移动上网设备(mobileInternet device,MID)等。
所述访问管理服务器10中的Hive数据库的数目可以为多个,每个Hive数据库各自存储的数据类型可以不同。安装有关系型数据库的数据服务器中的关系型数据库的数目可以为多个,每个关系型数据库各自存储的数据类型可以不同,其中所述关系型数据库可以是oracle数据库与MySQL数据库中的至少一种。安装有非关系型数据库的数据服务器中的关系型数据库的数目可以为多个,每个非关系型数据库各自存储的数据类型可以不同,其中所述关系型数据库可以是HBase数据库及Hive数据库中的至少一种。
在本实施例中,所述访问管理服务器10包括数据跨库访问装置100、存储器11、处理器12及通信单元13。所述存储器11、处理器12及通信单元13各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述存储器11、处理器12及通信单元13这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
在本实施例中,所述存储器11可用于存储至少一个关系型数据库和/或至少一个非关系型数据库各自在该访问管理服务器10处的Hive数据映射表,该Hive数据映射表中记录有对应数据库中的数据的特征信息,所述特征信息用于表示对应数据的属性,例如,所述特征信息可以是数据产生的时间信息、数据的具体容量信息、数据的数据类型信息中的一种或多种组合。所述访问管理服务器10的Hive数据库在所述存储器11中也存在对应的Hive数据映射表。该访问管理服务器10的Hive数据库对应创建在所述存储器11内,以实现数据存储功能。该访问管理服务器10可在所述存储器11中存储SparkSQL的软件功能程序,以通过SparkSQL进行Hive数据映射表的创建,或基于某个Hive数据映射表访问对应数据库并获取该数据库中的数据。在本实施例中,所述存储器11还可以存储程序,所述处理器12在接收到执行指令后,可相应地执行所述程序。
在本实施例中,所述处理器12可以是一种具有信号的处理能力的集成电路芯片。所述处理器12可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)、网络处理器(Network Processor,NP)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。
在本实施例中,所述通信单元13用于网络建立所述访问管理服务器10与其他电子设备之间的通信连接,并通过所述网络收发数据。例如,所述访问管理服务器10通过所述通信单元13及Hive数据库的JDBC(Java Data Base Connectivity,Java数据库连接)驱动连接服务建立与其他数据服务器或用户终端之间的通信连接,并接收其他数据服务器或用户终端输入的SparkSQL的标准指令语句,其中所述标准指令语句包括映射表创建语句及数据访问获取语句。
在本实施例中,所述数据跨库访问装置100包括至少一个能够以软件或固件的形式存储于所述存储器11中或固化在所述访问管理服务器10的操作系统中的软件功能模块。所述处理器12可用于执行所述存储器11存储的可执行模块,例如所述数据跨库访问装置100所包括的软件功能模块及计算机程序等。所述访问管理服务器10通过所述数据跨库访问装置100在用户终端进行数据访问获取时,实现多个数据库之间的数据跨库关联访问,提高整体的数据获取及时性,确保大数据分析的实现进度。
可以理解的是,图1所示的框图仅为访问管理服务器10的一种结构组成示意图,所述访问管理服务器10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
请参照图2,是本申请实施例提供的数据跨库访问方法的流程示意图之一。在本申请实施例中,所述数据跨库访问方法应用于上述的访问管理服务器10,所述访问管理服务器10安装有Hive数据库,所述访问管理服务器10存储有至少一个关系型数据库和/或至少一个非关系型数据库各自在该访问管理服务器10处的Hive数据映射表。下面对图2所示的数据跨库访问方法的具体流程和步骤进行详细阐述。
步骤S210,接收来自用户终端的数据访问请求,并对所述数据访问请求进行解析,得到所述数据访问请求所包括的所有目标数据库标识,及每个目标数据库标识对应的目标数据特征。
在本实施例中,具有数据获取需求的用户可通过用户终端向所述访问管理服务器10发送由SparkSQL的标准指令语句形成的数据访问请求的方式,通过所述访问管理服务器10获取到与该数据访问请求对应的数据。所述访问管理服务器10在接收到所述数据访问请求后,可基于SparkSQL的软件功能程序对该数据访问请求进行数据解析,得到该数据访问请求所包括的所有目标数据库标识,及每个目标数据库标识对应的目标数据特征,其中所述数据库标识用于表示对应数据库的身份信息,每个数据库对应一个数据库标识,所述目标数据库标识用于表示所述数据访问请求所要获取数据的数据库,所述数据特征用于指示所述数据访问请求所要获取数据的属性信息。
步骤S220,在存储的所有Hive数据映射表中查找每个目标数据库标识各自对应的目标映射表。
在本实施例中,所述访问管理服务器10在得到所述数据访问请求所包括的所有目标数据库标识后,可通过所述SparkSQL的软件功能程序在当前存储的所有Hive数据映射表中查找与所述目标数据库标识对应的目标映射表。
步骤S230,当查找到与所述目标数据库标识对应的目标映射表时,在所述目标映射表中查询与该目标数据库标识的目标数据特征对应的特征信息。
在本实施例中,当所述访问管理服务器10中存储有与某个数据库标识对应的Hive数据映射表,且查找到与某个目标数据库标识对应的目标映射表时,表明所述访问管理服务器10当前与该目标映射表对应的数据库所在的数据服务器通信连接,所述访问管理服务器10可直接访问该数据服务器进行数据获取,其中所述该目标映射表对应的数据库所在的数据服务器可以是所述访问管理服务器10本身,也可以是其他安装有关系型数据库的数据服务器,还可以是其他安装有非关系型数据库的数据服务器。此时,所述访问管理服务器10将在该目标数据库标识对应的目标映射表中记录的特征信息中,查询与该目标数据库标识的目标数据特征对应的特征信息,并根据查询结果得到对应匹配的特征信息。
步骤S240,访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据。
在本实施例中,当所述访问管理服务器10得到该数据访问请求所包括的某个目标数据库标识在对应Hive数据映射表中需要的特征信息后,所述访问管理服务器10将根据该Hive数据映射表所对应的数据库类型,调用SparkSQL的软件功能程序中匹配的数据代码访问该Hive数据映射表对应的数据库的目标服务器,并基于所述数据代码获取该目标服务器在对应数据库中存储的与查询到的所述特征信息匹配的目标获取数据。
可选地,所述访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据的步骤包括:
针对每个目标映射表,检测该目标映射表是否为该访问管理服务器10的Hive数据库所对应的Hive数据映射表;
若检测到为该访问管理服务器10的Hive数据映射表,则直接从该访问管理服务器10的Hive数据库中获取与所述特征信息匹配的目标获取数据;
若检测到不为该访问管理服务器10的Hive数据映射表,则对该目标映射表进行数据库类型识别;
当该目标映射表所对应的数据库为关系型数据库时,访问安装有该目标映射表所对应的关系型数据库的目标服务器,并从该目标服务器中的所述关系型数据库中获取与所述特征信息匹配的目标获取数据;
当该目标映射表所对应的数据库为非关系型数据库时,访问安装有该目标映射表所对应的非关系型数据库的目标服务器,并从该目标服务器中的所述非关系型数据库中获取与所述特征信息匹配的目标获取数据。
在本实施例的一种实施方式中,所述访问管理服务器10可针对自身安装的Hive数据库单独创建HiveHandler1的数据代码来获取该Hive数据库中的数据,可针对外部数据服务器所安装的Hive数据库创建HiveHandler2的数据代码来获取该数据服务器的Hive数据库中的数据,可针对外部数据服务器所安装的oracle数据库或MySQL数据库创建JDBCHandler的数据代码来获取该数据服务器的oracle数据库或MySQL数据库中的数据,可针对外部数据服务器所安装的HBase数据库创建HBaseHandler的数据代码来获取该数据服务器的HBase数据库中的数据,以实现多个数据库之间的数据跨库关联访问,提高整体的数据获取及时性,确保大数据分析的实现进度。
步骤S250,在得到所有目标映射表各自对应的目标获取数据后,对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给所述用户终端。
在本实施例中,当所述访问管理服务器10基于SparkSQL的软件功能程序获取到所有目标映射表各自对应的目标获取数据后,会基于该SparkSQL的软件功能程序对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给所述用户终端,以完成所述访问管理服务器10当前所能提供的数据访问获取服务。
请参照图3,是本申请实施例提供的数据跨库访问方法的流程示意图之二。在本申请实施例中,所述数据跨库访问方法还可以包括步骤S260。
步骤S260,当未查找到与所述目标数据库标识对应的目标映射表时,向所述用户终端反馈用于表示无法访问该目标数据库标识所对应的数据库的第一提示信息。
在本实施例中,当所述访问管理服务器10未能在当前存储的所有Hive数据映射表中查找到某个目标数据库标识所对应的目标映射表时,表明所述访问管理服务器10当前与该目标数据库标识所对应的数据库所在的数据服务器之间未曾建立通信连接,所述访问管理服务器10将通过SparkSQL的软件功能程序向所述用户终端反馈用于表示无法访问该目标数据库标识所对应的数据库的第一提示信息。
请参照图4,是本申请实施例提供的数据跨库访问方法的流程示意图之三。在本申请实施例中,所述数据跨库访问方法还可以包括步骤S310、步骤S320及步骤S330,其中所述步骤S310、步骤S320及步骤S330用于进行Hive数据映射表的创建过程。
步骤S310,接收来自用户终端的映射表创建请求,并对所述映射表创建请求进行解析,得到所述映射表创建请求所包括的所有待建表数据库标识。
在本实施例中,具有数据库联合需求的用户可通过用户终端向所述访问管理服务器10发送由SparkSQL的标准指令语句形成的映射表创建请求的方式,建立某个外部数据服务器与该访问管理服务器10之间的通信连接,并在所述访问管理服务器10处创建该外部数据服务器所安装的数据库所对应的Hive数据映射表。所述访问管理服务器10在接收到所述映射表创建请求后,可基于SparkSQL的软件功能程序对该映射表创建请求进行数据解析,得到该映射表创建请求所包括的所有待建表数据库标识,其中所述待建表数据库标识用于表示所述映射表创建请求所针对的想要创建Hive数据映射表的数据库。
步骤S320,在存储的所有Hive数据映射表中查找每个待建表数据库标识各自对应的数据映射表。
在本实施例中,所述访问管理服务器10在得到所述映射表创建请求所包括的所有待建表数据库标识后,可通过所述SparkSQL的软件功能程序在当前存储的所有Hive数据映射表中查找与所述待建表数据库标识对应的数据映射表。
步骤S330,当未查找到与所述待建表数据库标识对应的数据映射表时,根据该待建表数据库标识所对应数据库的数据库类型及特征信息,创建该待建表数据库标识所对应的数据库在该访问管理服务器10处的Hive数据映射表。
在本实施例中,当所述访问管理服务器10未能在当前存储的所有Hive数据映射表中查找到某个待建表数据库标识对应的数据映射表时,表明所述访问管理服务器10当前未曾与该待建表数据库标识所对应的数据库所在的数据服务器之间建立通信连接,所述访问管理服务器10将通过SparkSQL的软件功能程序,建立该访问管理服务器10与该待建表数据库标识所对应的数据库所在的数据服务器之间的通信连接,并创建出该待建表数据库标识所对应的数据库在该访问管理服务器10处的Hive数据映射表。
可选地,根据该待建表数据库标识所对应数据库的数据库类型及特征信息,创建该待建表数据库标识所对应的数据库在该访问管理服务器10处的Hive数据映射表的步骤包括:
若该待建表数据库标识所对应数据库为关系型数据库,建立该访问管理服务器10与安装有该待建表数据库标识所对应的关系型数据库的数据服务器之间的通信连接,在该访问管理服务器10处创建该关系型数据库对应的Hive数据映射表,并在所述Hive数据映射表中写入该关系型数据库的特征信息;
若该待建表数据库标识所对应数据库为非关系型数据库,建立该访问管理服务器10与安装有该待建表数据库标识所对应的非关系型数据库的数据服务器之间的通信连接,在该访问管理服务器10处创建该非关系型数据库对应的Hive数据映射表,并在所述Hive数据映射表中写入该非关系型数据库的特征信息。
其中,所述访问管理服务器10可基于SparkSQL的软件功能程序中的上述HiveHandler1的数据代码创建自身安装的Hive数据库的Hive数据映射表;所述访问管理服务器10可基于SparkSQL的软件功能程序中的上述HiveHandler2的数据代码创建其他数据服务器上安装的Hive数据库的Hive数据映射表;所述访问管理服务器10可基于SparkSQL的软件功能程序中的上述JDBCHandler的数据代码创建其他数据服务器上安装的oracle数据库或MySQL数据库的Hive数据映射表;所述访问管理服务器10可基于SparkSQL的软件功能程序中的上述HBaseHandler的数据代码创建其他数据服务器上安装的HBase数据库的Hive数据映射表。
请参照图5,是本申请实施例提供的数据跨库访问方法的流程示意图之四。在本申请实施例中,所述数据跨库访问方法还可以包括步骤S340。
步骤S340,当查找到与所述待建表数据库标识对应的数据映射表时,向所述用户终端反馈用于表示该访问管理服务器10中存在与该待建表数据库标识所对应的数据库匹配的Hive数据映射表的第二提示信息。
在本实施例中,当所述访问管理服务器10在当前存储的所有Hive数据映射表中查找到某个待建表数据库标识对应的数据映射表时,表明所述访问管理服务器10当前已与该待建表数据库标识所对应的数据库所在的数据服务器之间建立通信连接,所述访问管理服务器10无需针对该待建表数据库标识所对应的数据库进行Hive数据映射表创建工作,所述访问管理服务器10将过SparkSQL的软件功能程序向所述用户终端反馈用于表示该访问管理服务器10中存在与该待建表数据库标识所对应的数据库匹配的Hive数据映射表的第二提示信息。
请参照图6,是本申请实施例提供的数据跨库访问装置100的方框示意图之一。在本申请实施例中,所述数据跨库访问装置100包括请求解析模块110、表项查找模块120、特征查询模块130、访问获取模块140及数据反馈模块150。
所述请求解析模块110,用于接收来自用户终端的数据访问请求,并对所述数据访问请求进行解析,得到所述数据访问请求所包括的所有目标数据库标识,及每个目标数据库标识对应的目标数据特征。
在本实施例中,所述请求解析模块110可以执行图2中的步骤S210,具体的描述可参照上文中对步骤S210的详细描述。
所述表项查找模块120,用于在存储的所有Hive数据映射表中查找每个目标数据库标识各自对应的目标映射表。
在本实施例中,所述表项查找模块120可以执行图2中的步骤S220,具体的描述可参照上文中对步骤S220的详细描述。
所述特征查询模块130,用于当查找到与所述目标数据库标识对应的目标映射表时,在所述目标映射表中查询与该目标数据库标识的目标数据特征对应的特征信息。
在本实施例中,所述特征查询模块130可以执行图2中的步骤S230,具体的描述可参照上文中对步骤S230的详细描述。
所述访问获取模块140,用于访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据。
在本实施例中,所述访问获取模块140可以执行图2中的步骤S240,具体的描述可参照上文中对步骤S240的详细描述。
所述数据反馈模块150,用于在得到所有目标映射表各自对应的目标获取数据后,对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给所述用户终端。
在本实施例中,所述数据反馈模块150可以执行图2中的步骤S250,具体的描述可参照上文中对步骤S250的详细描述。
请参照图7,是本申请实施例提供的数据跨库访问装置100的方框示意图之二。在本申请实施例中,所述数据跨库访问装置100还可以包括提示反馈模块160。
所述提示反馈模块160,用于当未查找到与所述目标数据库标识对应的目标映射表时,向所述用户终端反馈用于表示无法访问该目标数据库标识所对应的数据库的第一提示信息。
在本实施例中,所述提示反馈模块160可以执行图3中的步骤S260,具体的描述可参照上文中对步骤S260的详细描述。
请参照图8,是本申请实施例提供的数据跨库访问装置100的方框示意图之三。在本申请实施例中,所述数据跨库访问装置100还可以包括表项创建模块170。
所述请求解析模块110,还用于接收来自用户终端的映射表创建请求,并对所述映射表创建请求进行解析,得到所述映射表创建请求所包括的所有待建表数据库标识。
在本实施例中,所述请求解析模块110还可以执行图4中的步骤S310,具体的描述可参照上文中对步骤S310的详细描述。
所述表项查找模块120,还用于在存储的所有Hive数据映射表中查找每个待建表数据库标识各自对应的数据映射表。
在本实施例中,所述表项查找模块120还可以执行图4中的步骤S320,具体的描述可参照上文中对步骤S320的详细描述。
所述表项创建模块170,用于当未查找到与所述待建表数据库标识对应的数据映射表时,根据该待建表数据库标识所对应数据库的数据库类型及特征信息,创建该待建表数据库标识所对应的数据库在该访问管理服务器10处的Hive数据映射表。
在本实施例中,所述表项创建模块170可以执行图4中的步骤S330,具体的描述可参照上文中对步骤S330的详细描述。
所述提示反馈模块160,还用于当查找到与所述待建表数据库标识对应的数据映射表时,向所述用户终端反馈用于表示该访问管理服务器10中存在与该待建表数据库标识所对应的数据库匹配的Hive数据映射表的第二提示信息。
在本实施例中,所述提示反馈模块160还可以执行图5中的步骤S340,具体的描述可参照上文中对步骤S340的详细描述。
综上所述,在本申请实施例提供的数据跨库访问方法及装置中,所述方法能够实现多个数据库之间的数据跨库关联访问,提高整体的数据获取及时性,确保大数据分析的实现进度。所述方法应用于安装有Hive数据库的访问管理服务器,所述访问管理服务器存储有至少一个关系型数据库和/或至少一个非关系型数据库各自在该访问管理服务器处的Hive数据映射表。首先,所述方法在接收到来自用户终端的数据访问请求后,会在存储的所有Hive数据映射表中查找所述数据访问请求所包括的每个目标数据库标识各自对应的目标映射表;其次,所述方法在当查找到与所述目标数据库标识对应的目标映射表时,在所述目标映射表中查询与所述数据访问请求所包括的该目标数据库标识的目标数据特征对应的特征信息;然后,所述方法将访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据;最后,所述方法在得到所有目标映射表各自对应的目标获取数据后,对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给所述用户终端,从而实现多个数据库之间的数据跨库关联访问,提高整体的数据获取及时性,确保大数据分析的实现进度。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种数据跨库访问方法,其特征在于,应用于安装有Hive数据库的访问管理服务器,所述访问管理服务器存储有至少一个关系型数据库和/或至少一个非关系型数据库各自在该访问管理服务器处的Hive数据映射表,所述方法包括:
接收来自用户终端的数据访问请求,并对所述数据访问请求进行解析,得到所述数据访问请求所包括的所有目标数据库标识,及每个目标数据库标识对应的目标数据特征;
在存储的所有Hive数据映射表中查找每个目标数据库标识各自对应的目标映射表;
当查找到与所述目标数据库标识对应的目标映射表时,在所述目标映射表中查询与该目标数据库标识的目标数据特征对应的特征信息;
访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据;
在得到所有目标映射表各自对应的目标获取数据后,对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给所述用户终端。
2.根据权利要求1所述的方法,其特征在于,所述访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据的步骤包括:
针对每个目标映射表,检测该目标映射表是否为该访问管理服务器的Hive数据库所对应的Hive数据映射表;
若检测到为该访问管理服务器的Hive数据映射表,则直接从该访问管理服务器的Hive数据库中获取与所述特征信息匹配的目标获取数据;
若检测到不为该访问管理服务器的Hive数据映射表,则对该目标映射表进行数据库类型识别;
当该目标映射表所对应的数据库为关系型数据库时,访问安装有该目标映射表所对应的关系型数据库的目标服务器,并从该目标服务器中的所述关系型数据库中获取与所述特征信息匹配的目标获取数据;
当该目标映射表所对应的数据库为非关系型数据库时,访问安装有该目标映射表所对应的非关系型数据库的目标服务器,并从该目标服务器中的所述非关系型数据库中获取与所述特征信息匹配的目标获取数据。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当未查找到与所述目标数据库标识对应的目标映射表时,向所述用户终端反馈用于表示无法访问该目标数据库标识所对应的数据库的第一提示信息。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
接收来自用户终端的映射表创建请求,并对所述映射表创建请求进行解析,得到所述映射表创建请求所包括的所有待建表数据库标识;
在存储的所有Hive数据映射表中查找每个待建表数据库标识各自对应的数据映射表;
当未查找到与所述待建表数据库标识对应的数据映射表时,根据该待建表数据库标识所对应数据库的数据库类型及特征信息,创建该待建表数据库标识所对应的数据库在该访问管理服务器处的Hive数据映射表。
5.根据权利要求4所述的方法,其特征在于,所述根据该待建表数据库标识所对应数据库的数据库类型及特征信息,创建该待建表数据库标识所对应的数据库在该访问管理服务器处的Hive数据映射表的步骤包括:
若该待建表数据库标识所对应数据库为关系型数据库,建立该访问管理服务器与安装有该待建表数据库标识所对应的关系型数据库的数据服务器之间的通信连接,在该访问管理服务器处创建该关系型数据库对应的Hive数据映射表,并在所述Hive数据映射表中写入该关系型数据库的特征信息;
若该待建表数据库标识所对应数据库为非关系型数据库,建立该访问管理服务器与安装有该待建表数据库标识所对应的非关系型数据库的数据服务器之间的通信连接,在该访问管理服务器处创建该非关系型数据库对应的Hive数据映射表,并在所述Hive数据映射表中写入该非关系型数据库的特征信息。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当查找到与所述待建表数据库标识对应的数据映射表时,向所述用户终端反馈用于表示该访问管理服务器中存在与该待建表数据库标识所对应的数据库匹配的Hive数据映射表的第二提示信息。
7.根据权利要求1-6中任意一项所述的方法,其特征在于,所述关系型数据库包括oracle数据库及MySQL数据库中的至少一种,所述非关系型数据库包括HBase数据库及Hive数据库中的至少一种。
8.一种数据跨库访问装置,其特征在于,应用于安装有Hive数据库的访问管理服务器,所述访问管理服务器存储有至少一个关系型数据库和/或至少一个非关系型数据库各自在该访问管理服务器处的Hive数据映射表,所述装置包括:
请求解析模块,用于接收来自用户终端的数据访问请求,并对所述数据访问请求进行解析,得到所述数据访问请求所包括的所有目标数据库标识,及每个目标数据库标识对应的目标数据特征;
表项查找模块,用于在存储的所有Hive数据映射表中查找每个目标数据库标识各自对应的目标映射表;
特征查询模块,用于当查找到与所述目标数据库标识对应的目标映射表时,在所述目标映射表中查询与该目标数据库标识的目标数据特征对应的特征信息;
访问获取模块,用于访问安装有与该目标映射表对应的数据库的目标服务器,并获取该目标服务器中存储的与查询到的所述特征信息匹配的目标获取数据;
数据反馈模块,用于在得到所有目标映射表各自对应的目标获取数据后,对所有目标获取数据进行数据整理,并将整理得到的数据结果反馈给所述用户终端。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
提示反馈模块,用于当未查找到与所述目标数据库标识对应的目标映射表时,向所述用户终端反馈用于表示无法访问该目标数据库标识所对应的数据库的第一提示信息。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括表项创建模块;
所述请求解析模块,还用于接收来自用户终端的映射表创建请求,并对所述映射表创建请求进行解析,得到所述映射表创建请求所包括的所有待建表数据库标识;
所述表项查找模块,还用于在存储的所有Hive数据映射表中查找每个待建表数据库标识各自对应的数据映射表;
所述表项创建模块,用于当未查找到与所述待建表数据库标识对应的数据映射表时,根据该待建表数据库标识所对应数据库的数据库类型及特征信息,创建该待建表数据库标识所对应的数据库在该访问管理服务器处的Hive数据映射表;
所述提示反馈模块,还用于当查找到与所述待建表数据库标识对应的数据映射表时,向所述用户终端反馈用于表示该访问管理服务器中存在与该待建表数据库标识所对应的数据库匹配的Hive数据映射表的第二提示信息。
CN201811575160.3A 2018-12-21 2018-12-21 数据跨库访问方法及装置 Active CN109669980B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811575160.3A CN109669980B (zh) 2018-12-21 2018-12-21 数据跨库访问方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811575160.3A CN109669980B (zh) 2018-12-21 2018-12-21 数据跨库访问方法及装置

Publications (2)

Publication Number Publication Date
CN109669980A true CN109669980A (zh) 2019-04-23
CN109669980B CN109669980B (zh) 2020-09-18

Family

ID=66147081

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811575160.3A Active CN109669980B (zh) 2018-12-21 2018-12-21 数据跨库访问方法及装置

Country Status (1)

Country Link
CN (1) CN109669980B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110597782A (zh) * 2019-08-13 2019-12-20 上海陆家嘴国际金融资产交易市场股份有限公司 数据库动态切换方法、装置、计算机设备和存储介质
CN111259036A (zh) * 2020-01-10 2020-06-09 苏州达家迎信息技术有限公司 一种跨库跨表查询方法、设备、服务器及存储介质
CN112487075A (zh) * 2020-12-29 2021-03-12 中科院计算技术研究所大数据研究院 一种集成关系型和非关系型数据库数据转换的算子
CN113407565A (zh) * 2021-06-29 2021-09-17 中国民生银行股份有限公司 跨库数据查询方法、装置和设备
CN113806373A (zh) * 2021-09-29 2021-12-17 中国平安人寿保险股份有限公司 数据处理方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102262650A (zh) * 2010-05-24 2011-11-30 微软公司 链接的数据库
CN102725739A (zh) * 2009-05-18 2012-10-10 西山修平 虚拟单一存储装置上的元信息共享型分布式数据库系统
CN104090897A (zh) * 2013-12-19 2014-10-08 深圳市腾讯计算机系统有限公司 访问元数据的方法、服务器及系统
CN105721538A (zh) * 2015-12-30 2016-06-29 东莞市青麦田数码科技有限公司 数据访问的方法和装置
US20170068710A1 (en) * 2015-09-03 2017-03-09 Teradata Us, Inc. Collecting statistics in unconventional database environments
CN108711188A (zh) * 2018-02-24 2018-10-26 石化盈科信息技术有限责任公司 一种基于ar的工厂实时数据展示方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102725739A (zh) * 2009-05-18 2012-10-10 西山修平 虚拟单一存储装置上的元信息共享型分布式数据库系统
CN102262650A (zh) * 2010-05-24 2011-11-30 微软公司 链接的数据库
CN104090897A (zh) * 2013-12-19 2014-10-08 深圳市腾讯计算机系统有限公司 访问元数据的方法、服务器及系统
US20170068710A1 (en) * 2015-09-03 2017-03-09 Teradata Us, Inc. Collecting statistics in unconventional database environments
CN105721538A (zh) * 2015-12-30 2016-06-29 东莞市青麦田数码科技有限公司 数据访问的方法和装置
CN108711188A (zh) * 2018-02-24 2018-10-26 石化盈科信息技术有限责任公司 一种基于ar的工厂实时数据展示方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
石明辉: "基于JAVA的多数据库中间件的设计与实现", 《CNKI》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110597782A (zh) * 2019-08-13 2019-12-20 上海陆家嘴国际金融资产交易市场股份有限公司 数据库动态切换方法、装置、计算机设备和存储介质
CN110597782B (zh) * 2019-08-13 2023-03-21 未鲲(上海)科技服务有限公司 数据库动态切换方法、装置、计算机设备和存储介质
CN111259036A (zh) * 2020-01-10 2020-06-09 苏州达家迎信息技术有限公司 一种跨库跨表查询方法、设备、服务器及存储介质
CN111259036B (zh) * 2020-01-10 2022-10-11 苏州达家迎信息技术有限公司 一种跨库跨表查询方法、设备、服务器及存储介质
CN112487075A (zh) * 2020-12-29 2021-03-12 中科院计算技术研究所大数据研究院 一种集成关系型和非关系型数据库数据转换的算子
CN112487075B (zh) * 2020-12-29 2021-08-31 中科院计算技术研究所大数据研究院 一种集成关系型和非关系型数据库数据转换算子的方法
CN113407565A (zh) * 2021-06-29 2021-09-17 中国民生银行股份有限公司 跨库数据查询方法、装置和设备
CN113407565B (zh) * 2021-06-29 2024-01-30 中国民生银行股份有限公司 跨库数据查询方法、装置和设备
CN113806373A (zh) * 2021-09-29 2021-12-17 中国平安人寿保险股份有限公司 数据处理方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN109669980B (zh) 2020-09-18

Similar Documents

Publication Publication Date Title
CN109669980A (zh) 数据跨库访问方法及装置
CN103164507B (zh) 行与列数据库表在原生方向上的混合联接
US20210314354A1 (en) Techniques for determining threat intelligence for network infrastructure analysis
US9386117B2 (en) Server side data cache system
CN110019540B (zh) 企业图谱的实现方法、展示方法及装置、设备
CN107633016B (zh) 数据处理方法及装置和电子设备
CN109359237A (zh) 一种用于搜索寄宿程序的方法与设备
JP2003122765A (ja) 対応する複数の主体によって複数の識別コードが割当てられた対象物に対して特定の識別コードを決定するための方法
CN109284326A (zh) 一种数据库访问方法和装置
CA3154763A1 (en) Data operation method, device and system
CN105203121A (zh) 在地理应用程序中动态地整合离线和在线建议
US20220121638A1 (en) Index data structures and graphical user interface
CN103020225A (zh) 一种cpu型号识别方法和硬件检测系统
CN107066522A (zh) 数据库的访问方法和装置
CN108763524A (zh) 电子装置、聊天数据处理方法和计算机可读存储介质
US20060230020A1 (en) Improving Efficiency in processing queries directed to static data sets
CN110874365B (zh) 一种信息查询方法及其相关设备
CN108494870A (zh) 基于cdn的动态数据加载方法及装置
US20190286671A1 (en) Algorithmic computation of entity information from ip address
CN112989255A (zh) 一种标识解析系统
CN112231377A (zh) 数据映射方法、系统、装置、服务器和存储介质
CN111309932A (zh) 评论数据的查询方法、装置、设备及存储介质
KR100904362B1 (ko) 웹을 통해 에이전트 서비스의 검색이 가능한 캄, 이를이용한 에이전트 시스템 및 에이전트 시스템의 운영방법
CN111767481A (zh) 访问处理方法、装置、设备和存储介质
CN111464574A (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
GR01 Patent grant
GR01 Patent grant