CN112363838A - 数据处理方法及装置、存储介质、电子装置 - Google Patents
数据处理方法及装置、存储介质、电子装置 Download PDFInfo
- Publication number
- CN112363838A CN112363838A CN202011311560.0A CN202011311560A CN112363838A CN 112363838 A CN112363838 A CN 112363838A CN 202011311560 A CN202011311560 A CN 202011311560A CN 112363838 A CN112363838 A CN 112363838A
- Authority
- CN
- China
- Prior art keywords
- service
- node
- data
- processed
- query
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
-
- 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/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- 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/2453—Query optimisation
- G06F16/24532—Query optimisation of parallel 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/24569—Query processing with adaptation to specific hardware, e.g. adapted for using GPUs or SSDs
-
- 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/2462—Approximate or statistical 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
Abstract
本发明实施例提供了一种数据处理方法及装置、存储介质、电子装置,该方法包括:解析从客户端获取的业务请求,得到待处理业务,其中,客户端与主管理节点连接;确定待处理业务的业务类型;基于业务类型确定执行待处理业务的节点,以通过节点对待处理业务执行处理操作,得到处理结果。通过本发明,解决了分布式数据库在硬件条件资源有限、高并发场景下查询性能低的问题,达到提高分布式数据库在硬件条件资源有限、高并发场景下查询性能的效果。
Description
技术领域
本发明实施例涉及数据处理领域,具体而言,涉及一种数据处理方法及装置、存储介质、电子装置。
背景技术
随着近年来各行各业数据生产总量增长越来越迅速,单节点数据库已经很难同时满足海量数据存储和高并发数据访问快速响应。分布式数据库应运而生,其通过多节点,对数据和数据表切分,有效缓解海量数据存储问题,通过双机集群系统(Highly Available,简称为HA)等方式实现高可用、低时延的数据访问已成为大数据行业的主流选择。但是,若实际使用中,由于受限于硬件或者机房环境无法进行扩容时,随着数据存储总量的不断攀升,高并发的业务请求将出现堆积甚至数据库无法响应请求的情况。
针对分布式数据库在硬件条件资源有限、高并发场景下查询性能低的问题,相关技术中尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据处理方法及装置、存储介质、电子装置,以至少解决相关技术中分布式数据库在硬件条件资源有限、高并发场景下查询性能低的问题。
根据本发明的一个实施例,提供了一种数据处理方法,包括:解析从客户端获取的业务请求,得到待处理业务,其中,上述客户端与主管理节点连接;确定上述待处理业务的业务类型;基于所述业务类型确定执行所述待处理业务的节点,以通过所述节点对所述待处理业务执行处理操作,得到处理结果。
根据本发明的另一个实施例,提供了一种数据处理装置,包括:第一解析模块,用于解析从客户端获取的业务请求,得到待处理业务,其中,上述客户端与主管理节点连接;第一确定模块,用于确定上述待处理业务的业务类型;第一处理模块,用于基于所述业务类型确定执行所述待处理业务的节点,以通过所述节点对所述待处理业务执行处理操作,得到处理结果。
在一个示例性实施例中,上述第一解析模块,包括:第一确定单元,用于通过解析器对上述业务请求进行解析,得到上述待处理业务。
在一个示例性实施例中,上述第一处理模块,包括:第二确定单元,用于在上述待处理业务是增删改业务的情况下,将N个主数据节点确定为执行上述增删改业务的节点,其中,上述N是大于或等于1的自然数;第一发送单元,用于将上述待处理业务发送至上述N个主数据节点中;第三确定单元,用于通过上述N个主数据节点在上述数据库中执行上述增删改业务,得到增删改处理结果。
在一个示例性实施例中,上述第一处理模块,包括:第四确定单元,用于在上述待处理业务是查询业务的情况下,确定上述查询业务的待查询的数据范围;第五确定单元,用于基于上述查询业务的待查询的数据范围确定执行上述查询业务的节点,以通过上述节点在数据库中对上述查询业务执行查询操作,得到查询结果。
在一个示例性实施例中,上述第五确定单元包括:第一查询子单元,用于在上述查询业务的待查询的数据范围小于或等于上述数据库中的数据分布统计范围的情况下,将主管理节点确定为执行上述查询业务的节点;通过上述主管理节点查询上述待查询的数据,得到查询结果;第二查询子单元,用于在上述查询业务的待查询的数据范围大于上述数据库中的数据分布统计范围,且主数据节点的节点连接数量小于或等于预设连接数据的情况下,将主数据节点确定为执行上述查询业务的节点;通过上述主数据节点从上述数据库中查询上述待查询数据,得到查询结果;第三查询子单元,用于在上述查询业务的待查询的数据范围大于上述数据库中的数据分布统计范围,且主数据节点的节点连接数量大于预设连接数据的情况下,将备用数据节点确定为执行上述查询业务的节点;通过上述备用数据节点从上述数据库中查询上述待查询数据,得到查询结果,其中,上述备用数据节点是上述主数据节点的备用的数据节点。
在一个示例性实施例中,上述装置还包括:汇总模块,用于在基于上述业务类型在数据库中对上述待处理业务执行处理操作,得到处理结果之后,汇总上述处理结果;第一发送模块,用于将上述处理结果发送至上述客户端中,以指示上述客户端断开与上述主管理节点的连接。
在一个示例性实施例中,上述装置还包括:第一设置模块,用于在确定上述待处理业务的业务类型之后,基于上述待处理业务的类型设置上述待处理业务的执行时长;释放模块,用于在上述执行时长大于预设时长的情况下,释放对上述待处理业务的执行。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,由于解析从客户端获取的业务请求,得到待处理业务,其中,客户端与主管理节点连接;确定待处理业务的业务类型;基于业务类型确定执行待处理业务的节点,以通过节点对待处理业务执行处理操作,得到处理结果。实现了基于业务类型在分布式数据库中进行业务处理的目的,可以均衡各个主备数据节点的压力。因此,可以解决分布式数据库在硬件条件资源有限、高并发场景下查询性能低的问题,达到提高分布式数据库在硬件条件资源有限、高并发场景下查询性能的效果。
附图说明
图1是本发明实施例的一种数据处理方法的移动终端的硬件结构框图;
图2是根据本发明实施例的数据处理方法的流程图;
图3是根据本发明实施例的分布统计的流程图;
图4是根据本发明实施例的查询业务的流程图;
图5是根据本发明实施例的分布式数据库中的业务流转流程图;
图6是根据本发明实施例的业务的运行时间的限定流程图;
图7是根据本发明实施例的数据处理装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的一种数据处理方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据处理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种数据处理方法,图2是根据本发明实施例的数据处理方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,解析从客户端获取的业务请求,得到待处理业务,其中,客户端与主管理节点连接;
步骤S204,确定待处理业务的业务类型;
步骤S206,基于业务类型确定执行待处理业务的节点,以通过节点对待处理业务执行处理操作,得到处理结果。
其中,上述步骤的执行主体可以为服务器等,但不限于此。
可选地,本实施例包括但不限于应用于在分布式数据库中进行数据操作的场景中。在该场景中,待处理业务的业务类型包括数据的查询、数据的增删改等。
通过上述步骤,由于解析从客户端获取的业务请求,得到待处理业务,其中,客户端与主管理节点连接;确定待处理业务的业务类型;基于业务类型确定执行待处理业务的节点,以通过节点对待处理业务执行处理操作,得到处理结果。实现了基于业务类型在分布式数据库中进行业务处理的目的,可以均衡各个主备数据节点的压力。因此,可以解决分布式数据库在硬件条件资源有限、高并发场景下查询性能低的问题,达到提高分布式数据库在硬件条件资源有限、高并发场景下查询性能的效果。
在一个示例性实施例中,解析从客户端获取的业务请求,得到待处理业务,包括:
S1,通过解析器对业务请求进行解析,得到待处理业务。
在一个示例性实施例中,基于业务类型确定执行待处理业务的节点,以通过节点对待处理业务执行处理操作,得到处理结果,包括:
S1,在所述待处理业务是增删改业务的情况下,将N个主数据节点确定为执行所述增删改业务的节点,其中,所述N是大于或等于1的自然数;
S2,将所述待处理业务发送至所述N个主数据节点中;
S3,通过N个主数据节点在数据库中执行增删改业务,得到增删改处理结果。
可选地,在本实施例中,N个主数据节点均配置有备用的数据节点。当主数据节点出现异常时,备用数据节点迅速切换成新主数据节点对外提供服务。
在一个示例性实施例中,基于业务类型确定执行待处理业务的节点,以通过节点对待处理业务执行处理操作,得到处理结果,包括:
S1,在待处理业务是查询业务的情况下,确定查询业务的待查询的数据范围;
S2,基于所述查询业务的待查询的数据范围确定执行所述查询业务的节点,以通过所述节点在数据库中对所述查询业务执行查询操作,得到查询结果。
可选地,在本实施例中,在待处理业务是查询业务的情况下,则进一步分析查询的数据范围是否超出当前的分布统计信息。
在一个示例性实施例中,基于所述查询业务的待查询的数据范围确定执行所述查询业务的节点,以通过所述节点在数据库中对所述查询业务执行查询操作,得到查询结果,包括:
S1,在所述查询业务的待查询的数据范围小于或等于所述数据库中的数据分布统计范围的情况下,将主管理节点确定为执行所述查询业务的节点;通过所述主管理节点查询所述待查询的数据,得到所述查询结果;
S2,在所述查询业务的待查询的数据范围大于所述数据库中的数据分布统计范围,且主数据节点的节点连接数量小于或等于预设连接数据的情况下,将主数据节点确定为执行所述查询业务的节点;通过所述主数据节点从所述数据库中查询所述待查询数据,得到所述查询结果;
S3,在所述查询业务的待查询的数据范围大于所述数据库中的数据分布统计范围,且主数据节点的节点连接数量大于预设连接数据的情况下,将备用数据节点确定为执行所述查询业务的节点;通过所述备用数据节点从所述数据库中查询所述待查询数据,得到所述查询结果,其中,所述备用数据节点是所述主数据节点的备用的数据节点。
可选地,在本实施例中,若是查询类的请求,则进一步分析查询的数据范围是否超出当前的分布统计信息,若没有超出范围,则直接从主管理节点获取查询结果,若超出范围,则进一步判断当前主数据节点的连接数,若未超过配置最大连接数的70%时,则继续由主数据节点执行业务,若超过配置最大连接数的70%时,则切换到备用数据节点执行业务。
在一个示例性实施例中,在基于所述业务类型确定执行所述待处理业务的节点,以通过所述节点对所述待处理业务执行处理操作,得到处理结果之后,方法还包括:
S1,汇总处理结果;
S2,将处理结果发送至客户端中,以指示客户端断开与主管理节点的连接。
可选地,在本实施例中,当各个数据节点业务执行完成后将本节点的结果返回给管理节点,管理节点汇总后输出给客户端。
在一个示例性实施例中,在确定待处理业务的业务类型之后,方法还包括:
S1,基于待处理业务的类型设置待处理业务的执行时长;
S2,在执行时长大于预设时长的情况下,释放对待处理业务的执行。
可选地,在本实施例中,若单次待处理业务的运行时间超过一定时间或者有连接长时间未释放则可能是业务sql语句存在优化空间或者客户端连接未释放等问题,进而引起分布式数据库执行任务堆积。本实施例在每次业务处理的流程中,分布式数据库端增加一个定时检验进程,该进程会对空闲的连接释放,对不同请求类型进行分类设置不同的超时时间,例如,增删改业务设置为6小时,查询业务设置为1小时,数据库系统运维的业务设置为24小时,超时的任务将会记录并终止,释放连接以进一步保证其余的请求可执行。
下面结合具体实施例对本发明进行说明:
在本实施例中,分布式数据库为了高可用,管理节点和数据节点均配置有备份节点,管理节点负责下发业务请求以及结果收集反馈,所有业务在主数据节点完成,备用数据节点通过复制进程与主数据节点建立连接并同步数据,当主数据节点出现异常时备用数据节点迅速切换成新主数据节点对外提供服务,且在一定硬件资源条件下配置有最大连接数,例如单节点内存64G、CPU32核的分布式数据库集群,配置最大连接数为250,当连接数超过200时出现任务堆积甚至无法响应业务请求的情况。实际应用中通过分析分布式数据库常用业务使用情况,在各个备用数据节点根据人为设定以定时/定量方式进行数据分布统计,以提高查询效率,分布统计流程如图3所示,包括以下步骤:
S301:客户端发起业务请求;
S302:主管理节点对业务请求解析;
S303:对业务请求执行增删改变更操作;
S304:判断业务请求的执行是否达到预设的数据统计条件(数量/时间),是转至S305,否则,转至S301;
S305:备用数据节点进行数据统计;
S306:主管理节点汇总存储。
例如,某市智慧交警项目,经过统计分析,查询当日过车总数业务非常频繁,预估每日过车量2000万,则在数据库运行过程中每隔1小时/每变更100万在主数据节点执行一次总量的数据分布统计,并将统计结果汇总保存在主管理节点中,当业务方发起查询当日过车总数请求时,可以直接从主管理节点的汇总结果中读取,而不需要每次从主数据节点查询,提高了查询效率,如图4所示,包括以下步骤:
S401:客户端发起业务请求;
S402:主管理节点对业务请求执行计划解析器解析;
S403:进行查询总数的查询;
S404:主管理节点获取统计分布信息。
可选地,实际使用中并不能做到所有的业务都在数据分布统计信息范围内,或者业务比较复杂时则必须每次都从主数据节点查询,并且随着此类业务量的查询并发连接数增加到接近最大连接数时极易发生请求阻塞或者无法响应甚至数据库宕机的情况。
分布式数据库一次正常的业务流程从客户端连接数据库发起请求开始,到分布式数据库处理,最后将结果返回给客户端。外部用户通过分布式数据库管理节点创建连接,并将业务请求发送给数据库;分布式数据库管理节点接收到请求后,传给执行计划解析器对请求进行解析,解析完成后将任务下发给各个主数据节点,各个主数据节点负责将本节点的数据处理完成并将结果返回给管理节点。管理节点将各个主数据节点返回的结果进行汇总并返回结果给客户端,客户端断开与管理节点的连接,本次业务流程结束。
本实施例对分布式数据库中的业务流转流程进行了改进,如图5所示,包括以下步骤:
S501-S502:当分布式数据库管理节点接收到每一个业务请求并经执行计划解析器解析后生成执行计划,修改源码,分析业务请求的类型;
S503:如果是增删改业务的,转至S509(将执行计划下发到所有主数据节点执行);
S504:若是查询类的请求;
S505:分析查询的数据范围是否超出当前的分布统计信息,若没有超出范围,转至S508(直接从主管理节点获取查询结果);
S506:若超出范围,则进一步判断当前主数据节点的连接数;
S507:若未超过配置最大连接数的70%时,则继续由主数据节点执行业务(S509);
S507:若超过配置最大连接数的70%时,则切换到备数据节点执行业务;
S510:当各个数据节点业务执行完成后将本节点的结果返回给管理节点,管理节点汇总后输出给客户端。
此外,若单次业务运行时间超过一定时间或者有连接长时间未释放则可能是业务sql语句存在优化空间或者客户端连接未释放等问题,进而引起分布式数据库执行任务堆积,因此本实施例在每次业务处理的流程中,分布式数据库端增加一个定时检验进程,该进程会对空闲的连接释放,对不同请求类型进行分类设置不同的超时时间。如图6所示,本实施例对业务的运行时间的限定包括以下步骤:
S601:一轮定时检验进程;
S602:判断是否存在外部请求,是则转至S603,否则转至S608;
S603:判断是否是增删改业务请求,是则转至S604,否则,转至S605(进行数据查询);
S604:增删改业务设置为6小时,判断运行时间是否大于6小时;
S607:在运行时间大于6小时的情况下,记录执行语句并终止该任务;
S605:在业务是查询业务的情况下,查询业务设置为1小时;
S606:判断查询业务的运行时间是否大于1小时;在大于1小时的情况下,转至S607;
S608:系统运维,数据库系统运维的业务设置为24小时;
S609:判断系统运维时间是否大于24小时,在大于24小时的情况下,转至S607。超时的任务将会记录并终止,释放连接以进一步保证其余的请求可执行。
通过该方法,可以实现分布式数据库接近最大连接并发数下的高效业务处理性能。
综上所述,高并发时均衡各个主备数据节点的压力。通过修改分布式数据库执行计划解析器源码实现高并发时备数据节点提供查询业务以均衡主备数据节点的压力;高连接利用率。通过修改分布式数据库源码增加检验进程,实现空闲连接快速回收,针对业务类型分层控制最大执行时间,回收异常业务连接实现分布式数据库高连接利用率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种数据处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图7是根据本发明实施例的数据处理装置的结构框图,如图7所示,该装置包括:
第一解析模块72,用于解析从客户端获取的业务请求,得到待处理业务,其中,客户端与主管理节点连接;
第一确定模块74,用于确定待处理业务的业务类型;
第一处理模块76,用于基于业务类型确定执行待处理业务的节点,以通过节点对待处理业务执行处理操作,得到处理结果。
在一个示例性实施例中,上述第一解析模块,包括:
第一确定单元,用于通过解析器对上述业务请求进行解析,得到上述待处理业务。
在一个示例性实施例中,上述第一处理模块,包括:
第二确定单元,用于在上述待处理业务是增删改业务的情况下,将N个主数据节点确定为执行上述增删改业务的节点,其中,上述N是大于或等于1的自然数;
第一发送单元,用于将上述待处理业务发送至上述N个主数据节点中;
第三确定单元,用于通过上述N个主数据节点在上述数据库中执行上述增删改业务,得到增删改处理结果。
在一个示例性实施例中,上述第一处理模块,包括:
第四确定单元,用于在上述待处理业务是查询业务的情况下,确定上述查询业务的待查询的数据范围;
第五确定单元,用于基于上述查询业务的待查询的数据范围确定执行上述查询业务的节点,以通过上述节点在数据库中对上述查询业务执行查询操作,得到查询结果。
在一个示例性实施例中,上述第五确定单元包括:
第一查询子单元,用于在上述查询业务的待查询的数据范围小于或等于上述数据库中的数据分布统计范围的情况下,将主管理节点确定为执行上述查询业务的节点;通过上述主管理节点查询上述待查询的数据,得到查询结果;
第二查询子单元,用于在上述查询业务的待查询的数据范围大于上述数据库中的数据分布统计范围,且主数据节点的节点连接数量小于或等于预设连接数据的情况下,将主数据节点确定为执行上述查询业务的节点;通过上述主数据节点从上述数据库中查询上述待查询数据,得到查询结果;
第三查询子单元,用于在上述查询业务的待查询的数据范围大于上述数据库中的数据分布统计范围,且主数据节点的节点连接数量大于预设连接数据的情况下,将备用数据节点确定为执行上述查询业务的节点;通过上述备用数据节点从上述数据库中查询上述待查询数据,得到查询结果,其中,上述备用数据节点是上述主数据节点的备用的数据节点。
在一个示例性实施例中,上述装置还包括:
汇总模块,用于在基于上述业务类型在数据库中对上述待处理业务执行处理操作,得到处理结果之后,汇总上述处理结果;
第一发送模块,用于将上述处理结果发送至上述客户端中,以指示上述客户端断开与上述主管理节点的连接。
在一个示例性实施例中,上述装置还包括:
第一设置模块,用于在确定上述待处理业务的业务类型之后,基于上述待处理业务的类型设置上述待处理业务的执行时长;
释放模块,用于在上述执行时长大于预设时长的情况下,释放对上述待处理业务的执行。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在本实施例中,上述计算机可读存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,解析从客户端获取的业务请求,得到待处理业务,其中,客户端与主管理节点连接;
S2,确定待处理业务的业务类型;
S3,基于业务类型确定执行待处理业务的节点,以通过节点对待处理业务执行处理操作,得到处理结果。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
在一个示例性实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,解析从客户端获取的业务请求,得到待处理业务,其中,客户端与主管理节点连接;
S2,确定待处理业务的业务类型;
S3,基于业务类型确定执行待处理业务的节点,以通过节点对待处理业务执行处理操作,得到处理结果。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
解析从客户端获取的业务请求,得到待处理业务,其中,所述客户端与主管理节点连接;
确定所述待处理业务的业务类型;
基于所述业务类型确定执行所述待处理业务的节点,以通过所述节点对所述待处理业务执行处理操作,得到处理结果。
2.根据权利要求1所述的方法,其特征在于,解析从客户端获取的业务请求,得到待处理业务,包括:
通过解析器对所述业务请求进行解析,得到所述待处理业务。
3.根据权利要求1所述的方法,其特征在于,基于所述业务类型确定执行所述待处理业务的节点,以通过所述节点对所述待处理业务执行处理操作,得到处理结果,包括:
在所述待处理业务是增删改业务的情况下,将N个主数据节点确定为执行所述增删改业务的节点,其中,所述N是大于或等于1的自然数;
将所述待处理业务发送至所述N个主数据节点中;
通过所述N个主数据节点在数据库中执行所述增删改业务,得到增删改处理结果。
4.根据权利要求1所述的方法,其特征在于,基于所述业务类型确定执行所述待处理业务的节点,以通过所述节点对所述待处理业务执行处理操作,得到处理结果,包括:
在所述待处理业务是查询业务的情况下,确定所述查询业务的待查询的数据范围;
基于所述查询业务的待查询的数据范围确定执行所述查询业务的节点,以通过所述节点在数据库中对所述查询业务执行查询操作,得到查询结果。
5.根据权利要求4所述的方法,其特征在于,基于所述查询业务的待查询的数据范围确定执行所述查询业务的节点,以通过所述节点在数据库中对所述查询业务执行查询操作,得到查询结果,包括:
在所述查询业务的待查询的数据范围小于或等于所述数据库中的数据分布统计范围的情况下,将主管理节点确定为执行所述查询业务的节点;通过所述主管理节点查询所述待查询的数据,得到所述查询结果;
在所述查询业务的待查询的数据范围大于所述数据库中的数据分布统计范围,且主数据节点的节点连接数量小于或等于预设连接数据的情况下,将主数据节点确定为执行所述查询业务的节点;通过所述主数据节点从所述数据库中查询待查询数据,得到所述查询结果;
在所述查询业务的待查询的数据范围大于所述数据库中的数据分布统计范围,且主数据节点的节点连接数量大于预设连接数据的情况下,将备用数据节点确定为执行所述查询业务的节点;通过所述备用数据节点从所述数据库中查询所述待查询数据,得到所述查询结果,其中,所述备用数据节点是所述主数据节点的备用的数据节点。
6.根据权利要求1所述的方法,其特征在于,在基于所述业务类型确定执行所述待处理业务的节点,以通过所述节点对所述待处理业务执行处理操作,得到处理结果之后,所述方法还包括:
汇总所述处理结果;
将所述处理结果发送至所述客户端中,以指示所述客户端断开与所述主管理节点的连接。
7.根据权利要求1所述的方法,其特征在于,在确定所述待处理业务的业务类型之后,所述方法还包括:
基于所述待处理业务的类型设置所述待处理业务的执行时长;
在所述执行时长大于预设时长的情况下,释放对所述待处理业务的执行。
8.一种数据处理装置,其特征在于,包括:
第一解析模块,用于解析从客户端获取的业务请求,得到待处理业务,其中,所述客户端与主管理节点连接;
第一确定模块,用于确定所述待处理业务的业务类型;
第一处理模块,用于基于所述业务类型确定执行所述待处理业务的节点,以通过所述节点对所述待处理业务执行处理操作,得到处理结果。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至7任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至7任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011311560.0A CN112363838A (zh) | 2020-11-20 | 2020-11-20 | 数据处理方法及装置、存储介质、电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011311560.0A CN112363838A (zh) | 2020-11-20 | 2020-11-20 | 数据处理方法及装置、存储介质、电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112363838A true CN112363838A (zh) | 2021-02-12 |
Family
ID=74533790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011311560.0A Pending CN112363838A (zh) | 2020-11-20 | 2020-11-20 | 数据处理方法及装置、存储介质、电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112363838A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114661247A (zh) * | 2022-05-23 | 2022-06-24 | 武汉四通信息服务有限公司 | 自动扩容方法、装置、电子设备及存储介质 |
CN115941786A (zh) * | 2022-11-23 | 2023-04-07 | 金篆信科有限责任公司 | 数据库中的数据包传输方法、装置、设备及介质 |
-
2020
- 2020-11-20 CN CN202011311560.0A patent/CN112363838A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114661247A (zh) * | 2022-05-23 | 2022-06-24 | 武汉四通信息服务有限公司 | 自动扩容方法、装置、电子设备及存储介质 |
CN114661247B (zh) * | 2022-05-23 | 2022-09-20 | 武汉四通信息服务有限公司 | 自动扩容方法、装置、电子设备及存储介质 |
CN115941786A (zh) * | 2022-11-23 | 2023-04-07 | 金篆信科有限责任公司 | 数据库中的数据包传输方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017063520A1 (zh) | 数据库的操作方法及装置 | |
US11068499B2 (en) | Method, device, and system for peer-to-peer data replication and method, device, and system for master node switching | |
CN111723148B (zh) | 数据存储方法及装置、存储介质、电子装置 | |
EP3480686B1 (en) | Data processing method, cluster manager, resource manager and data processing system | |
CN108228322B (zh) | 一种分布式链路跟踪、分析方法及服务器、全局调度器 | |
CN104584524A (zh) | 聚合中介系统中的数据 | |
CN112506870B (zh) | 数据仓库增量更新方法、装置及计算机设备 | |
CN112363838A (zh) | 数据处理方法及装置、存储介质、电子装置 | |
CN110532493B (zh) | 数据的处理方法及装置、存储介质和电子装置 | |
CN107346270B (zh) | 基于实时计算的基数估计的方法和系统 | |
CN107623703A (zh) | 全局事务标识gtid的同步方法、装置及系统 | |
CN110928851A (zh) | 处理日志信息的方法、装置、设备及存储介质 | |
CN112685499A (zh) | 一种工作业务流的流程数据同步方法、装置及设备 | |
WO2017181430A1 (zh) | 分布式系统的数据库复制方法及装置 | |
CN106844694B (zh) | 用于同步数据的方法及设备 | |
CN114238703A (zh) | 事件流程编排方法、装置及应用 | |
CN112631754A (zh) | 数据处理方法、装置、存储介质及电子装置 | |
CN112417050A (zh) | 数据同步方法和装置、系统、存储介质及电子装置 | |
CN110309206B (zh) | 订单信息采集方法及系统 | |
CN112905676A (zh) | 一种数据文件的导入方法及装置 | |
CN116186082A (zh) | 基于分布式的数据汇总方法、第一服务器和电子设备 | |
CN115982133A (zh) | 数据处理方法及装置 | |
CN109684279B (zh) | 一种数据处理方法及系统 | |
CN114218173B (zh) | 传帐类交易文件的批处理系统、处理方法、介质和设备 | |
CN112711466B (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 |