CN106570074A - 分布式数据库***及其实现方法 - Google Patents
分布式数据库***及其实现方法 Download PDFInfo
- Publication number
- CN106570074A CN106570074A CN201610900227.0A CN201610900227A CN106570074A CN 106570074 A CN106570074 A CN 106570074A CN 201610900227 A CN201610900227 A CN 201610900227A CN 106570074 A CN106570074 A CN 106570074A
- Authority
- CN
- China
- Prior art keywords
- database
- gateway
- gateway cluster
- data base
- load balancing
- 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
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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种分布式数据库***,所述分布式数据库***至少包括负载均衡网关集群、数据库网关集群与多个数据库存储节点,所述负载均衡网关集群、所述数据库网关集群部署在访问所述数据库存储节点的数据连接路径中,其中,所述负载均衡网关集群、所述数据库网关集群共同对外部客户端访问所述数据库存储节点进行透明代理。本发明还公开了一种分布式数据库***的实现方法。本发明通过对外部客户端访问数据库存进行透明代理,从而可屏蔽普通用户对于后端分布式数据库设置架构的复杂度感知,简化了用户访问数据库的操作流程。
Description
技术领域
本发明涉及分布式数据库技术领域,尤其涉及分布式数据库***及其实现方法。
背景技术
现有分布式数据库的技术方案中通常采用LVS(Linux Virtual Server,Linux虚拟服务器)和MySQL数据库网关来实现客户端对数据库的访问,由于LVS与MySQL数据库网关为开源的软件,因而其功能也相对比较简单。
采用LVS与MySQL数据库网关对数据库进行访问的方式,这对于技术人员来说还算勉强可行,而对于普通用户来说,由于分布式数据库设置架构的复杂性,进而使得普通用户难以正确掌握分布式数据库的访问操作流程。
发明内容
本发明的主要目的在于提供一种分布式数据库***及其实现方法,旨在解决现有技术中,采用LVS与MySQL数据库网关对数据库进行访问的方式对于普通用户来说,难以正确掌握分布式数据库的访问操作流程的技术问题。
为实现上述目的,本发明提供一种分布式数据库***,所述分布式数据库***至少包括负载均衡网关集群、数据库网关集群与多个数据库存储节点,所述负载均衡网关集群、所述数据库网关集群部署在访问所述数据库存储节点的数据连接路径中,其中,所述负载均衡网关集群、所述数据库网关集群共同对外部客户端访问所述数据库存储节点进行透明代理。
优选地,在所述负载均衡网关集群、所述数据库网关集群共同对外部客户端访问所述数据库存储节点进行透明代理时,
所述负载均衡网关集群,用于与外部客户端建立数据连接以接收该客户端的访问请求包,并修改所述访问请求包的目标IP地址与端口,其中,所述负载均衡网关集群将所述访问请求包的目标IP地址与端口修改为所述数据库网关集群中的IP地址与端口;
所述数据库网关集群,用于接收所述访问请求包,并对所述访问请求包中的SQL语句进行解析处理;将解析后的SQL语句分发至对应的数据库存储节点进行执行以返回对应的执行结果包,并将该执行结果包返回给所述负载均衡网关集群;
所述负载均衡网关集群还用于:接收所述执行结果包,并修改所述执行结果包的目标IP地址与端口,其中,所述负载均衡网关集群将所述执行结果包的目标IP地址与端口修改为外部客户端的IP地址与端口。
优选地,所述数据库网关集群支持数据库分库分表功能、数据库读写分离操作;
其中,所述数据库网关集群根据预置的配置文件,对所述访问请求包中的SQL语句进行语法分析,并根据语法分析结果判断是否启用数据库分库分表功能与数据库读写分离操作。
优选地,所述负载均衡网关集群还用于:监测所述数据库网关集群中各数据库网关的运行状态,其中,当监测到所述数据库网关集群中存在异常的数据库网关时,将该数据库网关从第一列表中剔除,当检测到异常的数据库网关恢复正常时,将该数据库网关添加到所述第一列表中;
所述数据库网关集群还用于:监测各数据库存储节点的运行状态,其中,当监测到异常的数据库存储节点时,将该数据库存储节点从第二列表中剔除,当检测到异常的数据库存储节点恢复正常时,将该数据库存储节点添加到所述第二列表中。
优选地,所述负载均衡网关集群还用于:对所述数据库网关集群中各数据库网关进行流量权重配置,并根据所述流量权重的大小,对各数据库网关进行流量控制,其中,当存在数据库网关所配置的所述流量权重小于预设权重时,停止向该数据库网关发送新的访问请求包;
所述数据库网关集群还用于:定时获取各数据库存储节点的负载数据,并根据所述负载数据,判断当前是否满足对数据库存储节点进行流量控制的条件,若满足,则对数据库存储节点进行流量控制。
优选地,所述负载均衡网关集群包括多台负载均衡器,且各负载均衡器配置相同的虚拟IP地址,其中,各负载均衡器以及各负载均衡器的上联交换机都运行OSPF协议且处于同一个OSPF区域内;
当任一台负载均衡器发生宕机而从该OSPF区域中移除时,通过OSPF协议将该台负载均衡器与外部客户端所建立的数据连接切换到其他负载均衡器上,并将所述OSPF区域的链路状态广播给该OSPF区域内的所有负载均衡器,以使所述负载均衡网关集群可与外部客户端保持长连接。
进一步地,为实现上述目的,本发明还提供一种分布式数据库***的实现方法,所述分布式数据库***至少包括负载均衡网关集群、数据库网关集群与多个数据库存储节点,所述负载均衡网关集群、所述数据库网关集群部署在访问所述数据库存储节点的数据连接路径中;
所述分布式数据库***的实现方法包括:
通过所述负载均衡网关集群、所述数据库网关集群,对外部客户端访问所述数据库存储节点进行透明代理。
优选地,所述通过所述负载均衡网关集群、所述数据库网关集群,对外部客户端访问所述数据库存储节点进行透明代理包括:
所述负载均衡网关集群与外部客户端建立数据连接以接收该客户端的访问请求包,并修改所述访问请求包的目标IP地址与端口,其中,所述负载均衡网关集群将所述访问请求包的目标IP地址与端口修改为所述数据库网关集群中的IP地址与端口;
所述数据库网关集群接收所述访问请求包,并对所述访问请求包中的SQL语句进行解析处理;将解析后的SQL语句分发至对应的数据库存储节点进行执行以返回对应的执行结果包,并将该执行结果包返回给所述负载均衡网关集群;
所述负载均衡网关集群接收所述执行结果包,并修改所述执行结果包的目标IP地址与端口,其中,所述负载均衡网关集群将所述执行结果包的目标IP地址与端口修改为外部客户端的IP地址与端口。
优选地,所述数据库网关集群支持数据库分库分表功能、数据库读写分离操作;
所述分布式数据库***的实现方法还包括:
所述数据库网关集群根据预置的配置文件,对所述访问请求包中的SQL语句进行语法分析,并根据语法分析结果判断是否启用数据库分库分表功能与数据库读写分离操作。
优选地,所述分布式数据库***的实现方法还包括:
所述负载均衡网关集群监测所述数据库网关集群中各数据库网关的运行状态,其中,当监测到所述数据库网关集群中存在异常的数据库网关时,将该数据库网关从第一列表中剔除,当检测到异常的数据库网关恢复正常时,将该数据库网关添加到所述第一列表中;
所述数据库网关集群监测各数据库存储节点的运行状态,其中,当监测到异常的数据库存储节点时,将该数据库存储节点从第二列表中剔除,当检测到异常的数据库存储节点恢复正常时,将该数据库存储节点添加到所述第二列表中。
优选地,所述分布式数据库***的实现方法还包括:
所述负载均衡网关集群对所述数据库网关集群中各数据库网关进行流量权重配置,并根据所述流量权重的大小,对各数据库网关进行流量控制,其中,当存在数据库网关所配置的所述流量权重小于预设权重时,停止向该数据库网关发送新的访问请求包;
所述数据库网关集群定时获取各数据库存储节点的负载数据,并根据所述负载数据,判断当前是否满足对数据库存储节点进行流量控制的条件,若满足,则对数据库存储节点进行流量控制。
优选地,所述负载均衡网关集群包括多台负载均衡器,且各负载均衡器配置相同的虚拟IP地址,其中,各负载均衡器以及各负载均衡器的上联交换机都运行OSPF协议且处于同一个OSPF区域内;
所述分布式数据库***的实现方法还包括:
当任一台负载均衡器发生宕机而从该OSPF区域中移除时,通过OSPF协议将该台负载均衡器与外部客户端所建立的数据连接切换到其他负载均衡器上,并将所述OSPF区域的链路状态广播给该OSPF区域内的所有负载均衡器,以使所述负载均衡网关集群可与外部客户端保持长连接。
本发明中,基于分布式数据库的复杂性,一般普通用户难以熟练操作完成对数据库的访问,因此,通过在分布式数据库的数据连接路径中引入负载均衡网关集群、数据库网关集群,以对外部客户端访问数据库存储节点进行透明代理,从而可屏蔽普通用户对于后端分布式数据库设置架构的复杂度感知,从而简化了用户访问数据库的操作流程。
附图说明
图1为本发明分布式数据库***一实施例的功能模块示意图;
图2为本发明分布式数据库***一实施例的应用架构示意图;
图3为本发明分布式数据库***的实现方法一实施例中进行透明代理的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明分布式数据库***一实施例的功能模块示意图。
本实施例中,分布式数据库***至少包括负载均衡网关集群10、数据库网关集群20与多个数据库存储节点30。
如图2所示的分布式数据库***一实施例的应用架构示意图,其中虚线代表数据流向,多个数据库网关构成数据库网关集群,每个数据库存储节点包含3台主机(一主两备的架构),zookeeper和任务调度模块为分布式数据库***中的组件。
如图2所示,在本实施例中,负载均衡网关集群10、数据库网关集群20部署在访问数据库存储节点30的数据连接路径中,同时,负载均衡网关集群10、数据库网关集群20共同对外部客户端访问数据库存储节点30进行透明代理。
本实施例中,基于分布式数据库的复杂性,一般普通用户难以熟练操作完成对数据库的访问,因此,通过在分布式数据库的数据连接路径中引入负载均衡网关集群10、数据库网关集群20,以对外部客户端访问数据库存储节点30进行透明代理,从而可屏蔽普通用户对于后端分布式数据库设置架构的复杂度感知,从而简化了用户访问数据库的操作流程。
进一步地,在本发明分布式数据库***一实施例中,负载均衡网关集群10、数据库网关集群20分别采用如下方式对外部客户端访问数据库存储节点30进行透明代理:
负载均衡网关集群10,用于与外部客户端建立数据连接以接收该客户端的访问请求包,并修改访问请求包的目标IP地址与端口,其中,负载均衡网关集群10将访问请求包的目标IP地址与端口修改为数据库网关集群20中的IP地址与端口;
数据库网关集群20,用于接收访问请求包,并对访问请求包中的SQL语句进行解析处理;将解析后的SQL语句分发至对应的数据库存储节点30进行执行以返回对应的执行结果包,并将该执行结果包返回给负载均衡网关集群10;
负载均衡网关集群10还用于:接收执行结果包,并修改执行结果包的目标IP地址与端口,其中,负载均衡网关集群10将执行结果包的目标IP地址与端口修改为外部客户端的IP地址与端口。
为便于说明,本实施例中具体参照图2进行举例说明。
(1)外部客户端向负载均衡网关集群中某一负载均衡器的虚拟IP地址端口申请建立TCP连接,负载均衡网关集群收到客户端发来的TCP包后,将根据载均衡网关集群的负载均衡算法从数据库网关集群中选择一个合适的数据库网关实例,然后把该TCP包中的目标IP地址和端口修改为该数据库网关实例的IP地址和端口;
(2)数据库网关实例在收到该TCP包后,判断该TCP包的目标IP地址和端口是否为自己的地址和端口,若是则开始处理该TCP包,具体内容包括对TCP包中的SQL语句进行初步解析和加工处理,并根据预置的配置文件中的端口映射关系(不同的负载均衡网关集群服务端口对应不同的后端数据库存储节点)而找到对应的后端数据库存储节点,然后通过ZooKeeper查询到该数据库存储节点对应的主备关系(对应主节点还是从节点),并根据配置文件和SQL语句判断是否启用分库分表和读写分离,最后再把SQL语句分发到对应的数据库存储节点执行;
(3)数据库网关实例接收到来自后台数据库存储节点执行SQL语句后所返回的执行结果包,并将该执行结果包发送给负载均衡网关集群;
(4)负载均衡网关集群收到数据库网关实例发过来的执行结果包后,再把该执行结果包的目标IP地址和端口修改改成客户端的IP地址和端口,然后将执行结果包发送给客户端,进而完成整个透明代理过程。
本实施例中,通过在分布式数据库的数据连接路径中引入负载均衡网关集群10、数据库网关集群20,以对外部客户端访问数据库存储节点30进行透明代理,从而可屏蔽普通用户对于后端分布式数据库设置架构的复杂度感知,从而简化了用户访问数据库的操作流程。同时,通过端口映射而简化了外部客户端定位并访问后台数据库的过程。
进一步可选的,在本发明分布式数据库***另一实施例中,数据库网关集群20支持数据库分库分表功能、数据库读写分离操作;
其中,数据库网关集群20根据预置的配置文件,对访问请求包中的SQL语句进行语法分析,并根据语法分析结果判断是否启用数据库分库分表功能与数据库读写分离操作。
继续以上述图2进行举例说明。本实施例中,数据库网关除了数据路由的功能之外,还具有语法分析的功能,以用来处理客户端访问请求中的特定SQL语句,具体可通过在数据库网关的配置文件中设置gram=1或gram=0打开或关闭语法分析的功能。语法分析可以让数据库网关识别和处理特定的SQL语句,并进行相应的处理。
此外,本实施例中,数据库网关可以按照路由规则改写、分发SQL语句,由于分布式数据库的后端具有多个数据库实例,因此,数据库网关需要把客户端的访问请求中的SQL语句分发到对应的数据库存储节点中,而这就需要解析访问请求中的原始SQL语句,然后根据SQL语句的不同而做出对应的处理。
另外,为保证数据库的安全性,数据库网关还可以实施一定的安全策略,比如对一些特定的SQL语句进行审计,进而可防止用户误操作而造成比较严重的生产问题。如:delete from table_test,该操作删除表数据但却没有指定where条件,因此,在数据库网关上将会直接返回拒绝而并不会发送到后台数据库。
本实施例中,数据库网关还支持读写分离操作,具体可通过配置参数来控制是否开启读写分离的功能,例如,若外部应用如果要从数据库存储节点的备库中读取数据,则需要在访问请求中的select语句前加/*slave*/注释。
进一步可选的,在本发明分布式数据库***又一实施例中,负载均衡网关集群10还用于:监测数据库网关集群20中各数据库网关的运行状态,其中,当监测到数据库网关集群20中存在异常的数据库网关时,将该数据库网关从第一列表中剔除,当检测到异常的数据库网关恢复正常时,将该数据库网关添加到第一列表中;
数据库网关集群20还用于:监测各数据库存储节点30的运行状态,其中,当监测到异常的数据库存储节点30时,将该数据库存储节点30从第二列表中剔除,当检测到异常的数据库存储节点30恢复正常时,将该数据库存储节30添加到第二列表中。
本实施例中,负载均衡网关会自动探测感知数据库网关的存活状态,而数据库网关则通过ZooKeeper探测感知后端数据库存储节点的存活状态,因此,在分布式数据库***的全路径上一旦发现异常的节点(可能是数据库网关节点,也可能是数据库存储节点),就会触发踢除机制,从而确保整个***的健康运行。
本实施例中,负载均衡网关周期性的探测数据库网关的状态,比如可以在1分钟内就可以探测出数据库网关的异常状态,并自动把异常数据库网关从服务器列表里踢除;而当负载均衡网关检测到数据库网关恢复正常后,则再自动把它加回服务器列表中;
而数据库网关通过ZooKeeper的watcher功能,可以实时获取后台数据库存储节点的健康状态,当其中一个数据库存储节点出现宕机时,数据库网关会自动从数据路由列表中更新数据库存储节点的设备列表以踢除问题节点;而当数据库网关检测到数据库存储节点上的数据节点恢复正常后,会自动更新数据路由列表。
本实施例中,通过进行双重的存活状态感知,从而能够实现硬件故障的自动隔离,通过踢除机制可以避免将服务请求继续发送到已经出现问题的节点上,确保了服务的高可用性。
进一步可选的,在本发明分布式数据库***又一实施例中,负载均衡网关集群10还用于:对数据库网关集群20中各数据库网关进行流量权重配置,并根据流量权重的大小,对各数据库网关进行流量控制,其中,当存在数据库网关所配置的流量权重小于预设权重时,停止向该数据库网关发送新的访问请求包;
数据库网关集群20还用于:定时获取各数据库存储节点30的负载数据,并根据负载数据,判断当前是否满足对数据库存储节点30进行流量控制的条件,若满足,则对数据库存储节点30进行流量控制。
本实施例中,负载均衡网关可以通过对数据库网关的权重设置来实现对不同数据库网关的流量控制,而数据库网关可以通过监控数据库的数据库网关的负载阈值来触发对于后台数据节点的流量控制机制。
比如,在负载均衡网关的图形管理界面可以为每台数据库网关主机配置权重,权重的取值范围从0~100,代表用于实现负载均衡和流量控制的百分比。例如,将其中一台数据库网关的权重从20修改为0,则负载均衡网关将不会再发送新的请求给这台数据库网关主机,但不会主动中断已建立的长连接,直到这些连接自行退出。
而数据库网关层面的流量控制则是与分布式数据库中的agent、ZooKeeper紧密结合的。比如,数据库节点的agent每隔5秒钟会将自身所在节点的负载(包括CPU利用率、I/O利用率、Disk使用率)信息上报至ZooKeeper,然后数据库网关再从ZooKeeper上读取到这些数据。数据库网关上配置了流控开关和触发流量控制的阈值,数据库网关会通过从ZooKeeper上拉取的性能数据分析是否触发流控机制。比如,数据节点所在服务器的CPU利用率超过30%,或者I/O利用率超过30%,则都会触发数据库网关的流量控制。
本实施例中,采用双重流量控制机制,可以更灵活地进行负载均衡处理,从而提升整个分布式数据库***的高可用性。
进一步可选的,在本发明分布式数据库***又一实施例中,负载均衡网关集群10包括多台负载均衡器,且各负载均衡器配置相同的虚拟IP地址,其中,各负载均衡器以及各负载均衡器的上联交换机都运行OSPF协议且处于同一个OSPF区域内;
当任一台负载均衡器发生宕机而从该OSPF区域中移除时,负载均衡网关集群10通过OSPF协议,将该台负载均衡器与外部客户端所建立的数据连接切换到其他负载均衡器上,并将OSPF区域的链路状态广播给该OSPF区域内的所有负载均衡器,以使负载均衡网关集群可与外部客户端保持长连接。
本实施例中,负载均衡网关集群具体通过OSPF来确保负载均衡器的高可用性,集群间基于组播进行长连接同步,集群内单个负载均衡器宕机不中断长连接。
例如,一个负载均衡网关集群一般由4台负载均衡器组成,均采用双机架、双交换机的部署方式,以确保设备硬件、机柜电源、接入交换机的冗余。同时,负载均衡网关集群内的每台负载均衡器都配置完全相同的虚拟IP,负载均衡网关集群的所有负载均衡器以及负载均衡器的上联交换机都运行OSPF协议,并处于同一个OSPF区域内。
此外,负载均衡网关集群内的负载均衡器通过OSPF协议来宣告路由,同时提供服务,不分主机和备机。当其中一台负载均衡器宕机,10秒钟以内这台负载均衡器将会从OSPF区域中消失,这台负载均衡器的原来的数据连接路径会被重新生成并转移到剩余的其中一台负载均衡器上。此外,OSPF将OSPF区域的链路状态广播给该OSPF区域内的负载均衡器,故负载均衡网关集群内的连接在所有负载均衡器上都是同步的,并且连接在切换的过程中能够实现无缝转移。
本实施例中的负载均衡网关集群还具有会话保持的功能,进而可以确保同一个前端的TCP连接可以持续发送到相同的后端数据库网关实例上,从而确保了事物的一致性。由于负载均衡网关保存了连接的会话信息,数据库网关可以很方便的进行在线扩容而不影响已经存在的用户连接。
本实施例中,通过负载均衡网关对于负载均衡器的实时监控和智能切换,可减少因硬件故障而造成的停机时间,从而保持服务的高可用性;同时可通过在线增加数据库网关节点来提供数据库网关服务的横向扩展能力。
参照图3,图3为本发明分布式数据库***的实现方法一实施例中进行透明代理的流程示意图。
本实施例中,分布式数据库***至少包括负载均衡网关集群、数据库网关集群与多个数据库存储节点,负载均衡网关集群、数据库网关集群部署在访问数据库存储节点的数据连接路径中,如图2所示。
本实施例中,分布式数据库***通过负载均衡网关集群、数据库网关集群,对外部客户端访问数据库存储节点进行透明代理,具体包括如下步骤:
步骤S110,负载均衡网关集群与外部客户端建立数据连接以接收该客户端的访问请求包,并修改访问请求包的目标IP地址与端口,其中,负载均衡网关集群将访问请求包的目标IP地址与端口修改为数据库网关集群中的IP地址与端口;
步骤S120,数据库网关集群接收访问请求包,并对访问请求包中的SQL语句进行解析处理;将解析后的SQL语句分发至对应的数据库存储节点进行执行以返回对应的执行结果包,并将该执行结果包返回给负载均衡网关集群;
步骤S130,负载均衡网关集群接收执行结果包,并修改执行结果包的目标IP地址与端口,其中,负载均衡网关集群将执行结果包的目标IP地址与端口修改为外部客户端的IP地址与端口。
为便于说明,本实施例中具体参照图2进行举例说明。
(1)外部客户端向负载均衡网关集群中某一负载均衡器的虚拟IP地址端口申请建立TCP连接,载均衡网关集群收到客户端发来的TCP包后,将根据载均衡网关集群的负载均衡算法从数据库网关集群中选择一个合适的数据库网关实例,然后把该TCP包中的目标IP地址和端口修改为该数据库网关实例的IP地址和端口;
(2)数据库网关实例在收到该TCP包后,判断该TCP包的目标IP地址和端口是否为自己的地址和端口,若是则开始处理该TCP包,具体内容包括对TCP包中的SQL语句进行初步解析和加工处理,并根据预置的配置文件中的端口映射关系(不同的负载均衡网关服务端口对应不同的后端数据库存储节点)而找到对应的后端数据库存储节点,然后通过ZooKeeper查询到该数据库存储节点对应的主备关系(对应主节点还是从节点),并根据配置文件和SQL语句判断是否启用分库分表和读写分离,最后再把SQL语句分发到对应的数据库存储节点执行;
(3)数据库网关实例接收到来自后台数据库存储节点执行SQL语句后所返回的执行结果包,并将该执行结果包发送给负载均衡网关集群;
(4)负载均衡网关集群收到数据库网关实例发过来的执行结果包后,再把该执行结果包的目标IP地址和端口修改改成客户端的IP地址和端口,然后将执行结果包发送给客户端,进而完成整个透明代理过程。
本实施例中,通过在分布式数据库的数据连接路径中引入负载均衡网关集群、数据库网关集群,以对外部客户端访问数据库存储节点进行透明代理,从而可屏蔽普通用户对于后端分布式数据库设置架构的复杂度感知,从而简化了用户访问数据库的操作流程。同事,通过端口映射而简化了外部客户端定位并访问后台数据库的过程。
进一步地,在本发明分布式数据库***的实现方法一实施例中,数据库网关集群支持数据库分库分表功能、数据库读写分离操作。
此外,分布式数据库***的实现方法还包括:
S0、数据库网关集群根据预置的配置文件,对访问请求包中的SQL语句进行语法分析,并根据语法分析结果判断是否启用数据库分库分表功能与数据库读写分离操作。
继续以上述图2进行举例说明。本实施例中,数据库网关除了数据路由的功能之外,还具有语法分析的功能,以用来处理客户端访问请求中的特定SQL语句,具体可通过在数据库网关的配置文件中设置gram=1或gram=0打开或关闭语法分析的功能。语法分析可以让数据库网关识别和处理特定的SQL语句,并进行相应的处理。
此外,本实施例中,数据库网关可以按照路由规则改写、分发SQL语句,由于分布式数据库的后端具有多个数据库实例,因此,数据库网关需要把客户端的访问请求中的SQL语句分发到对应的数据库存储节点中,而这就需要解析访问请求中的原始SQL语句,然后根据SQL语句的不同而做出对应的处理。
另外,为保证数据库的安全性,数据库网关还可以实施一定的安全策略,比如对一些特定的SQL语句进行审计,进而可防止用户误操作而造成比较严重的生产问题。如:delete from table_test,该操作删除表数据但却没有指定where条件,因此,在数据库网关上将会直接返回拒绝而并不会发送到后台数据库。
本实施例中,数据库网关还支持读写分离操作,具体可通过配置参数来控制是否开启读写分离的功能,例如,若外部应用如果要从数据库存储节点的备库中读取数据,则需要在访问请求中的select语句前加/*slave*/注释。
进一步地,在本发明分布式数据库***的实现方法一实施例中,分布式数据库***的实现方法还包括:
S1、负载均衡网关集群监测数据库网关集群中各数据库网关的运行状态,其中,当监测到数据库网关集群中存在异常的数据库网关时,将该数据库网关从第一列表中剔除,当检测到异常的数据库网关恢复正常时,将该数据库网关添加到第一列表中;
S2、数据库网关集群监测各数据库存储节点的运行状态,其中,当监测到异常的数据库存储节点时,将该数据库存储节点从第二列表中剔除,当检测到异常的数据库存储节点恢复正常时,将该数据库存储节点添加到第二列表中。
本实施例中,负载均衡网关会自动探测感知数据库网关的存活状态,而数据库网关则通过ZooKeeper探测感知后端数据库存储节点的存活状态,因此,在分布式数据库***的全路径上一旦发现异常的节点(可能是数据库网关节点,也可能是数据库存储节点),就会触发踢除机制,从而确保整个***的健康运行。
本实施例中,负载均衡网关周期性的探测数据库网关的状态,比如可以在1分钟内就可以探测出数据库网关的异常状态,并自动把异常数据库网关从服务器列表里踢除;而当负载均衡网关检测到数据库网关恢复正常后,则再自动把它加回服务器列表中;
而数据库网关通过ZooKeeper的watcher功能,可以实时获取后台数据库存储节点的健康状态,当其中一个数据库存储节点出现宕机时,数据库网关会自动从数据路由列表中更新数据库存储节点的设备列表以踢除问题节点;而当数据库网关检测到数据库存储节点上的数据节点恢复正常后,会自动更新数据路由列表。
本实施例中,通过进行双重的存活状态感知,从而能够实现硬件故障的自动隔离,通过踢除机制可以避免将服务请求继续发送到已经出现问题的节点上,确保了服务的高可用性。
进一步地,在本发明分布式数据库***的实现方法一实施例中,分布式数据库***的实现方法还包括:
S3、负载均衡网关集群对数据库网关集群中各数据库网关进行流量权重配置,并根据流量权重的大小,对各数据库网关进行流量控制,其中,当存在数据库网关所配置的流量权重小于预设权重时,停止向该数据库网关发送新的访问请求包;
S4、数据库网关集群定时获取各数据库存储节点的负载数据,并根据负载数据,判断当前是否满足对数据库存储节点进行流量控制的条件,若满足,则对数据库存储节点进行流量控制。
本实施例中,负载均衡网关可以通过对数据库网关的权重设置来实现对不同数据库网关的流量控制,而数据库网关可以通过监控数据库设备的负载阈值来触发对于后台数据节点的流量控制机制。
比如,在负载均衡网关的图形管理界面可以为每台数据库网关主机配置权重,权重的取值范围从0~100,代表用于实现负载均衡和流量控制的百分比。例如,将其中一台数据库网关的权重从20修改为0,则负载均衡网关将不会再发送新的请求给这台数据库网关主机,但不会主动中断已建立的长连接,直到这些连接自行退出。
而数据库网关层面的流量控制则是与分布式数据库中的agent、ZooKeeper紧密结合的。比如,数据库节点的agent每隔5秒钟会将自身所在节点的负载(包括CPU利用率、I/O利用率、Disk使用率)信息上报至ZooKeeper,然后数据库网关再从ZooKeeper上读取到这些数据。数据库网关上配置了流控开关和触发流量控制的阈值,数据库网关会通过从ZooKeeper上拉取的性能数据分析是否触发流控机制。比如,数据节点所在服务器的CPU利用率超过30%,或者I/O利用率超过30%,则都会触发数据库网关的流量控制。
本实施例中,采用双重流量控制机制,可以更灵活地进行负载均衡处理,从而提升整个分布式数据库***的高可用性。
进一步地,在本发明分布式数据库***的实现方法一实施例中,负载均衡网关集群包括多台负载均衡器,且各负载均衡器配置相同的虚拟IP地址,其中,各负载均衡器以及各负载均衡器的上联交换机都运行OSPF协议且处于同一个OSPF区域内;
此外,分布式数据库***的实现方法还包括:
S5、当任一台负载均衡器发生宕机而从该OSPF区域中移除时,通过OSPF协议将该台负载均衡器与外部客户端所建立的数据连接切换到其他负载均衡器上,并将OSPF区域的链路状态广播给该OSPF区域内的所有负载均衡器,以使负载均衡网关集群可与外部客户端保持长连接。
本实施例中,负载均衡网关集群具体通过OSPF来确保负载均衡器的高可用性,集群间基于组播进行长连接同步,集群内单个负载均衡器宕机不中断长连接。
例如,一个负载均衡网关集群一般由4台负载均衡器组成,均采用双机架、双交换机的部署方式,以确保设备硬件、机柜电源、接入交换机的冗余。同时,负载均衡网关集群内的每台负载均衡器都配置完全相同的虚拟IP,负载均衡网关集群的所有负载均衡器以及负载均衡器的上联交换机都运行OSPF协议,并处于同一个OSPF区域内。
此外,负载均衡网关集群内的负载均衡器通过OSPF协议来宣告路由,同时提供服务,不分主机和备机。当其中一台负载均衡器宕机,10秒钟以内这台负载均衡器将会从OSPF区域中消失,这台负载均衡器的原来的数据连接路径会被重新生成并转移到剩余的其中一台负载均衡器上。此外,OSPF将OSPF区域的链路状态广播给该OSPF区域内的负载均衡器,故负载均衡网关集群内的连接在所有负载均衡器上都是同步的,并且连接在切换的过程中能够实现无缝转移。
本实施例中的负载均衡网关集群还具有会话保持的功能,进而可以确保同一个前端的TCP连接可以持续发送到相同的后端数据库网关实例上,从而确保了事物的一致性。由于负载均衡网关保存了连接的会话信息,数据库网关可以很方便的进行在线扩容而不影响已经存在的用户连接。
本实施例中,通过负载均衡网关对于负载均衡器的实时监控和智能切换,可减少因硬件故障而造成的停机时间,从而保持服务的高可用性;同时可通过在线增加数据库网关节点来提供数据库网关服务的横向扩展能力。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (12)
1.一种分布式数据库***,其特征在于,所述分布式数据库***至少包括负载均衡网关集群、数据库网关集群与多个数据库存储节点,所述负载均衡网关集群、所述数据库网关集群部署在访问所述数据库存储节点的数据连接路径中,其中,所述负载均衡网关集群、所述数据库网关集群共同对外部客户端访问所述数据库存储节点进行透明代理。
2.如权利要求1所述的分布式数据库***,其特征在于,在所述负载均衡网关集群、所述数据库网关集群共同对外部客户端访问所述数据库存储节点进行透明代理时,
所述负载均衡网关集群,用于与外部客户端建立数据连接以接收该客户端的访问请求包,并修改所述访问请求包的目标IP地址与端口,其中,所述负载均衡网关集群将所述访问请求包的目标IP地址与端口修改为所述数据库网关集群中的IP地址与端口;
所述数据库网关集群,用于接收所述访问请求包,并对所述访问请求包中的SQL语句进行解析处理;将解析后的SQL语句分发至对应的数据库存储节点进行执行以返回对应的执行结果包,并将该执行结果包返回给所述负载均衡网关集群;
所述负载均衡网关集群还用于:接收所述执行结果包,并修改所述执行结果包的目标IP地址与端口,其中,所述负载均衡网关集群将所述执行结果包的目标IP地址与端口修改为外部客户端的IP地址与端口。
3.如权利要求2所述的分布式数据库***,其特征在于,所述数据库网关集群支持数据库分库分表功能、数据库读写分离操作;
其中,所述数据库网关集群根据预置的配置文件,对所述访问请求包中的SQL语句进行语法分析,并根据语法分析结果判断是否启用数据库分库分表功能与数据库读写分离操作。
4.如权利要求1-3中任一项所述的分布式数据库***,其特征在于,所述负载均衡网关集群还用于:监测所述数据库网关集群中各数据库网关的运行状态,其中,当监测到所述数据库网关集群中存在异常的数据库网关时,将该数据库网关从第一列表中剔除,当检测到异常的数据库网关恢复正常时,将该数据库网关添加到所述第一列表中;
所述数据库网关集群还用于:监测各数据库存储节点的运行状态,其中,当监测到异常的数据库存储节点时,将该数据库存储节点从第二列表中剔除,当检测到异常的数据库存储节点恢复正常时,将该数据库存储节点添加到所述第二列表中。
5.如权利要求1-3中任一项所述的分布式数据库***,其特征在于,所述负载均衡网关集群还用于:对所述数据库网关集群中各数据库网关进行流量权重配置,并根据所述流量权重的大小,对各数据库网关进行流量控制,其中,当存在数据库网关所配置的所述流量权重小于预设权重时,停止向该数据库网关发送新的访问请求包;
所述数据库网关集群还用于:定时获取各数据库存储节点的负载数据,并根据所述负载数据,判断当前是否满足对数据库存储节点进行流量控制的条件,若满足,则对数据库存储节点进行流量控制。
6.如权利要求1-3中任一项所述的分布式数据库***,其特征在于,所述负载均衡网关集群包括多台负载均衡器,且各负载均衡器配置相同的虚拟IP地址,其中,各负载均衡器以及各负载均衡器的上联交换机都运行OSPF协议且处于同一个OSPF区域内;
当任一台负载均衡器发生宕机而从该OSPF区域中移除时,通过OSPF协议将该台负载均衡器与外部客户端所建立的数据连接切换到其他负载均衡器上,并将所述OSPF区域的链路状态广播给该OSPF区域内的所有负载均衡器,以使所述负载均衡网关集群可与外部客户端保持长连接。
7.一种分布式数据库***的实现方法,其特征在于,所述分布式数据库***至少包括负载均衡网关集群、数据库网关集群与多个数据库存储节点,所述负载均衡网关集群、所述数据库网关集群部署在访问所述数据库存储节点的数据连接路径中;
所述分布式数据库***的实现方法包括:
通过所述负载均衡网关集群、所述数据库网关集群,对外部客户端访问所述数据库存储节点进行透明代理。
8.如权利要求7所述的分布式数据库***的实现方法,其特征在于,所述通过所述负载均衡网关集群、所述数据库网关集群,对外部客户端访问所述数据库存储节点进行透明代理包括:
所述负载均衡网关集群与外部客户端建立数据连接以接收该客户端的访问请求包,并修改所述访问请求包的目标IP地址与端口,其中,所述负载均衡网关集群将所述访问请求包的目标IP地址与端口修改为所述数据库网关集群中的IP地址与端口;
所述数据库网关集群接收所述访问请求包,并对所述访问请求包中的SQL语句进行解析处理;将解析后的SQL语句分发至对应的数据库存储节点进行执行以返回对应的执行结果包,并将该执行结果包返回给所述负载均衡网关集群;
所述负载均衡网关集群接收所述执行结果包,并修改所述执行结果包的目标IP地址与端口,其中,所述负载均衡网关集群将所述执行结果包的目标IP地址与端口修改为外部客户端的IP地址与端口。
9.如权利要求8所述的分布式数据库***的实现方法,其特征在于,所述数据库网关集群支持数据库分库分表功能、数据库读写分离操作;
所述分布式数据库***的实现方法还包括:
所述数据库网关集群根据预置的配置文件,对所述访问请求包中的SQL语句进行语法分析,并根据语法分析结果判断是否启用数据库分库分表功能与数据库读写分离操作。
10.如权利要求7-9中任一项所述的分布式数据库***的实现方法,其特征在于,所述分布式数据库***的实现方法还包括:
所述负载均衡网关集群监测所述数据库网关集群中各数据库网关的运行状态,其中,当监测到所述数据库网关集群中存在异常的数据库网关时,将该数据库网关从第一列表中剔除,当检测到异常的数据库网关恢复正常时,将该数据库网关添加到所述第一列表中;
所述数据库网关集群监测各数据库存储节点的运行状态,其中,当监测到异常的数据库存储节点时,将该数据库存储节点从第二列表中剔除,当检测到异常的数据库存储节点恢复正常时,将该数据库存储节点添加到所述第二列表中。
11.如权利要求7-9中任一项所述的分布式数据库***的实现方法,其特征在于,所述分布式数据库***的实现方法还包括:
所述负载均衡网关集群对所述数据库网关集群中各数据库网关进行流量权重配置,并根据所述流量权重的大小,对各数据库网关进行流量控制,其中,当存在数据库网关所配置的所述流量权重小于预设权重时,停止向该数据库网关发送新的访问请求包;
所述数据库网关集群定时获取各数据库存储节点的负载数据,并根据所述负载数据,判断当前是否满足对数据库存储节点进行流量控制的条件,若满足,则对数据库存储节点进行流量控制。
12.如权利要求7-9中任一项所述的分布式数据库***的实现方法,其特征在于,所述负载均衡网关集群包括多台负载均衡器,且各负载均衡器配置相同的虚拟IP地址,其中,各负载均衡器以及各负载均衡器的上联交换机都运行OSPF协议且处于同一个OSPF区域内;
所述分布式数据库***的实现方法还包括:
当任一台负载均衡器发生宕机而从该OSPF区域中移除时,通过OSPF协议将该台负载均衡器与外部客户端所建立的数据连接切换到其他负载均衡器上,并将所述OSPF区域的链路状态广播给该OSPF区域内的所有负载均衡器,以使所述负载均衡网关集群可与外部客户端保持长连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610900227.0A CN106570074B (zh) | 2016-10-14 | 2016-10-14 | 分布式数据库***及其实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610900227.0A CN106570074B (zh) | 2016-10-14 | 2016-10-14 | 分布式数据库***及其实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106570074A true CN106570074A (zh) | 2017-04-19 |
CN106570074B CN106570074B (zh) | 2020-07-10 |
Family
ID=58532932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610900227.0A Active CN106570074B (zh) | 2016-10-14 | 2016-10-14 | 分布式数据库***及其实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106570074B (zh) |
Cited By (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107071072A (zh) * | 2017-06-19 | 2017-08-18 | 山东浪潮云服务信息科技有限公司 | 一种处理对象存储高并发请求的分布式网关方法 |
CN107169056A (zh) * | 2017-04-27 | 2017-09-15 | 四川长虹电器股份有限公司 | 分布式文件***及节省分布式文件***存储空间的方法 |
CN107483260A (zh) * | 2017-08-28 | 2017-12-15 | 北京三快在线科技有限公司 | 故障处理方法及装置、电子设备 |
CN107566466A (zh) * | 2017-08-24 | 2018-01-09 | 新华三大数据技术有限公司 | 负载均衡方法及装置 |
CN107579924A (zh) * | 2017-09-29 | 2018-01-12 | 阿里巴巴集团控股有限公司 | 一种流量调拨方法和装置 |
CN107948324A (zh) * | 2017-12-29 | 2018-04-20 | 广东欧珀移动通信有限公司 | 请求传输***、方法、装置及存储介质 |
CN108200165A (zh) * | 2017-12-29 | 2018-06-22 | 广东欧珀移动通信有限公司 | 请求传输***、方法、装置及存储介质 |
CN108200158A (zh) * | 2017-12-29 | 2018-06-22 | 广东欧珀移动通信有限公司 | 请求传输***、方法、装置及存储介质 |
CN108334291A (zh) * | 2018-03-07 | 2018-07-27 | 成都创信特电子技术有限公司 | 建立移动终端可信环境的方法 |
CN108363813A (zh) * | 2018-03-15 | 2018-08-03 | 北京小度信息科技有限公司 | 数据存储方法、装置和*** |
CN109308223A (zh) * | 2018-09-17 | 2019-02-05 | 平安科技(深圳)有限公司 | 一种服务请求的响应方法及设备 |
CN109391980A (zh) * | 2017-08-08 | 2019-02-26 | 北京亿阳信通科技有限公司 | 一种基于NB-IoT网络下行流量控制的方法及*** |
CN109660466A (zh) * | 2019-02-26 | 2019-04-19 | 浪潮软件集团有限公司 | 一种面向云数据中心租户的多活负载均衡实现方法 |
CN109677465A (zh) * | 2018-12-29 | 2019-04-26 | 卡斯柯信号有限公司 | 用于轨道交通综合监控***的分布式实时***架构 |
CN109733444A (zh) * | 2018-09-19 | 2019-05-10 | 比亚迪股份有限公司 | 数据库***和列车监控管理设备 |
CN110071872A (zh) * | 2019-04-03 | 2019-07-30 | 杭州迪普科技股份有限公司 | 业务报文转发方法、装置、电子设备 |
CN110198226A (zh) * | 2018-03-28 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 一种负载均衡集群中访问请求处理方法、***和可读介质 |
CN110209742A (zh) * | 2019-06-17 | 2019-09-06 | 国家计算机网络与信息安全管理中心 | 一种基于区块链依据数据重要性分类存储***及方法 |
CN110233875A (zh) * | 2019-05-10 | 2019-09-13 | 厦门网宿有限公司 | 一种数据处理方法、对象存储网关池及业务*** |
CN110266763A (zh) * | 2019-05-20 | 2019-09-20 | 深圳壹账通智能科技有限公司 | 跨网段互连的区块链网络实现方法、***及存储介质 |
CN110263099A (zh) * | 2019-06-21 | 2019-09-20 | 北京小米移动软件有限公司 | 数据同步的流量调整方法、装置、设备及存储介质 |
CN110351119A (zh) * | 2019-06-06 | 2019-10-18 | 苏州元核云技术有限公司 | 一种分布式文件存储***及文件存储方法 |
CN110727709A (zh) * | 2019-10-10 | 2020-01-24 | 北京优炫软件股份有限公司 | 一种集群数据库*** |
CN111404774A (zh) * | 2020-03-11 | 2020-07-10 | 腾讯云计算(北京)有限责任公司 | 数据监控方法、装置、设备及存储介质 |
CN111538590A (zh) * | 2020-04-17 | 2020-08-14 | 姜海强 | 一种基于cs架构的分布式数据采集方法及*** |
CN111949444A (zh) * | 2020-06-24 | 2020-11-17 | 武汉烽火众智数字技术有限责任公司 | 一种基于分布式服务集群的数据备份与恢复***及方法 |
CN111970362A (zh) * | 2020-08-17 | 2020-11-20 | 上海势航网络科技有限公司 | 基于lvs的车联网网关集群方法及*** |
CN112131245A (zh) * | 2020-09-23 | 2020-12-25 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 拟态防御架构的高性能数据访问***及方法 |
CN112769884A (zh) * | 2019-11-01 | 2021-05-07 | 普天信息技术有限公司 | 双层反向代理***及其动态自均衡调节方法 |
CN113032431A (zh) * | 2021-04-23 | 2021-06-25 | 焦点科技股份有限公司 | 一种基于数据库中间件集群的高可用客户端负载均衡方法 |
CN113765710A (zh) * | 2021-08-24 | 2021-12-07 | 中国人寿保险股份有限公司上海数据中心 | 一种基于多活混合云部署的请求处理***及方法 |
CN114138809A (zh) * | 2021-12-08 | 2022-03-04 | 纳里健康科技有限公司 | 一种数据库读写分离方法及平台 |
CN114143320A (zh) * | 2021-09-01 | 2022-03-04 | 浪潮云信息技术股份公司 | 一种基于分布式数据库的数据网关方法及*** |
CN115687486A (zh) * | 2022-11-14 | 2023-02-03 | 浪潮智慧科技有限公司 | 一种基于kettle的轻量级数据采集方法及设备 |
US11656957B1 (en) | 2021-12-01 | 2023-05-23 | International Business Machines Corporation | Managing nodes of a DBMS |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254031A (zh) * | 2011-08-03 | 2011-11-23 | 无锡浙潮科技有限公司 | 基于批处理请求的Microsoft SQL Server数据库集群 |
US20120113991A1 (en) * | 2008-10-31 | 2012-05-10 | Michael Satterlee | Methods and apparatus to dynamically control connectivity within virtual private networks |
CN103336782A (zh) * | 2013-05-30 | 2013-10-02 | 莱诺斯科技(北京)有限公司 | 一种关系型分布式数据库*** |
CN103475566A (zh) * | 2013-07-10 | 2013-12-25 | 北京发发时代信息技术有限公司 | 一种实时消息交换平台及分布式集群组建方法 |
CN103942234A (zh) * | 2013-01-21 | 2014-07-23 | 中国电信股份有限公司 | 对多个异构数据库操作的方法、中间件装置及*** |
-
2016
- 2016-10-14 CN CN201610900227.0A patent/CN106570074B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120113991A1 (en) * | 2008-10-31 | 2012-05-10 | Michael Satterlee | Methods and apparatus to dynamically control connectivity within virtual private networks |
CN102254031A (zh) * | 2011-08-03 | 2011-11-23 | 无锡浙潮科技有限公司 | 基于批处理请求的Microsoft SQL Server数据库集群 |
CN103942234A (zh) * | 2013-01-21 | 2014-07-23 | 中国电信股份有限公司 | 对多个异构数据库操作的方法、中间件装置及*** |
CN103336782A (zh) * | 2013-05-30 | 2013-10-02 | 莱诺斯科技(北京)有限公司 | 一种关系型分布式数据库*** |
CN103475566A (zh) * | 2013-07-10 | 2013-12-25 | 北京发发时代信息技术有限公司 | 一种实时消息交换平台及分布式集群组建方法 |
Cited By (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107169056A (zh) * | 2017-04-27 | 2017-09-15 | 四川长虹电器股份有限公司 | 分布式文件***及节省分布式文件***存储空间的方法 |
CN107071072A (zh) * | 2017-06-19 | 2017-08-18 | 山东浪潮云服务信息科技有限公司 | 一种处理对象存储高并发请求的分布式网关方法 |
CN109391980A (zh) * | 2017-08-08 | 2019-02-26 | 北京亿阳信通科技有限公司 | 一种基于NB-IoT网络下行流量控制的方法及*** |
CN109391980B (zh) * | 2017-08-08 | 2021-07-23 | 北京亿阳信通科技有限公司 | 一种基于NB-IoT网络下行流量控制的方法及*** |
CN107566466A (zh) * | 2017-08-24 | 2018-01-09 | 新华三大数据技术有限公司 | 负载均衡方法及装置 |
CN107483260A (zh) * | 2017-08-28 | 2017-12-15 | 北京三快在线科技有限公司 | 故障处理方法及装置、电子设备 |
CN107483260B (zh) * | 2017-08-28 | 2021-03-02 | 北京三快在线科技有限公司 | 故障处理方法及装置、电子设备 |
CN107579924B (zh) * | 2017-09-29 | 2021-06-29 | 创新先进技术有限公司 | 一种流量调拨方法和装置 |
CN107579924A (zh) * | 2017-09-29 | 2018-01-12 | 阿里巴巴集团控股有限公司 | 一种流量调拨方法和装置 |
CN108200158A (zh) * | 2017-12-29 | 2018-06-22 | 广东欧珀移动通信有限公司 | 请求传输***、方法、装置及存储介质 |
CN108200165A (zh) * | 2017-12-29 | 2018-06-22 | 广东欧珀移动通信有限公司 | 请求传输***、方法、装置及存储介质 |
CN107948324A (zh) * | 2017-12-29 | 2018-04-20 | 广东欧珀移动通信有限公司 | 请求传输***、方法、装置及存储介质 |
CN108200158B (zh) * | 2017-12-29 | 2019-07-02 | Oppo广东移动通信有限公司 | 请求传输***、方法、装置及存储介质 |
CN108200165B (zh) * | 2017-12-29 | 2019-07-02 | Oppo广东移动通信有限公司 | 请求传输***、方法、装置及存储介质 |
CN107948324B (zh) * | 2017-12-29 | 2019-07-05 | Oppo广东移动通信有限公司 | 请求传输***、方法、装置及存储介质 |
CN108334291A (zh) * | 2018-03-07 | 2018-07-27 | 成都创信特电子技术有限公司 | 建立移动终端可信环境的方法 |
CN108363813A (zh) * | 2018-03-15 | 2018-08-03 | 北京小度信息科技有限公司 | 数据存储方法、装置和*** |
CN110198226A (zh) * | 2018-03-28 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 一种负载均衡集群中访问请求处理方法、***和可读介质 |
CN109308223A (zh) * | 2018-09-17 | 2019-02-05 | 平安科技(深圳)有限公司 | 一种服务请求的响应方法及设备 |
CN109733444A (zh) * | 2018-09-19 | 2019-05-10 | 比亚迪股份有限公司 | 数据库***和列车监控管理设备 |
CN109677465B (zh) * | 2018-12-29 | 2024-07-16 | 卡斯柯信号有限公司 | 用于轨道交通综合监控***的分布式实时***架构 |
CN109677465A (zh) * | 2018-12-29 | 2019-04-26 | 卡斯柯信号有限公司 | 用于轨道交通综合监控***的分布式实时***架构 |
CN109660466A (zh) * | 2019-02-26 | 2019-04-19 | 浪潮软件集团有限公司 | 一种面向云数据中心租户的多活负载均衡实现方法 |
CN110071872B (zh) * | 2019-04-03 | 2022-04-26 | 杭州迪普科技股份有限公司 | 业务报文转发方法、装置、电子设备 |
CN110071872A (zh) * | 2019-04-03 | 2019-07-30 | 杭州迪普科技股份有限公司 | 业务报文转发方法、装置、电子设备 |
CN110233875A (zh) * | 2019-05-10 | 2019-09-13 | 厦门网宿有限公司 | 一种数据处理方法、对象存储网关池及业务*** |
CN110266763A (zh) * | 2019-05-20 | 2019-09-20 | 深圳壹账通智能科技有限公司 | 跨网段互连的区块链网络实现方法、***及存储介质 |
CN110266763B (zh) * | 2019-05-20 | 2022-04-12 | 深圳壹账通智能科技有限公司 | 跨网段互连的区块链网络实现方法、***及存储介质 |
CN110351119A (zh) * | 2019-06-06 | 2019-10-18 | 苏州元核云技术有限公司 | 一种分布式文件存储***及文件存储方法 |
CN110209742B (zh) * | 2019-06-17 | 2021-07-27 | 国家计算机网络与信息安全管理中心 | 一种基于区块链依据数据重要性分类存储***及方法 |
CN110209742A (zh) * | 2019-06-17 | 2019-09-06 | 国家计算机网络与信息安全管理中心 | 一种基于区块链依据数据重要性分类存储***及方法 |
CN110263099B (zh) * | 2019-06-21 | 2021-07-13 | 北京小米移动软件有限公司 | 数据同步的流量调整方法、装置、设备及存储介质 |
CN110263099A (zh) * | 2019-06-21 | 2019-09-20 | 北京小米移动软件有限公司 | 数据同步的流量调整方法、装置、设备及存储介质 |
CN110727709A (zh) * | 2019-10-10 | 2020-01-24 | 北京优炫软件股份有限公司 | 一种集群数据库*** |
CN112769884A (zh) * | 2019-11-01 | 2021-05-07 | 普天信息技术有限公司 | 双层反向代理***及其动态自均衡调节方法 |
CN111404774A (zh) * | 2020-03-11 | 2020-07-10 | 腾讯云计算(北京)有限责任公司 | 数据监控方法、装置、设备及存储介质 |
CN111538590A (zh) * | 2020-04-17 | 2020-08-14 | 姜海强 | 一种基于cs架构的分布式数据采集方法及*** |
CN111949444A (zh) * | 2020-06-24 | 2020-11-17 | 武汉烽火众智数字技术有限责任公司 | 一种基于分布式服务集群的数据备份与恢复***及方法 |
CN111970362A (zh) * | 2020-08-17 | 2020-11-20 | 上海势航网络科技有限公司 | 基于lvs的车联网网关集群方法及*** |
CN111970362B (zh) * | 2020-08-17 | 2023-09-15 | 上海势航网络科技有限公司 | 基于lvs的车联网网关集群方法及*** |
CN112131245A (zh) * | 2020-09-23 | 2020-12-25 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 拟态防御架构的高性能数据访问***及方法 |
CN113032431A (zh) * | 2021-04-23 | 2021-06-25 | 焦点科技股份有限公司 | 一种基于数据库中间件集群的高可用客户端负载均衡方法 |
CN113032431B (zh) * | 2021-04-23 | 2022-02-18 | 焦点科技股份有限公司 | 一种基于数据库中间件集群的高可用客户端负载均衡方法 |
CN113765710A (zh) * | 2021-08-24 | 2021-12-07 | 中国人寿保险股份有限公司上海数据中心 | 一种基于多活混合云部署的请求处理***及方法 |
CN114143320A (zh) * | 2021-09-01 | 2022-03-04 | 浪潮云信息技术股份公司 | 一种基于分布式数据库的数据网关方法及*** |
US11656957B1 (en) | 2021-12-01 | 2023-05-23 | International Business Machines Corporation | Managing nodes of a DBMS |
WO2023100062A1 (en) * | 2021-12-01 | 2023-06-08 | International Business Machines Corporation | Managing nodes of a dbms |
CN114138809A (zh) * | 2021-12-08 | 2022-03-04 | 纳里健康科技有限公司 | 一种数据库读写分离方法及平台 |
CN115687486B (zh) * | 2022-11-14 | 2023-06-13 | 浪潮智慧科技有限公司 | 一种基于kettle的轻量级数据采集方法及设备 |
CN115687486A (zh) * | 2022-11-14 | 2023-02-03 | 浪潮智慧科技有限公司 | 一种基于kettle的轻量级数据采集方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106570074B (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106570074A (zh) | 分布式数据库***及其实现方法 | |
US8621283B2 (en) | Systems, methods, and apparatus to debug a network application by utilizing a cloned network and an interactive debugging technique | |
CN108139925A (zh) | 虚拟机的高可用性 | |
CN108255727A (zh) | 数据接收、发送方法及装置,测试***,存储介质 | |
CN108173911B (zh) | 一种微服务故障检测处理方法及装置 | |
CN111817911B (zh) | 一种探测网络质量的方法、装置、计算设备及存储介质 | |
CN108712464A (zh) | 一种面向集群微服务高可用的实现方法 | |
US7315807B1 (en) | System and methods for storage area network simulation | |
CN107077340A (zh) | 负载均衡 | |
CN101072125A (zh) | 集群结构及其控制单元 | |
US20140115421A1 (en) | Method, Device, and System for Monitoring Quickpath Interconnect Link | |
CN109586952A (zh) | 服务器扩容方法、装置 | |
US9374298B2 (en) | Grace state and pacing in link aggregation | |
WO2000068795A1 (en) | Adaptive and generalized status monitor | |
CN106789306A (zh) | 通信设备软件故障检测收集恢复方法和*** | |
CN109513206A (zh) | 网络游戏的网络架构及用于网络游戏的数据转发方法 | |
CN106878194A (zh) | 一种报文处理方法和装置 | |
CN106487486A (zh) | 业务处理方法和数据中心*** | |
CN101909067A (zh) | 安全网关集群防病毒的方法及*** | |
CN107659661A (zh) | 一种金融实时总线***及其控制方法 | |
CN107404394A (zh) | 一种iptv***容灾方法及iptv容灾*** | |
CN104170307B (zh) | 失效切换方法、装置和*** | |
CN107197002A (zh) | 云计算***及云数据处理方法 | |
CN108959547A (zh) | 一种pv快照分布式数据库集群恢复方法 | |
CN107704490A (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 |