CN111367983B - 数据库访问方法、系统、设备和存储介质 - Google Patents
数据库访问方法、系统、设备和存储介质 Download PDFInfo
- Publication number
- CN111367983B CN111367983B CN202010162443.6A CN202010162443A CN111367983B CN 111367983 B CN111367983 B CN 111367983B CN 202010162443 A CN202010162443 A CN 202010162443A CN 111367983 B CN111367983 B CN 111367983B
- Authority
- CN
- China
- Prior art keywords
- data
- database
- connection
- query
- access request
- 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.)
- Active
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/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24564—Applying rules; Deductive queries
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明实施例涉及一种数据库访问方法、系统、设备和存储介质,该方法包括:通过预先建立的虚拟连接获取客户端发送的数据库访问请求,该访问请求包括路由规则标识,客户端为配置有多种类型数据库连接驱动组件的终端,虚拟连接为客户端根据数据库访问请求和相应类型数据库的连接驱动组件建立的;根据路由规则标识和预设路由规则确定访问请求对应的目标数据库地址;将虚拟连接绑定到目标数据库地址对应的实际连接;将访问请求通过实际连接发送至目标数据库,得到请求数据;将请求数据通过虚拟连接发送至客户端。本发明实施例实现了不需要为每一种数据库都创建连接池便可以访问不同类型的数据库,减少了业务系统的数据池数量,提高了系统运行效率。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种数据库访问方法、系统、设备和存储介质。
背景技术
访问数据库是运营商业务系统中必不可少的一个环节,为了适应各种不同的、新兴的业务场景,产生了许多不同类型的数据库,比如关系型数据库、非关系型数据库以及缓存数据库。在一个业务系统的端到端处理流程中,经常需要同时访问多个不同类型的物理数据库。
目前,业务系统如果要同时访问多个不同类型的物理数据库,需要为待访问的每个数据库各自创建不同类型的连接池,并且业务系统一般都是多节点分布式部署,每个节点服务器也都需要创建连接池,业务系统通过连接池访问不同类型的数据库。
但是,这种方法导致整个业务系统在访问数据库时创建的连接池类型和数量过多,配置调整复杂,大大降低了业务系统性能。
发明内容
本发明实施例提供一种数据库访问方法、系统、设备和存储介质,以解决现有技术中业务系统在访问不同类型数据库时创建的连接池类型和数量过多,导致系统配置调整复杂,降低了业务系统性能的问题。
本发明实施例的第一方面提供一种方法,包括:
通过预先建立的虚拟连接获取客户端发送的数据库访问请求,所述数据库访问请求包括路由规则标识,所述虚拟连接为所述客户端和分布式数据访问层之间的通信连接;
根据所述路由规则标识和预设路由规则,确定所述访问请求对应的目标数据库地址;
将所述虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接;
将所述访问请求通过所述实际连接发送至所述目标数据库地址对应的目标数据库,得到所述数据库访问请求对应的请求数据;
将所述请求数据通过所述虚拟连接发送至客户端;
其中,所述客户端为配置有多种类型数据库连接驱动组件的终端,所述虚拟连接为所述客户端预先根据所述数据库访问请求和相应类型数据库的连接驱动组件建立的。
可选地,所述路由规则包括路由规则标识与查询数据、查询数据的数据类型、查询方式以及查询数据长度之间的对应关系;
所述根据所述路由规则标识和预设路由规则,确定所述访问请求对应的目标数据库地址,包括:
根据所述对应关系,确定所述路由规则标识对应的查询数据、查询数据的数据类型、查询方式和查询数据长度;
根据所述查询数据长度和所述查询数据的数据类型,确定所述查询数据的有效数据段;
根据所述有效数据段和查询方式,确定所述有效数据段对应的数据库地址;
将所述有效数据段对应的数据库地址确定为所述访问请求对应的目标数据库地址。
可选地,所述查询数据的数据类型包括字符串类型和数字类型;
所述根据所述查询数据长度和所述查询数据的数据类型,确定所述查询数据的有效数据段,包括:
若所述查询数据的数据类型为字符串类型,则按照所述查询数据长度截取所述查询数据,将截取得到的数据段确定为有效数据段;
若所述查询数据的数据类型为数字类型,则将所述查询数据确定为有效数据段。
可选地,所述查询方式包括第一方式和第二方式;
所述根据所述有效数据段和查询方式,确定所述有效数据段对应的目标数据库地址,包括:
若所述查询方式为第一方式,则根据所述有效数据段和预存的至少一条有效数据段与数据库地址的对应关系,确定所述有效数据段对应的数据库地址;
若所述查询方式为第二方式,则确定所述有效数据段所属的数据范围,并根据确定的数据范围和预存的至少一条数据范围与数据库地址的对应关系,确定所述有效数据段对应的数据库地址。
可选地,所述查询数据包括以下项中的任意一项或多项:
手机号码、用户标识编码、账户标识编码、客户标识编码、工号编码、地区编码、分区代码、区号、地区名称代码。
可选地,所述将所述请求数据通过所述虚拟连接发送至客户端之后,所述方法还包括:
将所述虚拟连接和所述实际连接解除绑定。
本发明实施例的第二方面提供一种数据库访问系统,包括:至少一个客户端、至少一个服务端节点以及至少一种类型的数据库;
其中,所述客户端配置有多种类型数据库连接驱动组件,所述服务端节点配置有分布式数据访问层中间件;
所述客户端用于接收用户输入的信息,并根据用户输入的信息生成数据库访问请求,根据所述数据库访问请求和预设负载均衡规则确定待连接的目标服务端节点,并根据相应类型的连接驱动组件建立与所述目标服务端节点之间的虚拟连接,通过所述虚拟连接将所述数据库访问请求发送至所述目标服务端节点;
所述目标服务端节点用于接收所述数据库访问请求,通过所述分布式数据访问层中间件确定所述数据库访问请求对应的目标数据库地址,将所述虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接,将所述访问请求通过所述实际连接发送至所述目标数据库地址对应的目标数据库,以得到所述数据库访问请求对应的请求数据;将所述请求数据通过所述虚拟连接发送至客户端。
可选地,所述连接驱动组件包括:应用程序接口、动态代理层和负载均衡模块;
其中,所述动态代理层用于根据用户输入的信息生成数据库访问请求;
所述负载均衡模块用于根据所述数据库访问请求和预设负载均衡规则确定待连接的目标服务端节点。
可选地,所述分布式数据访问层中间件包括:
网络通信层,用于与所述客户端通信;
解析层,用于解析所述客户端发送的数据库访问请求;
前端虚拟连接池,用于保存客户端建立的虚拟连接;
事务解析组件,用于在所述数据库访问请求中提取路由规则标识;
业务路由组件,用于获取所述路由规则标识,并根据所述路由规则标识和预设路由规则,确定所述访问请求对应的目标数据库地址;
后端数据库连接池,用于存储至少一种类型的数据库的实际连接;
虚拟连接注册模块和数据源连接模块,用于将所述虚拟连接和所述访问请求对应的目标数据库地址的实际连接绑定。
可选地,所述服务端节点还配置有负载监控模块和监控管理模块。
可选地,该数据库访问系统,还包括:分布式应用程序协调组件;
所述分布式应用程序协调组件与所述至少一个客户端和至少一个服务端节点通信。
本发明实施例的第三方面提供一种电子设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行本发明实施例第一方面所述的数据库访问方法。
本发明实施例的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现本发明实施例第一方面所述的数据库访问方法。
本发明实施例提供一种数据库访问方法、系统、设备和存储介质,通过预先建立在客户端和分布式数据访问层之间的虚拟连接,获取客户端发送的数据库访问请求,由于数据库访问请求中包括路由规则标识,因此,可以根据每一条请求的路由规则标识和预设路由规则,确定访问请求对应的目标数据库地址;然后将虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接;如此,可以将数据库访问请求通过实际连接发送至目标数据库,从而请求到需要的数据;最后将所述请求数据通过所述虚拟连接发送至客户端。本发明实施例通过虚拟连接和实际连接绑定,直接将请求发送至需要访问的数据库,且由于客户端为配置有多种类型数据库连接驱动组件的终端,且虚拟连接为客户端预先根据所述数据库访问请求和相应类型数据库的连接驱动组件建立的,因此,不仅实现了跨数据源访问不同类型的数据库,而且不需要为不同类型的数据库创建不同的连接池,减少了业务系统中数据池的类型和数量,提高了系统运行效率和性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一示例性实施例示出的数据库访问方法的应用场景图;
图2是本发明一示例性实施例示出的数据库访问方法的流程示意图;
图3是本发明另一示例性实施例示出的数据库访问方法的流程示意图;
图4是本发明一示例性实施例示出的数据库访问系统的结构示意图;
图5是本发明另一示例性实施例示出的数据库访问系统的结构示意图;
图6是本发明另一示例性实施例示出的数据库访问系统的结构示意图;
图7是本发明另一示例性实施例示出的数据库访问系统的结构示意图;
图8是本发明一示例性实施例示出的数据库访问装置的结构示意图;
图9是本发明另一示例性实施例示出的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
目前,业务系统如果要同时访问多个不同类型的物理数据库,需要为待访问的每个数据库各自创建不同类型的连接池,并且业务系统一般都是多节点分布式部署,每个节点服务器也都需要创建连接池,业务系统通过连接池访问不同类型的数据库。
但是,这种方法导致整个业务系统在访问数据库时创建的连接池类型和数量过多,配置调整复杂,大大降低了业务系统性能。
针对此缺陷,本发明实施例提供了一种数据库访问方法,在客户端和数据库之间架构一层分布式数据访问层,通过预先建立在客户端和分布式数据访问层之间的虚拟连接,获取客户端发送的数据库访问请求,由于数据库访问请求中包括路由规则标识,因此,可以根据每一条请求的路由规则标识和预设路由规则,确定访问请求对应的目标数据库地址;然后将虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接;如此,可以将数据库访问请求通过实际连接发送至目标数据库,从而请求到需要的数据;最后将所述请求数据通过所述虚拟连接发送至客户端。本发明实施例通过虚拟连接和实际连接绑定,直接将请求发送至需要访问的数据库,不仅实现了跨数据源访问不同类型的数据库,而且不需要为不同类型的数据库创建不同的连接池,减少了业务系统中数据池的类型和数量,提高了系统运行效率和性能。
图1是本发明一示例性实施例示出的数据库访问方法的应用场景图。
如图1所示,本实施例提供的场景的基本架构主要包括:客户端101,服务端102和数据存储端103,其中服务端102配置有分布式数据库访问层中间件,数据存储端包括多种类型得数据库。客户端101建立与服务端的分布式数据访问层中间件之间的虚拟连接,通过虚拟连接将数据库访问请求发送至服务端102,经过分布式数据访问层中间件对访问请求进行处理,得到目标数据库地址,根据目标数据库地址在数据存储端确定待访问的目标数据库,并将虚拟连接绑定到目标数据库的实际连接,以将数据库访问请求发送至目标数据库,获取待访问的数据。
图2是本发明一示例性实施例示出的数据库访问方法的流程示意图,本实施例中方法的执行主体可以是图1所示实施例中的服务端。
如图2所示,本实施例提供的方法可以包括以下步骤:
S201,通过预先建立的虚拟连接获取客户端发送的数据库访问请求,所述数据库访问请求包括路由规则标识,所述虚拟连接为所述客户端和分布式数据访问层之间的通信连接。
具体的,客户端配置有多种类型数据库的连接驱动组件,且虚拟连接为客户端预先根据所述数据库访问请求和相应类型数据库的连接驱动组件建立的,因此,当客户端的业务应用系统发出数据库请求信息时,根据请求信息确定相应类型的数据库连接驱动组件,以通过连接驱动组件建立与分布式数据访问层中间件之间的虚拟连接,此时,虚拟连接连接到的是分布式数据访问层中间件,该虚拟连接并没有直接绑定连接到数据库端。
其中,多种类型数据库包括关系型数据库、内存数据库以及非结构化数据库,关系型数据比如可以是Oracle、MySQL等,内存数据库比如可以是Redis等,非结构化数据库比如可以包括HDFS、Hbase等。
S202,根据所述路由规则标识和预设路由规则,确定所述访问请求对应的目标数据库地址。
具体的,数据库访问请求中包含路由规则信息,比如,路由规则标识,通过该路由规则标识和预设路由规则,便可以确定待访问的目标数据库的地址。
S203,将所述虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接。
具体的,各种类型数据库的连接端口(即数据库的实际连接)都存储于分布式数据访问层中间件的后端数据库连接池中。根据步骤S202中确定的目标数据库地址在后端数据库连接池中获取目标数据库的实际连接,然后将虚拟连接与实际连接绑定,即,将虚拟连接绑定到实际数据库的连接端口上,绑定后的虚拟连接可以连接到后端实际的目标数据库。
S204,将所述访问请求通过所述实际连接发送至所述目标数据库地址对应的目标数据库,得到所述数据库访问请求对应的请求数据。
通过虚拟连接绑定的实际连接端口将数据库访问请求发送至目标数据库,以获取相应的请求数据。
S205,将所述请求数据通过所述虚拟连接发送至客户端。
具体的,通过实际连接端口请求到目标数据库的相应数据后,将请求到的数据通过虚拟连接发送至客户端,以完成数据库访问的过程。
本实施例中,通过预先建立在客户端和分布式数据访问层之间的虚拟连接,获取客户端发送的数据库访问请求,由于数据库访问请求中包括路由规则标识,因此,可以根据每一条请求的路由规则标识和预设路由规则,确定访问请求对应的目标数据库地址;然后将虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接;如此,可以将数据库访问请求通过实际连接发送至目标数据库,从而请求到需要的数据;最后将所述请求数据通过所述虚拟连接发送至客户端。本发明实施例通过虚拟连接和实际连接绑定,直接将请求发送至需要访问的数据库,且由于客户端为配置有多种类型数据库连接驱动组件的终端,且虚拟连接为客户端预先根据所述数据库访问请求和相应类型数据库的连接驱动组件建立的,因此,不仅实现了跨数据源访问不同类型的数据库,而且对所有类型数据库只需要建立一个后端数据库连接池即可,不需要为不同类型的数据库创建不同的连接池,减少了业务系统中数据池的类型和数量,提高了系统运行效率和性能。
图3是本发明另一示例性实施例示出的数据库访问方法的流程示意图,本实施例在图2所示实施例的基础上,对数据库访问的过程进一步详细描述。
如图3所示,本实施例提供的方法可以包括以下步骤:
S301,通过预先建立的虚拟连接获取客户端发送的数据库访问请求,所述数据库访问请求包括路由规则标识,所述虚拟连接为所述客户端和分布式数据访问层之间的通信连接。
S302,根据所述路由规则标识和预设路由规则,确定所述路由规则标识对应的查询数据、查询数据的数据类型、查询方式和查询数据长度,所述路由规则包括路由规则标识与查询数据、查询数据的数据类型、查询方式以及查询数据长度之间的对应关系。
一些实施例中,查询数据可以包括以下项中的任意一项或多项:手机号码、用户标识编码、账户标识编码、客户标识编码、工号编码、地市编号、分区代码、区号、地区名称代码。
具体的,路由规则标识与查询数据、查询数据的数据类型、查询方式以及查询数据长度之间的对应关系如表1所示。
表1
如表1所示,查询方式(或者称为路由计算方式)有两种,分别为查表和数字范围比较这两种方式,查表方式用11表示,数字范围比较的方式用10表示。数据类型也分为两种,一种是字符串类型,用10表示;另一种是数字类型,用11表示。
示例性的,如果路由规则标识为14,则根据表1中的对应关系可以确定查询数据为工号编码,数据类型为字符串型,要截取的数据长度为6个字符,对应的查询方式为查表的方式。
需要说明的是,本实施例中的表1中的路由规则可以根据实际需求进行增加、删除以及更改。
S303,根据所述查询数据长度和所述查询数据的数据类型,确定所述查询数据的有效数据段。
具体的,查询数据的数据类型包括字符串类型和数字类型;按照所述查询数据长度截取所述查询数据,将截取得到的数据段确定为有效数据段。
比如,路由规则标识为10,则根据表1确定的查询数据为手机号码,对应的数据类型为字符串类型,数据长度为7,则取手机号码的前7个字节作为有效数据段。再比如,路由规则标识为16,则根据表1确定的查询数据为分区代码,对应的数据类型为数字类型,数据长度为2,则取分区代码的前2个数字作为有效数据段。
S304,根据所述有效数据段和查询方式,确定所述有效数据段对应的数据库地址。
具体的,若所述查询方式为查表方式,则根据所述有效数据段和预存的至少一条有效数据段与数据库地址的对应关系,确定所述有效数据段对应的数据库地址。若所述查询方式为数字范围比较的方式,则确定所述有效数据段所属的数据范围,并根据确定的数据范围和预存的至少一条数据范围与数据库地址的对应关系,确定所述有效数据段对应的数据库地址。
示例性的,路由规则标识为10,则根据表1确定的查询数据为手机号码,对应的数据类型为字符串类型,数据长度为7,则取手机号码的前7个字节作为有效数据段。将该手机号码的有效数据段与预存的查询表中的内容进行匹配,查询表中包含所有用户电话号码的前7个字节和数据库地址的对应关系,根据查询表中的对应关系,确定该手机号码的有效数据段对应的目标数据库地址。再比如,路由规则标识为11,则根据表1确定的查询数据为用户ID编码,数据类型为11,即为数字类型,数据长度为12,则截取用户ID编码的前12个数字作为有效数据段,对应的查询方式为10,即数字范围比较,则判断该用户ID编码的有效数据段属于第一数字范围,根据预存的至少一条数字范围和数据库地址的对应关系,确定第一数字范围对应的数据库地址,第一数字范围对应的数据库地址即为该用户ID编码的有效数据段对应的数据库地址。
S305,将所述有效数据段对应的数据库地址确定为所述访问请求对应的目标数据库地址。
S306,将所述虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接。
S307,将所述访问请求通过所述实际连接发送至所述目标数据库地址对应的目标数据库,得到所述数据库访问请求对应的请求数据。
S308,将所述请求数据通过所述虚拟连接发送至客户端。
S309,将所述虚拟连接和所述实际连接解除绑定。
具体的,当获取到数据库访问请求对应的请求数据后,解除虚拟连接和所述实际连接之间的绑定状态,解除绑定后,虚拟连接不在与实际数据库连接,当再次接收到数据库访问请求时,可以直接初始化该虚拟连接,并根据接收到的数据库访问请求重新将其绑定到需要访问的数据库。
需要说明的是,本实施例中未作详细说明的步骤可以参考图2所示实施例中相关步骤中的描述,此处不再赘述。
本实施例中,通过虚拟连接和实际连接绑定,直接将请求发送至需要访问的数据库,不仅实现了跨数据源访问不同类型的数据库,而且对所有类型数据库只需要建立一个后端数据库连接池即可,不需要为不同类型的数据库创建不同的连接池,减少了业务系统中数据池的类型和数量,提高了系统运行效率和性能。更进一步的,在数据库访问完成中,解除虚拟连接和实际连接之间的绑定状态,使得虚拟连接重新进入未绑定的状态,以及释放数据库的实际连接端口,当再次接收到数据库访问请求时,可以直接初始化该虚拟连接,并根据接收到的数据库访问请求重新将其绑定到需要访问的数据库的实际连接端口。无需为每一个数据库访问请求都重新建立虚拟连接,也不需要为各种类型的数据库都创建新的连接池,减少了整个系统的连接池数量,大大提高了数据库访问效率,提升了业务应用系统的性能。
图4是本发明一示例性实施例示出的数据库访问系统的结构示意图,本实施例在图2和图3所示的方法实施例的基础上,对整个数据库访问系统中各个组件的功能进行详细描述。
如图4所示,本实施例提供的数据库访问系统包括:应用服务层41,分布式数据访问层中间件42,数据存储层43。
其中,应用服务层41部署有多种类型数据库的连接驱动组件。
分布式数据访问层中间件42包括:网络通信层,前端虚拟连接池,事务解析组件,业务规则路由组件,虚拟连接注册组件,数据源连接组件,后端数据库连接池,JDBC协议通信层,以及监控管理组件。
数据存储层43包括:关系型数据库,内存数据库,以及非结构化数据库。
其中,后端数据库连接池中存储有数据存储层中所有类型数据库的实际连接,包括:实际连接端口,数据库地址,用户标识或密码等信息。
具体的,应用服务层的连接驱动组件用于根据业务系统的数据库访问请求建立与分布式数据访问层中间件之间的虚拟连接,并通过分布式数据访问层中间件中的网络通信层和分布式数据访问层中间件进行通信,以将虚拟连接存储在前端虚拟连接池中。当业务应用系统发起一个数据库访问请求时,通过虚拟连接发送至事务解析组件,事务解析组件解析数据库访问请求得到路由规则标识,并将解析得到的路由规则标识发送至业务规则路由组件,业务规则路由组件根据路由规则标识和预设路由规则确定路由规则标识对应的目标数据库地址,根据目标数据库地址在后端数据库连接池中获取目标数据库对应的实际连接端口,数据源连接组件和虚拟连接注册组件将虚拟连接绑定到目标数据库对应的实际连接端口,将数据库访问请求通过绑定的实际连接端口发送至目标数据库,以请求相应的数据,将请求到的数据通过实际连接端口和虚拟连接发送至应用服务层。最后,数据库访问完成后,应用服务层解除与数据访问层的虚拟连接之间的绑定状态,将虚拟连接重置成未绑定状态。
需要说明的是,本实施例中未作详细说明的部分,可参考有关方法是实施例中的解释,此处不再赘述。
本实施例中,通过在应用服务层和数据存储层之间架构一层分布式数据访问层中间件,实现跨数据源的访问,而对前端业务透明无感知,无需再为不同的数据源创建不同的连接池。
图5是本发明另一示例性实施例示出的数据库访问系统的结构示意图。
如图5所示,本实施例提供的系统包括:分布式应用程序协调组件(Zookeeper),至少一个客户端,至少一个服务端节点,以及,至少一种类型的数据库。
参见图5,多个服务端节点功能相同、同时工作。
其中,Zookeeper用于维护可用服务端列表,即负责注册分布式数据访问层集群中的服务端信息(比如,服务端的IP、端口、所属集群等),并分发给客户端,以使客户端根据可用服务端列表选择需要连接的服务端节点建立连接。当服务端节点宕机后,Zookeeper会将集群的变化推送给客户端,客户端根据计算规则选取新的服务节点。
具体的,参见图6,客户端61的连接驱动组件
包括:API接口、JDK动态代理层、和负载均衡模块。其中,API接口用于接收业务应用系统发出的请求信息,JDK动态代理层用于根据请求信息生成数据库访问请求包,该请求包包括调用的方法名、参数、路由规则标识,将数据库访问请求包发送至服务端;负载均衡模块自带负载均衡算法,用于进行负载计算,判断该客户端具体连接哪个服务端节点。
其中,客户端的负载均衡模块的负载均衡算法和负载均衡策略均有服务端配置,客户端获取配置后,在客户端进行负载计算,并根据预设负载均衡策略判断要连接的服务端节点。
服务端节点62部署有网络通信层,RPC解析层,线程模型控制层,前端虚拟连接池,事务解析组件,业务路由组件,数据源连接组件,虚拟连接注册组件,后端数据库连接池,JDBC通信协议层,Zookeeper管理工具,空闲连接检测工具,事务检测工具,负载监控组件,和DB管理者工具。
其中,RPC解析层用于解析客户端发送的数据库访问请求包,根据解析得到的数据调用后续处理流程线程模型控制层用于创建、管理和分配前端虚拟连接池,以及后端数据库连接池。
数据源连接和虚拟连接注册组件用于进行前端和后端连接的适配、绑定等操作。
业务路由组件用于结合运营商的业务模式,预设有多种路由规则,根据传入的路由规则标识,计算出请求所对应的具体数据库地址。
负载监控组件用于对服务端节点的连接调用进行过载保护,在业务繁忙时优先保证核心业务系统,降低边缘系统的连接调用。
监控管理模块用于实时监听检查服务端节点的运行状态,包括连接负载情况、SQL执行信息等,及时发出告警和预测信息,自动完成服务端节点的上线与下线。
空闲连接检测工具用于检测前端虚拟连接池中的虚拟连接和后端数据库连接池中的实际连接是否被占用,即,检测连接是否处于空闲状态。
Zookeeper管理工具用于与Zookeeper进行交互。
DB管理者工具用于配置服务端节点。
事务检测工具用于检测较大的数据库访问事务。
可以理解的是,为了使服务端节点中各个模块解耦,互相不持有引用,当各个模块生成对象时,都将生成对应统一发送给控制中心,由控制中心将生成对象发送至下一个处理模块。
具体的,参见图7,服务端节点处理一个请求的过程一般为:网络编解码模块71接收请求信息,该请求信息一般为二进制流,对请求信息编码生成请求包(Packet),将请求包发送至控制中心70,控制中心将请求包发送至RPC解析模块72,RPC解析模块接收请求包并解析,得到Runnable(线程接口),将线程接口发送至控制中心70,控制中心将Runnable发送至线程控制模块73,线程控制模块接收Runnable,生成Result(请求结果),将Result发送至结果处理模块74。
其中,线程控制模块可以采用当先线程池执行业务,也可以将业务发送至默认线程池执行,将核心业务发送至专用线程池执行。
本实施例中各个模块的详细功能描述请参考有关该方法的实施例中的描述,此处不做详细阐述说明。
图8是本发明一示例性实施例示出的数据库访问装置的结构示意图.
如图8所示,本实施例提供的装置包括:
获取模块801,用于通过预先建立的虚拟连接获取客户端发送的数据库访问请求,所述数据库访问请求包括路由规则标识,所述虚拟连接为所述客户端和分布式数据访问层之间的通信连接;
处理模块802,用于根据所述路由规则标识和预设路由规则,确定所述访问请求对应的目标数据库地址;所述处理模块还用于将所述虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接;将所述访问请求通过所述实际连接发送至所述目标数据库地址对应的目标数据库,得到所述数据库访问请求对应的请求数据;将所述请求数据通过所述虚拟连接发送至客户端。
本实施例中各个模块的详细功能描述请参考有关该方法的实施例中的描述,此处不做详细阐述说明。
图9为本发明实施例提供的电子设备的硬件结构示意图。如图9所示,本实施例提供的电子设备900包括:至少一个处理器901和存储器902。其中,处理器901、存储器902通过总线903连接。
在具体实现过程中,至少一个处理器901执行所述存储器902存储的计算机执行指令,使得至少一个处理器901执行上述方法实施例中的数据库访问方法。
处理器901的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
在上述的图9所示的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
本申请的另一实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述方法实施例中的数据库访问方法。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (12)
1.一种数据库访问方法,其特征在于,包括:
通过预先建立的虚拟连接获取客户端发送的数据库访问请求,所述数据库访问请求包括路由规则标识,所述虚拟连接为所述客户端和分布式数据访问层之间的通信连接;
根据所述路由规则标识和预设路由规则,确定所述访问请求对应的目标数据库地址;其中,所述路由规则包括路由规则标识与查询数据、查询数据的数据类型、查询方式以及查询数据长度之间的对应关系;所述根据所述路由规则标识和预设路由规则,确定所述访问请求对应的目标数据库地址,包括:根据所述对应关系,确定所述路由规则标识对应的查询数据、查询数据的数据类型、查询方式和查询数据长度;根据所述查询数据长度和所述查询数据的数据类型,确定所述查询数据的有效数据段;根据所述有效数据段和查询方式,确定所述有效数据段对应的数据库地址;将所述有效数据段对应的数据库地址确定为所述访问请求对应的目标数据库地址;
将所述虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接;
将所述访问请求通过所述实际连接发送至所述目标数据库地址对应的目标数据库,得到所述数据库访问请求对应的请求数据;
将所述请求数据通过所述虚拟连接发送至客户端;
其中,所述客户端为配置有多种类型数据库连接驱动组件的终端,所述虚拟连接为所述客户端预先根据所述数据库访问请求和相应类型数据库的连接驱动组件建立的。
2.根据权利要求1所述的方法,其特征在于,所述查询数据的数据类型包括字符串类型和数字类型;
所述根据所述查询数据长度和所述查询数据的数据类型,确定所述查询数据的有效数据段,包括:
若所述查询数据的数据类型为字符串类型,则按照所述查询数据长度截取所述查询数据,将截取得到的数据段确定为有效数据段;
若所述查询数据的数据类型为数字类型,则将所述查询数据确定为有效数据段。
3.根据权利要求2所述的方法,其特征在于,所述查询方式包括第一方式和第二方式;
所述根据所述有效数据段和查询方式,确定所述有效数据段对应的目标数据库地址,包括:
若所述查询方式为第一方式,则根据所述有效数据段和预存的至少一条有效数据段与数据库地址的对应关系,确定所述有效数据段对应的数据库地址;
若所述查询方式为第二方式,则确定所述有效数据段所属的数据范围,并根据确定的数据范围和预存的至少一条数据范围与数据库地址的对应关系,确定所述有效数据段对应的数据库地址。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述查询数据包括以下项中的任意一项或多项:
手机号码、用户标识编码、账户标识编码、客户标识编码、工号编码、地区编码、分区代码、区号、地区名称代码。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述将所述请求数据通过所述虚拟连接发送至客户端之后,所述方法还包括:
将所述虚拟连接和所述实际连接解除绑定。
6.一种数据库访问系统,其特征在于,包括:至少一个客户端、至少一个服务端节点以及至少一种类型的数据库;
其中,所述客户端配置有多种类型数据库连接驱动组件,所述服务端节点配置有分布式数据访问层中间件;
所述客户端用于接收用户输入的信息,并根据用户输入的信息生成数据库访问请求,根据所述数据库访问请求和预设负载均衡规则确定待连接的目标服务端节点,并根据相应类型的连接驱动组件建立与所述目标服务端节点之间的虚拟连接,通过所述虚拟连接将所述数据库访问请求发送至所述目标服务端节点;
所述目标服务端节点用于接收所述数据库访问请求,通过所述分布式数据访问层中间件确定所述数据库访问请求对应的目标数据库地址,将所述虚拟连接绑定到所述目标数据库地址对应的目标数据库的实际连接,将所述访问请求通过所述实际连接发送至所述目标数据库地址对应的目标数据库,以得到所述数据库访问请求对应的请求数据;将所述请求数据通过所述虚拟连接发送至客户端;
所述分布式数据访问层中间件包括:业务路由组件,用于获取所述路由规则标识,并根据所述路由规则标识和预设路由规则,确定所述访问请求对应的目标数据库地址;其中,所述路由规则包括路由规则标识与查询数据、查询数据的数据类型、查询方式以及查询数据长度之间的对应关系;所述根据所述路由规则标识和预设路由规则,确定所述访问请求对应的目标数据库地址,包括:根据所述对应关系,确定所述路由规则标识对应的查询数据、查询数据的数据类型、查询方式和查询数据长度;根据所述查询数据长度和所述查询数据的数据类型,确定所述查询数据的有效数据段;根据所述有效数据段和查询方式,确定所述有效数据段对应的数据库地址;将所述有效数据段对应的数据库地址确定为所述访问请求对应的目标数据库地址。
7.根据权利要求6所述的数据库访问系统,其特征在于,所述连接驱动组件包括:应用程序接口、动态代理层和负载均衡模块;
其中,所述动态代理层用于根据用户输入的信息生成数据库访问请求;
所述负载均衡模块用于根据所述数据库访问请求和预设负载均衡规则确定待连接的目标服务端节点。
8.根据权利要求6所述的数据库访问系统,其特征在于,所述分布式数据访问层中间件还包括:
网络通信层,用于与所述客户端通信;
解析层,用于解析所述客户端发送的数据库访问请求;
前端虚拟连接池,用于保存客户端建立的虚拟连接;
事务解析组件,用于在所述数据库访问请求中提取路由规则标识;
后端数据库连接池,用于存储至少一种类型的数据库的实际连接;
虚拟连接注册模块和数据源连接模块,用于将所述虚拟连接和所述访问请求对应的目标数据库地址的实际连接绑定。
9.根据权利要求6至8任一项所述的数据库访问系统,其特征在于,所述服务端节点还配置有负载监控模块和监控管理模块。
10.根据权利要求6至8任一项所述的数据库访问系统,其特征在于,还包括:分布式应用程序协调组件;
所述分布式应用程序协调组件与所述至少一个客户端和至少一个服务端节点通信。
11.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至5任一项所述的数据库访问方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至5任一项所述的数据库访问方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010162443.6A CN111367983B (zh) | 2020-03-10 | 2020-03-10 | 数据库访问方法、系统、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010162443.6A CN111367983B (zh) | 2020-03-10 | 2020-03-10 | 数据库访问方法、系统、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111367983A CN111367983A (zh) | 2020-07-03 |
CN111367983B true CN111367983B (zh) | 2023-08-15 |
Family
ID=71208586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010162443.6A Active CN111367983B (zh) | 2020-03-10 | 2020-03-10 | 数据库访问方法、系统、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111367983B (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111538605B (zh) * | 2020-04-24 | 2023-04-11 | 北京思特奇信息技术股份有限公司 | 一种分布式数据访问层中间件及命令执行方法和装置 |
CN112069237B (zh) * | 2020-07-22 | 2023-12-05 | 北京思特奇信息技术股份有限公司 | 一种集群数据库连接池的管理系统 |
CN111708806B (zh) * | 2020-08-24 | 2020-12-01 | 腾讯科技(深圳)有限公司 | 一种数据访问的方法、装置、服务器、系统及存储介质 |
CN113296974B (zh) * | 2020-08-31 | 2022-04-26 | 阿里巴巴集团控股有限公司 | 数据库访问方法、装置、电子设备及可读存储介质 |
CN113760886B (zh) * | 2020-10-26 | 2023-09-01 | 北京京东振世信息技术有限公司 | 提供数据服务的方法、装置、设备和计算机可读介质 |
CN114598749B (zh) * | 2020-12-17 | 2024-01-09 | 国网信息通信产业集团有限公司 | 一种服务访问方法及装置 |
CN112613009A (zh) * | 2020-12-28 | 2021-04-06 | 杭州涂鸦信息技术有限公司 | 数据中心访问方法、客户端及计算机存储介质 |
CN112866348B (zh) * | 2020-12-31 | 2022-11-11 | 金蝶软件(中国)有限公司 | 数据库访问方法、装置、计算机设备和存储介质 |
CN113779616B (zh) * | 2021-02-08 | 2024-04-05 | 北京沃东天骏信息技术有限公司 | 用于识别数据的方法和装置 |
CN112906025B (zh) * | 2021-03-03 | 2022-01-07 | 江苏保旺达软件技术有限公司 | 数据库管控方法、装置、设备及存储介质 |
CN113032471A (zh) * | 2021-03-23 | 2021-06-25 | 广东电网有限责任公司 | 一种数据库的处理方法、装置、电子设备和介质 |
CN112925841B (zh) * | 2021-03-26 | 2022-11-08 | 瀚高基础软件股份有限公司 | 分布式jdbc实现方法、设备及计算机可读存储介质 |
CN112988874A (zh) * | 2021-04-08 | 2021-06-18 | 海南车智易通信息技术有限公司 | 一种数据处理方法、系统、计算设备及可读存储介质 |
CN113176876B (zh) * | 2021-04-23 | 2023-08-11 | 网易(杭州)网络有限公司 | 数据读写的方法、装置和电子设备 |
CN113238993B (zh) * | 2021-05-14 | 2023-12-05 | 中国人民银行数字货币研究所 | 一种数据处理方法和装置 |
CN113127102A (zh) * | 2021-05-18 | 2021-07-16 | 中国农业银行股份有限公司 | 业务数据的处理方法、装置、设备、存储介质及程序 |
CN113268507B (zh) * | 2021-05-26 | 2023-03-14 | 大箴(杭州)科技有限公司 | 数据库的数据读取系统及方法、装置、电子设备 |
CN113467966A (zh) * | 2021-05-31 | 2021-10-01 | 珠海大横琴科技发展有限公司 | 一种数据处理的方法和装置 |
CN113569508B (zh) * | 2021-09-18 | 2021-12-10 | 芯行纪科技有限公司 | 基于id进行数据索引与访问的数据库模型构建方法及设备 |
CN114138888B (zh) * | 2021-12-03 | 2022-07-05 | 北京宇信科技集团股份有限公司 | 一种分布式数据路由的处理方法、系统、介质和设备 |
CN114609985B (zh) * | 2022-03-11 | 2024-01-26 | 傲普(上海)新能源有限公司 | 一种ems系统的控制方法、装置、介质及设备 |
CN114422575B (zh) * | 2022-03-30 | 2022-07-08 | 北京奥星贝斯科技有限公司 | 处理网络请求的方法和装置 |
CN114968617B (zh) * | 2022-04-28 | 2023-09-01 | 杭州未名信科科技有限公司 | Api转换系统及其访问请求处理方法、电子设备及介质 |
CN114840608B (zh) * | 2022-07-04 | 2022-11-01 | 深圳市茗格科技有限公司 | 分布式数据访问方法、设备及存储介质 |
CN116881953B (zh) * | 2023-09-07 | 2023-11-14 | 北京鲸鹳科技有限公司 | 一种基于虚拟空间的数据隔离方法、设备及介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101187937A (zh) * | 2007-10-30 | 2008-05-28 | 北京航空航天大学 | 网格环境下模式复用的异构数据库访问和集成方法 |
US8054832B1 (en) * | 2008-12-30 | 2011-11-08 | Juniper Networks, Inc. | Methods and apparatus for routing between virtual resources based on a routing location policy |
CN102385628A (zh) * | 2011-11-14 | 2012-03-21 | 北京锐安科技有限公司 | 一种基于jdbc的数据分布式处理方法 |
CN103220364A (zh) * | 2013-04-27 | 2013-07-24 | 清华大学 | 一种基于云的系统管理训练平台架构 |
CN104063425A (zh) * | 2014-06-04 | 2014-09-24 | 五八同城信息技术有限公司 | 通过数据库中间件查询数据的方法和数据库中间件 |
EP2891994A1 (en) * | 2013-11-04 | 2015-07-08 | Guangdong Electronics Industry Institute Ltd. | Method for achieving automatic synchronization of multisource heterogeneous data resources |
CN105786946A (zh) * | 2015-12-24 | 2016-07-20 | 国云科技股份有限公司 | 一种虚拟化的数据集成和查询系统及其实现方法 |
CN106909563A (zh) * | 2015-12-23 | 2017-06-30 | 上海热璞网络科技有限公司 | 一种分布式系统 |
CN108093094A (zh) * | 2017-12-08 | 2018-05-29 | 腾讯科技(深圳)有限公司 | 数据库实例访问方法、装置、系统、存储介质和设备 |
CN109739877A (zh) * | 2018-11-21 | 2019-05-10 | 比亚迪股份有限公司 | 数据库系统和数据管理方法 |
CN110011869A (zh) * | 2012-06-06 | 2019-07-12 | 丛林网络公司 | 控制器装置、方法及计算机可读存储介质 |
CN110727499A (zh) * | 2019-09-18 | 2020-01-24 | 平安科技(深圳)有限公司 | 资源数据获取的方法、装置、计算机设备和存储介质 |
CN110851474A (zh) * | 2018-07-26 | 2020-02-28 | 深圳市优必选科技有限公司 | 数据查询方法、数据库中间件、数据查询设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7257605B2 (en) * | 2004-02-09 | 2007-08-14 | International Busniess Machines Corporation | System for heterogeneous distributed transaction management in database systems |
GB2432479B (en) * | 2005-11-16 | 2010-10-27 | Tyntec Ltd | Routing capable global packet transmission service center |
EP2747386A1 (en) * | 2012-12-20 | 2014-06-25 | Telefonica S.A. | Method and System for the creation, modification and removal of a distributed virtual customer premises equipment |
-
2020
- 2020-03-10 CN CN202010162443.6A patent/CN111367983B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101187937A (zh) * | 2007-10-30 | 2008-05-28 | 北京航空航天大学 | 网格环境下模式复用的异构数据库访问和集成方法 |
US8054832B1 (en) * | 2008-12-30 | 2011-11-08 | Juniper Networks, Inc. | Methods and apparatus for routing between virtual resources based on a routing location policy |
CN102385628A (zh) * | 2011-11-14 | 2012-03-21 | 北京锐安科技有限公司 | 一种基于jdbc的数据分布式处理方法 |
CN110011869A (zh) * | 2012-06-06 | 2019-07-12 | 丛林网络公司 | 控制器装置、方法及计算机可读存储介质 |
CN103220364A (zh) * | 2013-04-27 | 2013-07-24 | 清华大学 | 一种基于云的系统管理训练平台架构 |
EP2891994A1 (en) * | 2013-11-04 | 2015-07-08 | Guangdong Electronics Industry Institute Ltd. | Method for achieving automatic synchronization of multisource heterogeneous data resources |
CN104063425A (zh) * | 2014-06-04 | 2014-09-24 | 五八同城信息技术有限公司 | 通过数据库中间件查询数据的方法和数据库中间件 |
CN106909563A (zh) * | 2015-12-23 | 2017-06-30 | 上海热璞网络科技有限公司 | 一种分布式系统 |
CN105786946A (zh) * | 2015-12-24 | 2016-07-20 | 国云科技股份有限公司 | 一种虚拟化的数据集成和查询系统及其实现方法 |
CN108093094A (zh) * | 2017-12-08 | 2018-05-29 | 腾讯科技(深圳)有限公司 | 数据库实例访问方法、装置、系统、存储介质和设备 |
CN110851474A (zh) * | 2018-07-26 | 2020-02-28 | 深圳市优必选科技有限公司 | 数据查询方法、数据库中间件、数据查询设备及存储介质 |
CN109739877A (zh) * | 2018-11-21 | 2019-05-10 | 比亚迪股份有限公司 | 数据库系统和数据管理方法 |
CN110727499A (zh) * | 2019-09-18 | 2020-01-24 | 平安科技(深圳)有限公司 | 资源数据获取的方法、装置、计算机设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
陈军 等."基于DAI中间件的异构数据库集成".《信息技术》.2009,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111367983A (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111367983B (zh) | 数据库访问方法、系统、设备和存储介质 | |
USRE45806E1 (en) | System and method for the optimization of database access in data base networks | |
US8208403B2 (en) | Defining an end-to-end path for a network service | |
CN111737022B (zh) | 一种基于微服务的接口调用方法、系统、设备及介质 | |
US10348516B2 (en) | On-premise and off-premise communication | |
US6868450B1 (en) | System and method for a process attribute based computer network filter | |
CN112261094A (zh) | 一种报文处理方法及代理服务器 | |
CN111475705A (zh) | 基于sql查询的网络业务监控方法、装置、设备及存储介质 | |
US20230046979A1 (en) | Microservice call method and apparatus, device, and medium | |
WO2021135117A1 (zh) | 区块链中节点与链码的通信方法、装置、设备及存储介质 | |
CN109413224B (zh) | 报文转发方法和装置 | |
CN114172966A (zh) | 单元化架构下的服务调用方法、服务处理方法及装置 | |
US11296981B2 (en) | Serverless packet processing service with configurable exception paths | |
CN111784516A (zh) | 业务路径的确定方法、装置和电子设备 | |
US11881996B2 (en) | Input and output for target device communication | |
CN115190062B (zh) | 业务处理方法及装置、电子设备和计算机可读存储介质 | |
CN111988195B (zh) | 用于分组测试的应答方案确定方法、装置、设备及介质 | |
CN113986995A (zh) | 请求分发方法、装置、存储介质及电子设备 | |
CN113965367A (zh) | 策略对象上限控制方法、系统、计算机及存储介质 | |
CN114338809A (zh) | 访问控制方法、装置、电子设备和存储介质 | |
CN113726885A (zh) | 一种流量配额的调整方法和装置 | |
CN115516842A (zh) | 编排代理服务 | |
CN112433820A (zh) | 一种获取虚拟机主机ip的方法及系统 | |
CN117640363B (zh) | 微服务配置与管控方法和系统 | |
CN111107049B (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 |