CN113343275B - 数据访问方法及数据管理服务系统 - Google Patents

数据访问方法及数据管理服务系统 Download PDF

Info

Publication number
CN113343275B
CN113343275B CN202110739204.7A CN202110739204A CN113343275B CN 113343275 B CN113343275 B CN 113343275B CN 202110739204 A CN202110739204 A CN 202110739204A CN 113343275 B CN113343275 B CN 113343275B
Authority
CN
China
Prior art keywords
connection
target
node
data access
instance
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
Application number
CN202110739204.7A
Other languages
English (en)
Other versions
CN113343275A (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.)
China Merchants Finance Technology Co Ltd
Original Assignee
China Merchants Finance Technology 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 China Merchants Finance Technology Co Ltd filed Critical China Merchants Finance Technology Co Ltd
Priority to CN202110739204.7A priority Critical patent/CN113343275B/zh
Publication of CN113343275A publication Critical patent/CN113343275A/zh
Application granted granted Critical
Publication of CN113343275B publication Critical patent/CN113343275B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Abstract

本发明公开了数据访问方法及数据管理服务系统,该数据访问方法在数据管理服务系统上,包括控制节点接收数据访问请求,数据访问请求包括访问区域ID和连接节点ID;控制节点根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例;目标连接实例根据连接节点ID查询连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将数据访问请求发送给目标连接节点;目标连接节点基于数据访问请求访问目标数据库。本技术方案能够避免因为数据库连接节点出现故障状态,导致无法对待访问数据进行访问,提高对待访问数据进行访问的可靠性。

Description

数据访问方法及数据管理服务系统
技术领域
本发明涉及数据库技术领域,尤其涉及一种数据访问方法及数据管理服务系统。
背景技术
OmniDB是一个开源的基于网页版的数据管理服务系统,目前仅支持单点运行,对于需要按照区域进行物理隔离的私有云环境数据库,OmniDB无法实现统一分布式管理私有云环境数据库。
在需要对私有云环境数据库按区域进行物理隔离访问的时候,按照部署多套单点OmniDB虽然可以实现物理隔离。但是,多套单点OmniDB没有统一的入口管理、分发管理和的权限管理,容易存在安全漏洞。并且,当多套单点OmniDB中的某个节点宕机时,多套单点OmniDB之间无法继续提供服务,私有云环境数据库的访问可靠性较差。
发明内容
本发明实施例提供一种数据访问方法及数据管理服务系统,以解决数据管理服务系统访问私有云环境数据库的可靠性差的问题。
一种数据访问方法方法,应用在数据管理服务系统上,所述数据管理服务系统包括控制节点、与所述控制节点相连的至少一个数据库连接实例、与每一所述数据库连接实例通过一数据库连接节点相连的至少一个数据库实例、以及至少一个物理隔离区,所述物理隔离区上设置有至少一个所述数据库连接实例,所述数据访问方法包括:
所述控制节点接收数据访问请求,所述数据访问请求包括访问区域ID和连接节点ID;
所述控制节点根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例;
所述目标连接实例根据所述连接节点ID查询连接对象映射表,将与所述连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将所述数据访问请求发送给目标连接节点;
所述目标连接节点基于所述数据访问请求访问所述目标数据库,获取数据访问结果。
进一步地,在所述控制节点接收数据访问请求之后,所述数据访问方法还包括:
所述控制节点对所述数据访问请求进行安全验证,获取安全验证结果;
若所述安全验证结果为验证成功,所述控制节点则更新命令执行历史,并执行根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例。
进一步地,在所述控制节点对所述数据访问请求进行安全验证,获取安全验证结果之后,所述数据访问方法还包括:
若所述安全验证结果为验证失败,所述控制节点获取命令执行历史;
所述控制节点根据所述命令执行历史,确定目标访问时间内的历史访问次数;
若所述历史访问次数大于访问次数阈值,所述控制节点则不执行所述根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例;
若所述历史访问次数不大于访问次数阈值,所述控制节点则执行对所述数据访问请求进行安全验证,获取安全验证结果。
进一步地,所述控制节点接收数据访问请求,包括:
所述控制节点接收客户端发送的所述数据访问请求,所述数据访问请求还包括终端标识;
所述控制节点基于所述终端标识查询当前会话记录,判断是否存在与所述终端标识相对应的目标会话;
若存在所述目标会话,所述控制节点则将所述目标会话与所述连接节点ID相关联;
若不存在所述目标会话,所述控制节点则基于所述终端标识,建立与所述连接节点ID相关联的所述目标会话,将所述目标会话与所述连接节点ID相关联。
进一步地,所述数据访问请求还包括终端标识;
在所述控制节点接收数据访问请求之前,还包括:
所述控制节点接收会话连接请求,所述会话连接请求包括终端标识;
所述控制节点基于所述终端标识,创建与所述终端标识相对应的目标会话。
进一步地,所述控制节点根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,包括:
所述控制节点根据所述访问区域ID,获取访问区域ID对应的物理隔离区上的所有数据库连接实例的当前运行状态;
所述控制节点将所述当前运行状态为空闲状态的所述数据库连接实例确定为目标连接实例。
进一步地,所述目标连接实例根据所述连接节点ID查询连接对象映射表,将与所述连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,包括:
所述目标连接实例根据所述连接节点ID查询连接对象映射表,获取与所述连接节点ID相匹配的所述数据库连接节点;
所述目标连接实例对所述数据库连接节点的当前状态进行检测;
所述目标连接实例在所述数据库连接节点的当前状态为无故障状态时,将所述当前状态为无故障状态的数据库连接节点确定为目标连接节点;
所述目标连接实例在所述数据库连接节点的当前状态为故障状态时,获取更新后的连接对象映射表,并根据所述连接节点ID查询所述更新后的连接对象映射表,将与所述连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点。
一种数据管理服务系统,包括控制节点、与所述控制节点相连的至少一个数据库连接实例、与每一所述数据库连接实例通过一数据库连接节点相连的至少一个数据库实例、以及至少一个物理隔离区,所述物理隔离区上设置有至少一个所述数据库连接实例;
所述控制节点,用于接收数据访问请求,所述数据访问请求包括访问区域ID和连接节点ID;
所述控制节点,用于根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例;
所述目标连接实例,用于根据所述连接节点ID查询连接对象映射表,将与所述连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将所述数据访问请求发送给目标连接节点;
所述目标连接节点,用于基于所述数据访问请求访问所述目标数据库,获取数据访问结果。
进一步地,所述控制节点,还用于对所述数据访问请求进行安全验证,获取安全验证结果;
所述控制节点,还用于若所述安全验证结果为验证成功,则更新命令执行历史,并执行根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例。
进一步地,所述控制节点,还用于若所述安全验证结果为验证失败,获取命令执行历史;
所述控制节点,还用于根据所述命令执行历史,确定目标访问时间内的历史访问次数;
所述控制节点,还用于若所述历史访问次数大于访问次数阈值,则不执行所述根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例;
所述控制节点,还用于若所述历史访问次数不大于访问次数阈值,则执行对所述数据访问请求进行安全验证,获取安全验证结果。
进一步地,所述控制节点,还用于接收客户端发送的所述数据访问请求,所述数据访问请求还包括终端标识;
所述控制节点,还用于基于所述终端标识查询当前会话记录,判断是否存在与所述终端标识相对应的目标会话;
所述控制节点,还用于若存在所述目标会话,则将所述目标会话与所述连接节点ID相关联;
所述控制节点,还用于若不存在所述目标会话,则基于所述终端标识,建立与所述连接节点ID相关联的所述目标会话,将所述目标会话与所述连接节点ID相关联。
进一步地,所述控制节点,还用于接收会话连接请求,所述会话连接请求包括终端标识;
所述控制节点,还用于基于所述终端标识,创建与所述终端标识相对应的目标会话。
进一步地,所述控制节点,还用于根据所述访问区域ID,获取访问区域ID对应的物理隔离区上的所有数据库连接实例的当前运行状态;
所述控制节点,还用于将所述当前运行状态为空闲状态的所述数据库连接实例确定为目标连接实例。
进一步地,所述目标连接实例,还用于根据所述连接节点ID查询连接对象映射表,获取与所述连接节点ID相匹配的所述数据库连接节点;
所述目标连接实例,还用于对所述数据库连接节点的当前状态进行检测;
所述目标连接实例,还用于在所述数据库连接节点的当前状态为无故障状态时,将所述当前状态为无故障状态的数据库连接节点确定为目标连接节点;
所述目标连接实例,还用于在所述数据库连接节点的当前状态为故障状态时,获取更新后的连接对象映射表,并根据所述连接节点ID查询所述更新后的连接对象映射表,将与所述连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点。
上述数据访问方法及数据管理服务系统,首先通过控制节点接收数据访问请求,数据访问请求包括访问区域ID和连接节点ID;控制节点根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例;接着,目标连接实例根据连接节点ID查询连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将数据访问请求发送给目标连接节点;最后,目标连接节点基于数据访问请求访问目标数据库,获取数据访问结果,从而实现不同物理隔离区之间的数据库进行访问,并且目标连接实例根据连接节点ID查询连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将数据访问请求发送给目标连接节点,避免因为数据库连接节点出现故障状态,导致无法对待访问数据进行访问,提高对待访问数据进行访问的可靠性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中数据访问方法的一流程图;
图2是本发明一实施例中数据访问方法的另一流程图;
图3是本发明一实施例中数据访问方法的另一流程图;
图4是本发明一实施例中数据访问方法的另一流程图;
图5是本发明一实施例中数据访问方法的另一流程图;
图6是本发明一实施例中数据访问方法的另一流程图;
图7是本发明一实施例中数据访问方法的另一流程图;
图8是本发明一实施例中数据管理服务系统的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出本实施例中数据访问方法的流程图。该数据访问方法应用在数据管理服务系统中,数据管理服务系统包括控制节点、与控制节点相连的至少一个数据库连接实例、与每一数据库连接实例通过一数据库连接节点相连的至少一个数据库实例、以及至少一个物理隔离区,物理隔离区上设置有至少一个数据库连接实例。该数据访问方法用于对数据管理服务系统访问,用于解决数据管理服务系统访问的可靠性差的问题,提高数据管理服务系统数据访问的可靠性。如图1所示,该数据访问方法包括步骤S11至步骤S14,详述如下:
S11:控制节点接收数据访问请求,数据访问请求包括访问区域ID和连接节点ID。
其中,控制节点为数据管理服务系统上接收数据访问请求的节点。优选地,该控制节点为能够提供统一的数据接口接收数据访问请求的节点。示例性的,控制节点将客户端对数据管理服务系统的所有数据库操作对应的数据访问请求,均由该统一的数据接口进行接收,并进行分发管理,便于对客户端发送的数据访问请求进行统一管理,提高数据访问的效率。具体地,数据管理服务系统可以是OmniDB。数据访问请求为对待访问数据进行访问的请求。该待访问数据为需要访问的存储在数据管理服务系统中的数据库上的数据。访问区域ID为待访问数据所在物理隔离区对应的标识。物理隔离区为将数据管理服务系统中的数据库进行物理隔离得到的区域。可以理解地,每一访问区域ID对应的一物理隔离区。连接节点ID为用于访问待访问数据的数据库连接节点的标识。
本示例中,控制节点通过统一的数据接口接收数据访问请求,对客户端发送的数据访问请求进行统一管理,提高数据访问的效率。
S12:控制节点根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例。
其中,数据库连接实例为位于数据管理服务系统物理隔离区内中的数据结构,由线程和内存池组成,能够对数据管理服务系统中的待访问数据进行管理。例如,数据库连接实例可以对待访问数据进行访问。
具体地,数据管理服务系统包括至少一个物理隔离区,每个物理隔离区上设置有至少一个数据库连接实例,当控制节点接收到客户端发送的至少一个数据访问请求时,控制节点根据访问区域ID,将数据访问请求分发至访问区域ID对应的物理隔离区上的目标连接实例。该目标连接实例从物理隔离区上的至少一个数据库连接实例中确定。可选地,目标连接实例的确定可以根据数据库连接实例是否繁忙或者是否故障来进行确定。需要说明的是,由于物理隔离区上设置有至少一个数据库连接实例,当其中的某个数据库连接实例处于繁忙或者故障状态时,还可以选择物理隔离区其它的数据库连接实例确定为目标连接实例,以使目标连接实例能够接收控制节点发送的数据访问请求,或者能够及时对接收到的数据访问请求进行处理。
在一具体实施例中,控制节点根据不同的物理隔离区,采用不同的调度算法对不同的物理隔离区上的数据库实例进行调度,以确定目标连接实例,进而实现将数据访问请求发送给目标连接实例。
在一具体实施中,可以选择物理隔离区上处于空闲状态的数据库连接实例确定为目标连接实例,或者选择物理隔离区上处于无故障状态的数据库连接实例确定为目标连接实例,如此,便能够避免数据库连接实例处于繁忙或者故障状态时无法对待访问数据进行访问,提高数据访问的效率和可靠性。
S13:目标连接实例根据连接节点ID查询连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将数据访问请求发送给目标连接节点。
其中,连接对象映射表为包括连接节点ID与数据库连接节点映射关系的映射表。数据库连接节点为对待访问数据所在数据库进行访问的节点。可选地,目标连接实例可以管理维护至少一个数据库连接节点,以提高目标连接实例的高可用性。目标连接节点为与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点。需要说明的是,目标连接实例所管理维护的所有的数据库连接节点共享一连接对象映射表。
在一具体实施例中,目标连接实例获取数据访问请求后,根据数据访问请求中的连接节点ID,从连接对象映射表查找与连接节点ID相匹配的数据库连接节点,并判断该数据库连接节点是否为无故障状态,若该数据库连接节点为无故障状态,则将该数据库连接节点确定为目标连接节点,并将数据访问请求发送给目标连接节点。可以理解地,通过从连接对象映射表查找与连接节点ID相匹配的数据库连接节点,能够避免目标连接实例将数据访问请求分发错误,提高数据访问过程中的准确性。需要说明的是,连接对象映射表可实时更新,当至少一个数据库连接节点中出现故障状态时,重新调整连接节点ID与无故障数据库连接节点之间的映射关系,从而使目标连接实例能够根据连接节点ID匹配到无故障状态的数据库连接节点,避免因为数据库连接节点出现故障状态,导致无法对待访问数据进行访问,提高对待访问数据进行访问的效率和可靠性。
本示例中,由于目标连接实例可以管理维护至少一个数据库连接节点,从而能够实现对多个数据库连接节点进行分布式访问管理,实现高可用性。
S14:目标连接节点基于数据访问请求访问目标数据库,获取数据访问结果。
其中,目标数据库为待访问数据所在的数据库。数据访问结果为对待访问数据进行访问后得到的结果。
具体地,目标连接实例将数据访问请求发送给目标连接节点后,目标连接节点基于数据访问请求,通过数据库实例访问待访问数据对应的目标数据库,获取数据访问结果。
在本实施例中,首先通过控制节点接收数据访问请求,数据访问请求包括访问区域ID和连接节点ID;控制节点根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例;接着,目标连接实例根据连接节点ID查询连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将数据访问请求发送给目标连接节点;最后,目标连接节点基于数据访问请求访问目标数据库,获取数据访问结果,从而实现不同物理隔离区之间的数据库进行访问,并且目标连接实例根据连接节点ID查询连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将数据访问请求发送给目标连接节点,避免因为数据库连接节点出现故障状态,导致无法对待访问数据进行访问,提高对待访问数据进行访问的可靠性。
在一实施例中,如图2所示,步骤S11之后,在控制节点接收数据访问请求之后,数据访问方法还包括:
S21:控制节点对数据访问请求进行安全验证,获取安全验证结果。
S22:若安全验证结果为验证成功,控制节点则更新命令执行历史,并执行根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例。
其中,安全验证结果为对数据访问请求进行安全验证后得到的结果。命令执行历史为对待访问数据进行访问的历史时间。可选地,对数据访问请求进行安全验证可以是通过对数据访问请求对应的数据表单进行验证,或者对数据访问请求对应的用户权限进行验证。
在一具体实施例中,控制节点获取数据访问请求后,对数据访问请求对应的用户权限进行验证,获取安全验证结果,若安全验证结果为验证成功,控制节点则更新命令执行历史,并执行根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例。在验证成功后,将命令执行历史进行更新,以便对待访问数据的访问记录进行回溯。
在本实施例中,通过控制节点对数据访问请求进行安全验证,获取安全验证结果;若安全验证结果为验证成功,控制节点则更新命令执行历史,并执行根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例,从而提高对待访问数据进行访问的安全性。
在一实施例中,如图3所示,步骤S21之后,在控制节点对数据访问请求进行安全验证,获取安全验证结果之后,数据访问方法还包括:
S31:若安全验证结果为验证失败,控制节点获取命令执行历史。
S32:控制节点根据命令执行历史,确定目标访问时间内的历史访问次数。
S33:若历史访问次数大于访问次数阈值,控制节点则不执行根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例。
S34:若历史访问次数不大于访问次数阈值,控制节点则执行对数据访问请求进行安全验证,获取安全验证结果。
其中,目标访问时间为访问待访问数据的时间。历史访问次数在目标访问时间内数据访问请求对待访问数据请求访问的次数。访问次数阈值为用户自定义设置的阈值。
作为一示例,安全验证结果为验证失败,控制节点获取命令执行历史,以便在后续步骤中判断数据访问请求的安全性,
作为另一实例,控制节点根据命令执行历史,确定目标访问时间内的历史访问次数,也即是确定在目标访问时间内数据访问请求对待访问数据请求访问的次数,以便判断该数据访问请求验证失败是否是偶然事件,以提高对数据访问请求进行安全验证的可靠性。
作为另一实例,若历史访问次数大于访问次数阈值,说明数据管理服务系统可能存在被攻击的风险,控制节点则不执行根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例。
作为另一实例,若历史访问次数不大于访问次数阈值,说明数据管理服务系统不存在被攻击的风险,控制节点则执行对数据访问请求进行安全验证,获取安全验证结果。
在本实施例中,若安全验证结果为验证失败,控制节点获取命令执行历史;控制节点根据命令执行历史,确定目标访问时间内的历史访问次数;若历史访问次数大于访问次数阈值,控制节点则不执行根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将数据访问请求发送给目标连接实例;若历史访问次数不大于访问次数阈值,控制节点则执行对数据访问请求进行安全验证,获取安全验证结果,以便判断该数据访问请求验证失败是否是偶然事件,以提高对数据访问请求进行安全验证的可靠性。
在一实施例中,如图4所示,步骤S11中,控制节点接收数据访问请求,包括:
S41:控制节点接收客户端发送的数据访问请求,数据访问请求还包括终端标识。
S42:控制节点基于终端标识查询当前会话记录,判断是否存在与终端标识相对应的目标会话。
S43:若存在目标会话,控制节点则将目标会话与连接节点ID相关联。
S44:若不存在目标会话,控制节点则基于终端标识,建立与连接节点ID相关联的目标会话,将目标会话与连接节点ID相关联。
其中,终端标识为客户端对应的标识。当前会话记录为控制节点与客户端之间的会话记录。目标会话为与终端标识相对应的会话。
作为一示例,控制节点接收客户端发送的数据访问请求,数据访问请求还包括终端标识,用于判断是否存在与终端标识相对应的目标会话。
作为另一实例,控制节点基于终端标识查询当前会话记录,判断是否存在与终端标识相对应的目标会话,目的是将目标会话与连接节点ID相关联,以使数据库实例能够将同一目标会话中的不同的数据访问请求进行关联,防止数据库实例对数据访问请求分发错误,提高数据访问的过程中的可靠性。
作为另一实施例,若存在目标会话,控制节点则将目标会话与连接节点ID相关联;若不存在目标会话,控制节点则基于终端标识,建立与连接节点ID相关联的目标会话,将目标会话与连接节点ID相关联,已达到防止数据库实例对数据访问请求分发错误的目的,进而提高数据访问的过程中的可靠性。
在本实施例中,控制节点接收客户端发送的数据访问请求,数据访问请求还包括终端标识;控制节点基于终端标识查询当前会话记录,判断是否存在与终端标识相对应的目标会话;若存在目标会话,控制节点则将目标会话与连接节点ID相关联;若不存在目标会话,控制节点则基于终端标识,建立与连接节点ID相关联的目标会话,将目标会话与连接节点ID相关联,防止数据库实例对数据访问请求分发错误,提高数据访问的过程中的可靠性。
在一实施例中,如图5所示,步骤S11之前,数据访问请求还包括终端标识,在控制节点接收数据访问请求之前,还包括:
S51:控制节点接收会话连接请求,会话连接请求包括终端标识。
S52:控制节点基于终端标识,创建与终端标识相对应的目标会话。
其中,会话连接请求为客户端请求与控制节点进行会话的请求。
在本实施例中,在控制节点接收数据访问请求之前,控制节点接收客户端发送的会话连接请求,会话连接请求包括终端标识,控制节点基于终端标识,创建与终端标识相对应的目标会话,如此,当控制节点接收客户端发送的数据访问请求时,便将目标会话与连接节点ID相关联,已达到防止数据库实例对数据访问请求分发错误的目的,进而提高数据访问的过程中的可靠性。
在一实施例中,如图6所示,步骤S13中,控制节点根据访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,包括:
S61:控制节点根据访问区域ID,获取访问区域ID对应的物理隔离区上的所有数据库连接实例的当前运行状态。
S62:控制节点将当前运行状态为空闲状态的数据库连接实例确定为目标连接实例。
其中,当前运行状态为当前时刻访问区域ID对应的物理隔离区上的所有数据库连接实例的运行状态。
在一具体实施例中,控制节点根据访问区域ID,获取访问区域ID对应的物理隔离区上的所有数据库连接实例的当前运行状态,以判断当前时刻访问区域ID对应的物理隔离区上的所有数据库连接实例的运行状态是否为空闲状态。
在一具体实施例中,控制节点将当前运行状态为空闲状态的数据库连接实例确定为目标连接实例,从而能够从物理隔离区上的所有数据库连接实例选择空闲状态的数据库连接实例确定为目标连接实例,从而实现多个数据库连接实例协同工作。
在本实施例中,控制节点根据访问区域ID,获取访问区域ID对应的物理隔离区上的所有数据库连接实例的当前运行状态;控制节点将当前运行状态为空闲状态的数据库连接实例确定为目标连接实例,从而能够从物理隔离区上的所有数据库连接实例选择空闲状态的数据库连接实例确定为目标连接实例,从而实现多个数据库连接实例协同工作,提高数据库连接实例的高可用性。
在一实施例中,如图7所示,步骤S13中,目标连接实例根据连接节点ID查询连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,包括:
S71:目标连接实例根据连接节点ID查询连接对象映射表,获取与连接节点ID相匹配的数据库连接节点。
S72:目标连接实例对数据库连接节点的当前状态进行检测。
S73:目标连接实例在数据库连接节点的当前状态为无故障状态时,将当前状态为无故障状态的数据库连接节点确定为目标连接节点。
S74:目标连接实例在数据库连接节点的当前状态为故障状态时,获取更新后的连接对象映射表,并根据连接节点ID查询更新后的连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点。
其中,上述更新后的连接对象映射表为当至少一个数据库连接节点中出现故障状态时,重新调整连接节点ID与无故障数据库连接节点之间的映射关系后得到的连接对象映射表。例如,连接对象映射表可实时更新,当至少一个数据库连接节点中出现故障状态时,重新调整连接节点ID与无故障数据库连接节点之间的映射关系。
在本实施例中,目标连接实例根据连接节点ID查询连接对象映射表,获取与连接节点ID相匹配的数据库连接节点;目标连接实例对数据库连接节点的当前状态进行检测;目标连接实例在数据库连接节点的当前状态为无故障状态时,将当前状态为无故障状态的数据库连接节点确定为目标连接节点;目标连接实例在数据库连接节点的当前状态为故障状态时,获取更新后的连接对象映射表,并根据连接节点ID查询更新后的连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,避免因为数据库连接节点出现故障状态,导致无法对待访问数据进行访问,提高对待访问数据进行访问的效率和可靠性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
如图8所示,本实施例提供一种数据管理服务系统,包括控制节点10、与控制节点10相连的至少一个数据库连接实例20、与每一数据库连接实例20通过一数据库连接节点30相连的至少一个数据库实例40、以及至少一个物理隔离区50,物理隔离区50上设置有至少一个数据库连接实例20;
控制节点10,用于接收数据访问请求,数据访问请求包括访问区域ID和连接节点ID;
控制节点10,用于根据访问区域ID,将访问区域ID对应的物理隔离区50上数据库连接实例20确定为目标连接实例,将数据访问请求发送给目标连接实例;
目标连接实例,用于根据连接节点ID查询连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点30确定为目标连接节点,将数据访问请求发送给目标连接节点;
目标连接节点,用于基于数据访问请求访问目标数据库,获取数据访问结果。
进一步地,控制节点10,还用于对数据访问请求进行安全验证,获取安全验证结果;
控制节点10,还用于若安全验证结果为验证成功,则更新命令执行历史,并执行根据访问区域ID,将访问区域ID对应的物理隔离区50上数据库连接实例20确定为目标连接实例,将数据访问请求发送给目标连接实例。
进一步地,控制节点10,还用于若安全验证结果为验证失败,获取命令执行历史;
控制节点10,还用于根据命令执行历史,确定目标访问时间内的历史访问次数;
控制节点10,还用于若历史访问次数大于访问次数阈值,则不执行根据访问区域ID,将访问区域ID对应的物理隔离区50上数据库连接实例20确定为目标连接实例,将数据访问请求发送给目标连接实例;
控制节点10,还用于若历史访问次数不大于访问次数阈值,则执行对数据访问请求进行安全验证,获取安全验证结果。
进一步地,控制节点10,还用于接收客户端发送的数据访问请求,数据访问请求还包括终端标识;
控制节点10,还用于基于终端标识查询当前会话记录,判断是否存在与终端标识相对应的目标会话;
控制节点10,还用于若存在目标会话,则将目标会话与连接节点ID相关联;
控制节点10,还用于若不存在目标会话,则基于终端标识,建立与连接节点ID相关联的目标会话,将目标会话与连接节点ID相关联。
进一步地,控制节点10,还用于接收会话连接请求,会话连接请求包括终端标识;
控制节点10,还用于基于终端标识,创建与终端标识相对应的目标会话。
进一步地,控制节点10,还用于根据访问区域ID,获取访问区域ID对应的物理隔离区50上的所有数据库连接实例20的当前运行状态;
控制节点10,还用于将当前运行状态为空闲状态的数据库连接实例20确定为目标连接实例。
进一步地,目标连接实例,还用于根据连接节点ID查询连接对象映射表,获取与连接节点ID相匹配的数据库连接节点30;
目标连接实例,还用于对数据库连接节点30的当前状态进行检测;
目标连接实例,还用于在数据库连接节点30的当前状态为无故障状态时,将当前状态为无故障状态的数据库连接节点确定为目标连接节点;
目标连接实例,还用于在数据库连接节点30的当前状态为故障状态时,获取更新后的连接对象映射表,并根据连接节点ID查询更新后的连接对象映射表,将与连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点。
关于数据变更装置的具体限定可以参见上文中对于数据变更方法的限定,在此不再赘述。上述数据变更装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据访问方法,其特征在于,应用在数据管理服务系统上,所述数据管理服务系统包括控制节点、与所述控制节点相连的至少一个数据库连接实例、与每一所述数据库连接实例通过一数据库连接节点相连的至少一个数据库实例、以及至少一个物理隔离区,所述物理隔离区上设置有至少一个所述数据库连接实例,所述数据访问方法包括:
所述控制节点接收数据访问请求,所述数据访问请求包括访问区域ID和连接节点ID;
所述控制节点根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例;
所述目标连接实例根据所述连接节点ID查询连接对象映射表,将与所述连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将所述数据访问请求发送给目标连接节点;
所述目标连接节点基于所述数据访问请求访问目标数据库,获取数据访问结果。
2.如权利要求1所述的数据访问方法,其特征在于,在所述控制节点接收数据访问请求之后,所述数据访问方法还包括:
所述控制节点对所述数据访问请求进行安全验证,获取安全验证结果;
若所述安全验证结果为验证成功,所述控制节点则更新命令执行历史,并执行根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例。
3.如权利要求2所述的数据访问方法,其特征在于,在所述控制节点对所述数据访问请求进行安全验证,获取安全验证结果之后,所述数据访问方法还包括:
若所述安全验证结果为验证失败,所述控制节点获取命令执行历史;
所述控制节点根据所述命令执行历史,确定目标访问时间内的历史访问次数;
若所述历史访问次数大于访问次数阈值,所述控制节点则不执行所述根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例;
若所述历史访问次数不大于访问次数阈值,所述控制节点则执行对所述数据访问请求进行安全验证,获取安全验证结果。
4.如权利要求1所述的数据访问方法,其特征在于,所述控制节点接收数据访问请求,包括:
所述控制节点接收客户端发送的所述数据访问请求,所述数据访问请求还包括终端标识;
所述控制节点基于所述终端标识查询当前会话记录,判断是否存在与所述终端标识相对应的目标会话;
若存在所述目标会话,所述控制节点则将所述目标会话与所述连接节点ID相关联;
若不存在所述目标会话,所述控制节点则基于所述终端标识,建立与所述连接节点ID相关联的所述目标会话,将所述目标会话与所述连接节点ID相关联。
5.如权利要求1所述的数据访问方法,其特征在于,所述数据访问请求还包括终端标识;
在所述控制节点接收数据访问请求之前,还包括:
所述控制节点接收会话连接请求,所述会话连接请求包括终端标识;
所述控制节点基于所述终端标识,创建与所述终端标识相对应的目标会话。
6.如权利要求1所述的数据访问方法,其特征在于,所述控制节点根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,包括:
所述控制节点根据所述访问区域ID,获取访问区域ID对应的物理隔离区上的所有数据库连接实例的当前运行状态;
所述控制节点将所述当前运行状态为空闲状态的所述数据库连接实例确定为目标连接实例。
7.如权利要求1所述的数据访问方法,其特征在于,所述目标连接实例根据所述连接节点ID查询连接对象映射表,将与所述连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,包括:
所述目标连接实例根据所述连接节点ID查询连接对象映射表,获取与所述连接节点ID相匹配的所述数据库连接节点;
所述目标连接实例对所述数据库连接节点的当前状态进行检测;
所述目标连接实例在所述数据库连接节点的当前状态为无故障状态时,将所述当前状态为无故障状态的数据库连接节点确定为目标连接节点;
所述目标连接实例在所述数据库连接节点的当前状态为故障状态时,获取更新后的连接对象映射表,并根据所述连接节点ID查询所述更新后的连接对象映射表,将与所述连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点。
8.一种数据管理服务系统,其特征在于,包括控制节点、与所述控制节点相连的至少一个数据库连接实例、与每一所述数据库连接实例通过一数据库连接节点相连的至少一个数据库实例和至少一个物理隔离区,所述物理隔离区上设置有至少一个所述数据库连接实例;
所述控制节点,用于接收数据访问请求,所述数据访问请求包括访问区域ID和连接节点ID;
所述控制节点,用于根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例;
所述目标连接实例,用于根据所述连接节点ID查询连接对象映射表,将与所述连接节点ID相匹配且当前状态为无故障状态的数据库连接节点确定为目标连接节点,将所述数据访问请求发送给目标连接节点;
所述目标连接节点,用于基于所述数据访问请求访问目标数据库,获取数据访问结果。
9.如权利要求8所述的数据管理服务系统,其特征在于,所述控制节点,还用于对所述数据访问请求进行安全验证,获取安全验证结果;
所述控制节点,还用于若所述安全验证结果为验证成功,则更新命令执行历史,并执行根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例。
10.如权利要求9所述的数据管理服务系统,其特征在于,所述控制节点,还用于若所述安全验证结果为验证失败,获取命令执行历史;
所述控制节点,还用于根据所述命令执行历史,确定目标访问时间内的历史访问次数;
所述控制节点,还用于若所述历史访问次数大于访问次数阈值,则不执行所述根据所述访问区域ID,将访问区域ID对应的物理隔离区上数据库连接实例确定为目标连接实例,将所述数据访问请求发送给目标连接实例;
所述控制节点,还用于若所述历史访问次数不大于访问次数阈值,则执行对所述数据访问请求进行安全验证,获取安全验证结果。
CN202110739204.7A 2021-06-30 2021-06-30 数据访问方法及数据管理服务系统 Active CN113343275B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110739204.7A CN113343275B (zh) 2021-06-30 2021-06-30 数据访问方法及数据管理服务系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110739204.7A CN113343275B (zh) 2021-06-30 2021-06-30 数据访问方法及数据管理服务系统

Publications (2)

Publication Number Publication Date
CN113343275A CN113343275A (zh) 2021-09-03
CN113343275B true CN113343275B (zh) 2024-03-19

Family

ID=77481955

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110739204.7A Active CN113343275B (zh) 2021-06-30 2021-06-30 数据访问方法及数据管理服务系统

Country Status (1)

Country Link
CN (1) CN113343275B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095317A (zh) * 2014-05-23 2015-11-25 中国银联股份有限公司 分布式数据库服务管理系统
CN106131233A (zh) * 2016-06-20 2016-11-16 腾讯科技(深圳)有限公司 实现数据库多路径访问的方法、装置及系统
CN108093094A (zh) * 2017-12-08 2018-05-29 腾讯科技(深圳)有限公司 数据库实例访问方法、装置、系统、存储介质和设备
CN109543463A (zh) * 2018-10-11 2019-03-29 平安科技(深圳)有限公司 数据安全访问方法、装置、计算机设备及存储介质
CN112527310A (zh) * 2020-12-15 2021-03-19 平安国际智慧城市科技股份有限公司 多租户数据隔离方法、装置、计算机设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10536545B2 (en) * 2013-09-27 2020-01-14 Oracle International Corporation Cloud database connection multiplexing
WO2020258249A1 (zh) * 2019-06-28 2020-12-30 华为技术有限公司 数据库访问方法和装置、计算设备和计算机程序产品

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095317A (zh) * 2014-05-23 2015-11-25 中国银联股份有限公司 分布式数据库服务管理系统
CN106131233A (zh) * 2016-06-20 2016-11-16 腾讯科技(深圳)有限公司 实现数据库多路径访问的方法、装置及系统
CN108093094A (zh) * 2017-12-08 2018-05-29 腾讯科技(深圳)有限公司 数据库实例访问方法、装置、系统、存储介质和设备
CN109543463A (zh) * 2018-10-11 2019-03-29 平安科技(深圳)有限公司 数据安全访问方法、装置、计算机设备及存储介质
CN112527310A (zh) * 2020-12-15 2021-03-19 平安国际智慧城市科技股份有限公司 多租户数据隔离方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN113343275A (zh) 2021-09-03

Similar Documents

Publication Publication Date Title
CN110602169B (zh) 服务调用方法、装置、计算机设备和存储介质
CN109032824A (zh) 数据库校验方法、装置、计算机设备和存储介质
CN111309785B (zh) 基于Spring框架的数据库访问方法、装置、计算机设备和介质
CN108897658B (zh) 主数据库监控方法、装置、计算机设备和存储介质
WO2019127890A1 (zh) 漏洞扫描方法、装置、计算机设备和存储介质
CN110555041A (zh) 数据处理方法、装置、计算机设备和存储介质
CN112613993B (zh) 交易数据处理方法、装置、计算机设备和存储介质
CN111901176B (zh) 故障确定方法、装置、设备及存储介质
CN110727698A (zh) 数据库访问方法、装置、计算机设备和存储介质
CN112291904A (zh) 智能路灯设备集成控制方法、服务器、系统及介质
CN112328573A (zh) kubernetes集群中数据库迁移方法和系统
CN111198921A (zh) 数据库的切换方法、装置、计算机设备和存储介质
CN110933192A (zh) 局域网ip地址分配方法、装置、系统、计算机设备
CA3130314A1 (en) Order state unified management method and device, computer equipment and storage medium
CN114143090A (zh) 基于网络安全架构的防火墙部署方法、装置、设备及介质
CN113343275B (zh) 数据访问方法及数据管理服务系统
CN113612814A (zh) 一种会话信息的筛选方法、装置、终端及存储介质
CN112686568A (zh) 运维策略生成处理方法、装置、系统、设备和存储介质
CN109857344B (zh) 基于共享内存的心跳状态判断方法、装置和计算机设备
CN114579473B (zh) 应用测试方法、装置、设备及存储介质
CN111338848B (zh) 故障应用副本处理方法、装置、计算机设备和存储介质
CN111552551A (zh) 基于主从系统的用户管理方法、装置、计算机设备和介质
CN115396492B (zh) 服务请求方法、装置、计算机设备及程序产品
CN115277232B (zh) 安全策略回收方法和装置
CN113268348B (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