CN115421910A - 一种多维度数据处理方法、装置、系统、设备及存储介质 - Google Patents

一种多维度数据处理方法、装置、系统、设备及存储介质 Download PDF

Info

Publication number
CN115421910A
CN115421910A CN202211007282.9A CN202211007282A CN115421910A CN 115421910 A CN115421910 A CN 115421910A CN 202211007282 A CN202211007282 A CN 202211007282A CN 115421910 A CN115421910 A CN 115421910A
Authority
CN
China
Prior art keywords
data
node
processing
target
data processing
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
Application number
CN202211007282.9A
Other languages
English (en)
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.)
Zhuhai Kingsoft Digital Network Technology Co Ltd
Original Assignee
Zhuhai Kingsoft Digital Network 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 Zhuhai Kingsoft Digital Network Technology Co Ltd filed Critical Zhuhai Kingsoft Digital Network Technology Co Ltd
Priority to CN202211007282.9A priority Critical patent/CN115421910A/zh
Publication of CN115421910A publication Critical patent/CN115421910A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供了一种多维度数据处理方法、装置、系统、设备及存储介质,涉及数据处理技术领域,上述系统包括数据存储库、维度调度节点、任务下发节点以及多个任务处理节点;维度调度节点用于查询预设的配置文件,得到数据维度,并对所得到的维度进行排列组合,得到多个目标维度组合,向任务下发节点发送各个目标维度组合;任务下发节点用于获取各个目标维度组合,生成各个数据处理指令,并为各个数据处理指令分配目标处理节点;各目标处理节点用于响应于各自对应的数据处理指令,从数据存储库中获得数据,对数据进行数据处理,得到数据处理结果。应用本发明实施例提供的系统处理多维度数据,能够提高对多维度数据进行处理的效率。

Description

一种多维度数据处理方法、装置、系统、设备及存储介质
技术领域
本发明涉及数据处理技术领域,特别是涉及一种多维度数据处理方法、装置、系统、设备及存储介质。
背景技术
在一些应用场景中,场景所涉及的数据的类型可能有多种,即场景所涉及的数据为多维度的数据,例如,游戏测评场景中可以存在日期、游戏版本、游戏画质、帧率、卡顿次数这五个维度的数据,利用测试软件测试设备性能的场景中可以存在设备型号、测试软件、设备运行温度、设备运算速度这四个维度的数据。当场景所涉及的数据为多维度的数据时,需要对多维度的数据进行处理。
在对多维度数据进行处理时,由于一些应用场景所涉及的数据的维度可能达到十几维,甚至几十维,因此多维度数据的数据量可能较大,这样对数据量较大的多维度数据进行处理的处理效率较低。
发明内容
本发明实施例的目的在于提供一种多维度数据处理方法及系统,以提高对多维度数据进行处理的效率。具体技术方案如下:
第一方面,本发明实施例提供了一种多维度数据处理方法,所述方法包括:
按照预设的查询周期查询预设的配置文件,得到所述配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合;
生成处理各个目标维度组合下的数据的各个数据处理指令,为各个数据处理指令分配目标处理节点;
汇总统计各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果。
本发明的一个实施例中,所述为各个数据处理指令分配目标处理节点,包括:
根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,所述方法还包括:
获得各任务处理节点按照预设的发送周期发送的自身未处理任务的数量;
所述根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点,包括:
根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,在所述得到多个目标维度组合之后,所述方法还包括:
获得各个目标维度组合中各个维度的数据的数据量;
所述根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点,包括:
根据各个目标维度组合对应的数据量、最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
第二方面,本发明实施例还提供了一种多维度数据处理装置,所述装置包括:
维度组合模块,用于按照预设的查询周期查询预设的配置文件,得到所述配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合;
节点分配模块,用于生成处理各个目标维度组合下的数据的各个数据处理指令,为各个数据处理指令分配目标处理节点;
结果获得模块,用于汇总统计各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果。
本发明的一个实施例中,所述节点分配模块,具体用于根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,所述装置还包括:
数量获得模块,用于获得各任务处理节点按照预设的发送周期发送的自身未处理任务的数量;
所述节点分配模块,具体用于:
根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,所述装置还包括:
数据量获得模块,用于在所述得到多个目标维度组合之后,获得各个目标维度组合中各个维度的数据的数据量;
所述节点分配模块,具体用于:
根据各个目标维度组合对应的数据量、最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
第三方面,本发明实施例还提供了一种多维度数据处理系统,所述系统包括:数据存储库、维度调度节点、任务下发节点、汇总统计节点以及多个任务处理节点;其中,
所述维度调度节点,用于按照预设的查询周期查询预设的配置文件,得到所述配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合,向所述任务下发节点发送各个目标维度组合;
所述任务下发节点,用于获取各个目标维度组合,生成处理各个目标维度组合下的数据的各个数据处理指令,为各个数据处理指令分配目标处理节点;
各目标处理节点,用于响应于各自对应的数据处理指令,从所述数据存储库中获得各自对应的数据处理指令指示的目标维度组合中各个维度的数据,对所获得的各个维度的数据进行数据处理,得到数据处理结果;
所述汇总统计节点,用于汇总统计各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果。
本发明的一个实施例中,所述任务下发节点,具体用于根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,所述任务处理节点,用于按照预设的发送周期,将自身未处理任务的数量发送至所述任务下发节点;
所述任务下发节点,具体用于根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,所述任务下发节点,具体用于获得各个目标维度组合中各个维度的数据的数据量,根据各个目标维度组合对应的数据量、最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,所述目标处理节点,具体用于:
响应于自身对应的数据处理指令,查询自身当前的未处理任务数量;
在所述未处理任务数量大于预设的第一任务数量的情况下,将自身对应的数据处理指令存储至各个任务处理节点公用的任务队列;
在所述未处理任务数量不大于预设的第一任务数量的情况下,从所述数据存储库中,获得自身对应的数据处理指令指示的目标维度组合中各个维度的数据,对所获得的各个维度的数据进行数据处理,得到数据处理结果;
各个任务处理节点,还用于在节点中当前未处理任务数量小于预设的第二任务数量的情况下,获得所述任务队列中存储的数据处理指令,并根据所获得的数据处理指令进行数据处理,其中,所述第二任务数量小于所述第一任务数量。
本发明的一个实施例中,所述目标处理节点,具体用于:
在预设的多种处理规则中,确定与自身对应的数据处理指令指示的目标维度组合中的维度对应的目标处理规则;
基于所述目标处理规则,对自身对应的数据处理指令指示的目标维度组合中各个维度的数据进行数据处理,得到数据处理结果。
第四方面,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面所述的方法步骤。
第五方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的方法步骤。
本发明实施例有益效果:
由以上可见,应用本发明实施例提供的方案处理多维度数据时,维度调度节点对配置文件中的数据维度进行排列组合,即对多维度数据的各个维度进行排列组合,得到多个目标维度组合,任务下发节点生成处理各个目标维度组合下的数据的数据处理指令,并为各个数据处理指令分配目标处理节点,各目标处理节点处理各自对应的数据处理指令指示的目标维度组合中各个维度的数据,可以理解为利用多个目标处理节点对多维度数据进行并发处理,从而能够提高对多维度数据进行处理的处理效率。因此,应用本发明实施例提供的多维度数据处理方案,能够提高对多维度数据进行处理的处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1a为本发明实施例提供的一种多维度数据处理系统的结构示意图;
图1b为本发明实施例提供的一种多维度数据的数据统计示意图;
图2为本发明实施例提供的第一种多维度数据处理方法的流程示意图;
图3为本发明实施例提供的第二种多维度数据处理方法的流程示意图;
图4为本发明实施例提供的第三种多维度数据处理方法的流程示意图;
图5为本发明实施例提供的第一种多维度数据处理装置的结构示意图;
图6为本发明实施例提供的第二种多维度数据处理装置的结构示意图;
图7为本发明实施例提供的第三种多维度数据处理装置的结构示意图;
图8为本发明实施例提供的一电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本发明所获得的所有其他实施例,都属于本发明保护的范围。
参见图1a,图1a为本发明实施例提供的第一种多维度数据处理系统的结构示意图,本实施例中,上述系统包括:数据存储库101、维度调度节点102、任务下发节点103、多个任务处理节点104以及汇总统计节点105。
本发明的一个实施例中,上述多维度数据处理系统可以是基于Celery分布式系统的系统框架构建的。
维度调度节点102,用于按照预设的查询周期查询预设的配置文件,得到配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合,向任务下发节点103发送各个目标维度组合。
任务下发节点103,用于获取各个目标维度组合,生成处理各个目标维度组合下的数据的各个数据处理指令,为各个数据处理指令分配目标处理节点104a。
各目标处理节点104a,用于响应于各自对应的数据处理指令,从数据存储库101中获得各自对应的数据处理指令指示的目标维度组合中各个维度的数据,对所获得的各个维度的数据进行数据处理,得到数据处理结果。
汇总统计节点,用于汇总统计各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果。
图1a所示的多维度数据处理系统包括两个目标处理节点在内的三个任务处理节点,除此之外,多维度数据处理系统还可以包括四个、五个或者其他数量个任务处理节点,本发明实施例对此并不限定。
本发明的一个实施例中,可以通过Fastapi技术构建上述各个节点之间的网络连接。
本发明的一个实施例中,还可以通过Dockerpy技术实现将上述各个节点部署在不同容器上。
下面分别对上述多维度数据处理系统中的各个节点进行说明。
对于数据存储库101,数据存储库101用于存储待处理的多个维度的数据。
本发明的一个实施例中,上述数据存储库可以是通过mongodb技术构建的数据库。
对于维度调度节点102,上述查询周期可以是一个小时、一天或者其他时长。
上述配置文件中记录有数据维度,该数据维度可以是人为添加的。
另外,在不同的应用场景中,配置文件所记录的数据维度也就不同。例如,在使用不同设备进行游戏测评的场景中,配置文件中可以记录有日期、小时、画质、设备机型、设备CPU、设备GPU、游戏版本、游戏场景、设备类型这九个数据维度。
上述目标维度组合中的维度的数量可以相同,也可以不同。
例如,若配置文件中记录有三个维度a、b、c,在通过查询配置文件得到这三个维度之后,对这三个维度进行排列组合,可以得到七个目标维度组合,这七个目标维度组合可以分别表示为{a}、{b}、{c}、{a,b}、{a,c}、{b,c}、{a,b,c},如{a,c}的目标维度组合包括维度a和c。
另外,还可以人为预先设置配置文件中记录的各个数据维度的数据状态。当数据维度的数据状态为可访问时,在查询配置文件的过程中可以获得该数据维度;当数据维度的数据状态为不可访问时,在查询配置文件的过程中不能获得该数据维度。
在上述举例中,若维度c的数据状态为不可访问,则在查询配置文件时仅能获得维度a和b,从而对维度a和b进行排列组合,得到三个目标维度组合,分别为{a}、{b}、{a,b}。
对于任务下发节点103,在获得各个目标维度组合后,可以根据多种信息为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,可以根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
上述任务处理节点的节点负载可以包括任务处理节点中已占用的计算资源量、空闲计算资源量等。
具体的,在获得各个目标维度组合后,针对一个目标维度组合,可以生成包括该目标维度组合的数据处理指令,所生成的数据处理指令用于指示任务处理节点处理该目标维度组合下的数据。
在为各个数据处理指令分配目标处理节点时,可以在各个任务处理节点中,选择节点负载较小的任务处理节点104,作为目标处理节点104a。
本发明的一个实施例中,可以通过以下两种实现方式中的任一种选择目标处理节点。
第一种实现方式中,可以获得各个任务处理节点的节点负载,并将各个任务处理节点中节点负载最小的预设数量个任务处理节点确定为目标处理节点,其中,上述预设数量小于等于目标维度组合的数量,即一个目标处理节点可以对应一个数据处理指令,一个目标处理节点也可以对应多个数据处理指令。
第二种实现方式中,在任务处理节点的节点负载包括已占用计算资源量的情况下,可以将已占用计算资源量小于预设的第一资源量阈值的任务处理节点确定为目标处理节点;在任务处理节点的节点负载包括空闲计算资源量的情况下,可以将空闲计算资源量大于预设的第二资源量阈值的任务处理节点确定为目标处理节点。
本方案中,根据各个任务处理节点的节点负载为各个数据处理指令分配目标处理节点,能够使得各个任务处理节点的节点负载保持均衡,从而充分发挥各个任务处理节点的处理能力,提高数据处理的效率。
除了可以根据各个任务处理节点的节点负载为数据处理指令分配目标处理节点之外,还可以使用其他信息进行分配,例如,各个任务处理节点自身未处理任务的数量、目标维度组合中各个维度的数据的数据量、各个任务处理节点的性能、各个任务处理节点所对应的处理业务等等。
对于目标处理节点104a,上述各个维度的数据可以是各个维度的全量数据,也可以是各个维度的增量数据。
上述各个维度的全量数据可以理解为各个维度下的所有数据。
上述各个维度的增量数据可以理解为一定时长内各个维度的数据中发生变化的数据。
例如,若数据存储库中存储有一个数据维度下的两个数据1、2,经过一定时长之后,数据存储库中存储的这一数据维度下的数据变为数据1、3、4,则数据1、3、4为该维度的全量数据,数据3和数据4即为该维度的增量数据。
具体的,数据处理指令中可以携带有目标维度组合的信息,这样目标处理节点104a在获得其所对应的数据处理指令后,针对所获得的每一数据处理指令,可以对该数据处理指令进行解析,得到该数据处理指令对应的目标维度组合,并从数据存储库101中获得该目标维度指令对应的目标维度组合中各维度的数据,从而对所获得的数据进行数据处理,得到数据处理结果。
另外,若目标维度组合对应的数据量较大,目标处理节点104a可以横向扩容处理数据的进程或者任务,从而加快数据处理效率。
目标处理节点104a对所获得的数据进行数据处理的方式有多种,目标处理节点应用不同数据处理方式进行数据处理,能够得到不同的数据处理结果,本发明实施例对此并不一一限定。
例如,目标处理节点可以根据所获得的各个维度的数据的数值大小,绘制反映各个维度的数据的变化过程的图表,这样所得到的数据处理结果即为所绘制的图表。
图1b为一种对多维度数据进行数据统计的统计示意图,从图1b中可以看出,多维度数据的维度包括应用版本、画质、场景、设备类型、机型、CPU、时间维度、日期、小时这九个维度,该统计示意图即根据所获得的各个维度的数据的数值大小绘制得到的。
另外,还可以根据对目标维度组合下各个维度的数据进行数据处理得到的数据处理结果绘制统计示意图。
又例如,目标处理节点还可以计算各个维度的数据的平均值、中位数、tp90值、tp95值等等,这样将所得到的数据处理结果即为对各维度的数据进行计算得到的计算结果。
对于汇总统计节点105,在各个目标处理节点104a输出各自对应的数据处理结果后,汇总统计节点105获得各个目标处理节点对应的数据处理结果,得到数据统计结果。
由以上可见,应用本发明实施例提供的方案处理多维度数据时,维度调度节点对配置文件中的数据维度进行排列组合,即对多维度数据的各个维度进行排列组合,得到多个目标维度组合,任务下发节点生成处理各个目标维度组合下的数据的数据处理指令,并为各个数据处理指令分配目标处理节点,各目标处理节点处理各自对应的数据处理指令指示的目标维度组合中各个维度的数据,可以理解为利用多个目标处理节点对多维度数据进行并发处理,并且针对特定维度也可以并发处理、计算,从而能够提高对多维度数据进行处理的处理效率。因此,应用本发明实施例提供的多维度数据处理方案,能够提高对多维度数据进行处理的处理效率。
另外,上述维度调度节点对多维度数据的各个维度进行排列组合,得到多个目标维度组合,由各个目标处理节点处理各自对应的数据处理指令指示的目标维度组合下的数据,可以理解为将多维度数据拆解为多个目标维度组合下的数据,从而由多个任务处理节点分别处理多个目标维度组合下的数据,相比于现有技术中需要对多个维度的数据进行聚合,再对聚合后的数据进行数据处理,应用本发明实施例提供的多维度数据处理系统处理多维度数据时,无需进行复杂的数据聚合、存储过程,这样能够降低数据处理的出错率,并且本方案中各个目标维度组合下的数据是由其所对应的目标处理节点单独进行处理的,因此,对于各个目标维度组合下的数据,能够较为便捷的对其进行校验。
本发明的一个实施例中,可以使用python语言来编写各个节点的运行逻辑。
本发明的一个实施例中,对于各个目标处理节点,可以基于gevent技术实现同步或异步接收数据处理指令。
目标处理节点在对数据处理指令指示的目标维度组合中各个维度的数据进行数据处理时,对于不同维度的数据,通常需要按照不同方式进行处理。
本发明的一个实施例中,目标处理节点104a可以通过执行以下步骤A-B,实现对自身对应的数据处理指令指示的目标维度组合中各个维度的数据进行数据处理。
步骤A:在预设的多种处理规则中,确定与自身对应的数据处理指令指示的目标维度组合中的维度对应的目标处理规则。
例如,上述处理规则可以是将一个维度的数据的格式转换为预设格式,也可以是统计数据值位于同一数据区间的数据占数据总量的比例,还可以是计算一个维度的数据的总和、平均值、中位数、tp90值、tp95值等等。
除上述列举的三种处理规则之外,处理规则还可以有其他多种,本发明实施例对此并不限定。
具体的,针对数据存储库中存储的各种维度的数据,可以预先设置对各种维度的数据进行处理使用的处理规则,这样也就设置了各个维度对应的处理规则,从而目标处理节点在获得数据处理指令后,可以根据数据处理指令指示的目标维度组合中的各个维度,在预设的多种处理规则中,确定与目标维度组合中的每一维度对应的目标处理规则。
例如,若数据处理指令指示的目标维度组合中包括维度m、n,则可以在预设的多种处理规则中,确定与维度m对应的目标处理规则,并确定与维度n对应的另一目标处理规则。
另外,在预设处理规则时,还可以针对多个维度构成的维度组合,设置用于处理该维度组合下的数据的处理规则,这样在确定目标处理规则时,可以根据目标维度组合中包括的所有维度,确定与目标维度组合对应的目标处理规则。
在上述举例中,若预先设置有包括维度m和维度n的维度组合对应的处理规则,则可以在预设的多种处理规则中,确定由维度m和维度n构成的目标维度组合对应的目标处理规则。
步骤B:基于目标处理规则,对自身对应的数据处理指令指示的目标维度组合中各个维度的数据进行数据处理,得到数据处理结果。
具体的,在确定上述目标处理规则之后,可以按照目标处理规则规定的处理方式,对数据处理指令指示的目标维度组合中各个维度的数据进行数据处理。
例如,若目标维度组合中包括的一个维度对应的目标处理规则为数据格式转换规则,则在获得该维度的数据后,可以将该数据的数据格式转换为数据格式转换规则规定的数据格式,从而得到格式转换后的数据,作为数据处理结果。
由以上可见,应用本发明实施例提供的多维度数据处理系统处理多维度数据时,目标处理节点在获得自身对应的数据处理指令后,可以确定与数据处理指令指示的目标维度组合中的维度对应的目标处理规则,基于目标处理规则,能够准确的对数据处理指令指示的目标维度组合中各个维度的数据进行数据处理,从而提高对多维度数据进行数据处理的准确性。因此,应用本发明实施例提供的多维度数据处理系统,能够提高对多维度数据进行数据处理的准确性。
任务下发节点在为各个数据处理指令分配目标处理节点时,不仅可以根据各个任务处理节点的节点负载进行分配,还可以结合节点负载以及其他因素为数据处理指令分配目标处理节点。
本发明的一个实施例中,上述任务处理节点104,用于按照预设的发送周期,将自身未处理任务的数量发送至任务下发节点103。
任务下发节点103,具体用于根据最近获得的各个任务处理节点104中未处理任务的数量和各个任务处理节点104的节点负载,为各个数据处理指令分配目标处理节点104a。
其中,上述发送周期可以是一分钟、十分钟或者其他时长。
具体的,系统中的各个任务处理节点可以按照上述发送周期,查询自身未处理任务的数量,并将查询到的未处理任务数量发送至任务下发节点。任务下发节点可以周期性获得各个任务处理节点发送的未处理任务数量,从而根据最近获得的各个任务处理节点104中未处理任务的数量和各个任务处理节点104的节点负载,为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,可以通过以下两种实现方式中的任一种分配目标处理节点。
第一种实现方式中,可以在各个任务处理节点中,确定未处理任务数量小于预设任务数量、且节点负载小于负载阈值的节点,作为目标处理节点。
第二种实现方式中,可以在各个任务处理节点中,确定未处理任务数量最少的第一数量个任务处理节点,然后在所确定的任务处理节点中,确定节点负载最小的第二数量个任务处理节点,作为目标任务处理节点,其中,第一数量小于任务处理节点的数量,第二数量小于第一数量。
在第二种实现方式中,还可以首先根据任务处理节点的节点负载进行确定,然后再根据任务处理节点的未处理任务数量进行确定。
由以上可见,应用本发明实施例提供的多维度数据处理系统处理多维度数据时,任务下发节点可以根据各个数据处理节点的未处理任务数量以及节点负载,为各个数据处理指令分配目标处理节点,由于任务下发节点在进行节点分配时不仅考虑了各个任务处理节点的节点负载,还考虑了各个任务处理节点未处理任务的数量,因此,任务下发节点所考虑的信息更加丰富,从而能够为数据处理指令分配更加准确合理的目标处理节点,这样利用所分配的目标处理节点,能够加快对各个数据处理指令指示的各个维度的数据进行处理的效率,即加快对多维度数据进行处理的效率。因此,应用本发明实施例提供的多维度数据处理系统,能够提高对多维度数据进行处理的效率。
任务下发节点在为各个数据处理指令分配目标处理节点时,除了可以考虑任务处理节点的未处理任务数据、节点负载这两种因素之外,还可以考虑各个目标维度组合中各个维度的数据的数据量。
本发明的一个实施例中,上述任务下发节点103,具体用于获得各个目标维度组合中各个维度的数据的数据量,根据各个目标维度组合对应的数据量、最近获得的各个任务处理节点104中未处理任务的数量和各个任务处理节点104的节点负载,为各个数据处理指令分配目标处理节点104a。
具体的,上述数据存储库中存储有各个维度的数据,并且数据存储库可以记录有各个维度的数据的信息,即数据存储库可以确定每一维度的数据中的哪些数据为该维度的数据。鉴于此,任务下发节点可以获得数据存储库记录的各个维度的数据的数据量,从而针对每一目标维度组合,在所获得的各个维度对应的数据量中确定该目标维度组合中各维度对应的数据量。
任务下发节点在获得各个目标维度组合中各个维度的数据的数据量后,在根据所获得的数据量、上述未处理任务的数量以及上述节点负载这三种因素进行节点分配时,对于数据量较大的目标维度组合,可以为该目标维度组合对应的数据处理指令分配节点计算能力较强的目标处理节点,对于数据量较小的目标维度组合,可以为该目标维度组合对应的数据处理指令分配计算能力较弱的目标处理节点。
另外,对于包括数据量较大的维度的目标维度组合,可以生成多个用于指示处理该目标维度组合下的数据的数据处理指令,并为这多个数据处理指令分配多个目标处理节点,由多个目标处理节点共同处理该目标维度组合下的数据。
由以上可见,应用本发明实施例提供的多维度数据处理系统处理多维度数据时,任务下发节点在为数据处理指令分配目标处理节点时,除了考虑各个任务处理节点的未处理任务数量以及节点负载这两种因素之外,还考虑了各个数据处理指令指示的目标维度组合对应的数据量,对于数据量较大的目标维度组合对应的数据处理指令,可以为其分配计算能力较强的目标处理节点,对于数据量较小的目标维度组合对应的数据处理指令,可以为其分配计算能力较弱的目标处理节点,这样无需要求系统的各个任务处理节点均为计算能力较强的节点,从而能够降低对多维度数据处理系统的配置要求,降低多维度数据处理系统的构建成本。
目标处理节点在获得自身对应的数据处理指令后,通常需要在自身当前的未处理任务均处理完成后再处理该数据处理指令指示的处理任务。这种情况下,若自身当前未处理任务的数量较多,则需要等待较长时间后才能处理数据处理指令指示的处理任务,这样对数据处理指令指示的处理任务进行处理的效率较低。
另外,尽管任务下发节点能够根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配未处理任务数量较少的目标处理节点,但由于任务处理节点向任务下发节点上报自身未处理任务的数量是周期性的,若任务下发节点需要在一个发送周期内下发多次指令,任务下发节点也只有在最近获得的各个任务处理节点中未处理任务的数量的基础上进行分配,这样可能导致向同一任务处理节点发送多次指令,从而增加该任务处理节点的未处理任务,导致对数据处理指令指示的处理任务进行处理的效率较低。
为解决这一问题,本发明的一个实施例中,上述目标处理节点104a,在获得自身对应的数据处理指令后,可以执行以下步骤C-E。
步骤C:响应于自身对应的数据处理指令,查询自身当前的未处理任务数量。
步骤D:在未处理任务数量大于预设的第一任务数量的情况下,将自身对应的数据处理指令存储至各个任务处理节点104公用的任务队列。
其中,上述第一任务数量可以是人为设置的数量。
例如,上述第一任务数量可以是10、20或者其他数量。
上述任务队列为各个任务处理节点公用的队列,各个任务处理节点均可以将数据处理指令存储至任务队列,也可以从任务队列中获取所存储的数据处理指令。
具体的,若目标处理节点中未处理任务数量大于上述第一任务数量,则说明该节点的未处理任务较多。这种情况下,若由该节点处理数据处理指令指示的处理任务,则需要等待较长时间后才能处理数据处理指令指示的处理任务,因此,可以将数据处理指令存储至上述任务队列,以使得其他空闲或者未处理任务数量较少的任务处理节点能够从任务队列中获取该数据处理指令,并响应于该数据处理指令。
另外,判断出未处理任务数量大于预设的第一任务数量时,目标处理节点可以向任务下发节点发送自身未处理任务的数量,以使得任务下发节点下一次为数据处理指令分配节点时,可以根据各个任务处理节点最近发送的自身未处理任务的数量进行分配。
步骤E:在未处理任务数量不大于预设的第一任务数量的情况下,从数据存储库101中,获得自身对应的数据处理指令指示的目标维度组合中各个维度的数据,对所获得的各个维度的数据进行数据处理,得到数据处理结果。
若目标处理节点中未处理任务数量不大于上述第一任务数量,则说明该节点的未处理任务较少。这种情况下,可以该节点自身处理数据处理指令指示的处理任务。
目标处理节点处理数据处理指令指示的处理任务的实现方式可参见前述图1a所示实施例中对目标处理节点的描述,这里不再赘述。
目标处理节点能够在自身未处理任务数量大于预设的第一任务数量的情况下,将数据处理指令存储至上述任务队列,其他任务处理节点能够从任务队列中获取所存储的数据处理指令。
本实施例中,各个任务处理节点104,还用于在节点中当前未处理任务数量小于预设的第二任务数量的情况下,获得任务队列中存储的数据处理指令,并根据所获得的数据处理指令进行数据处理。
其中,第二任务数量小于第一任务数量。
上述第二任务数量可以是人为设置的数量。
例如,上述第二任务数量可以是5、15或者其他数量。
由于各个任务处理节点的计算能力可能不同,因此,可以针对不同的任务处理节点设置其所对应的第一任务数量和第二任务数量,且对于每一任务处理节点,该节点对应的第二任务数量小于第一任务数量。
具体的,若任务处理节点的未处理任务数量小于第二任务数量,则说明该节点的未处理任务较少。这种情况下,该节点对当前未处理任务进行处理所需时间较少,这样该节点在获得任务队列中存储的数据处理指令后,能够快速响应于该数据处理指令,从而根据所获得的数据处理指令进行数据处理。
任务处理节点根据所获得的数据处理指令进行数据处理的具体实现方式可参见前述图1a所示实施例中对目标处理节点的描述,这里不再赘述。
本发明的一个实施例中,可以应用kafka技术为本发明实施例提供的多维度数据处理系统提供消息中转服务,以便于各个任务处理节点从任务队列中读写数据处理指令。
由以上可见,应用本发明实施例提供的多维度数据处理系统处理多维度数据时,目标处理节点在获得数据处理指令后,若自身当前未处理任务数量较多时,可以将数据处理指令存储至任务队列,这样其他空闲或者未处理任务数量较少的任务处理节点能够从任务队列中获取该数据处理指令,并响应于该数据处理指令;若自身当前未处理任务数量较少则可以由自身响应于该数据处理指令。因此,应用本发明实施例提供的多维度数据处理系统,能够根据目标处理节点当前的未处理任务数量,灵活调节响应数据处理指令的任务处理节点,使得数据处理指令能够被快速响应,从而能够提高对数据处理指令指示的目标维度组合下的数据进行处理的处理效率,进而提高对多维度数据进行处理的效率。
与上述多维度数据处理系统相对应,本发明实施例还提供了一种多维度数据处理方法。
本发明实施例提供的多维度数据处理方案的执行主体可以是具备上述维度调度节点以及任务下发节点的功能的数据处理设备。
本发明的一个实施例中,参见图2,提供了第一种多维度数据处理方法的流程示意图,本实施例中,上述方法包括以下步骤S201-S203。
步骤S201:按照预设的查询周期查询预设的配置文件,得到配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合。
对本步骤的描述可参见上述图1a所示实施例中对维度调度节点的说明,这里不再赘述。
步骤S202:生成处理各个目标维度组合下的数据的各个数据处理指令,为各个数据处理指令分配目标处理节点。
具体的,在得到多个目标维度组合后,针对每一目标维度组合,可以生成包括该目标维度组合的数据处理指令,所生成的数据处理指令用于指示任务处理节点处理该目标维度组合下的数据。在获得各个目标维度组合后,可以根据多种信息为各个数据处理指令分配目标处理节点。
本发明的一个实施例中,可以根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本方案中,根据各个任务处理节点的节点负载为各个数据处理指令分配目标处理节点,能够使得各个任务处理节点的节点负载保持均衡,从而充分发挥各个任务处理节点的处理能力,提高数据处理的效率。
本发明的另一实施例中,还可以使用其他信息为数据处理指令分配目标处理节点。例如,各个任务处理节点自身未处理任务的数量、目标维度组合中各个维度的数据的数据量、各个任务处理节点的性能、各个任务处理节点所对应的处理业务等等。
步骤S203:汇总统计各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果。
其中,各个目标处理节点对应的数据处理结果为:各个目标处理节点响应于各自对应的数据处理指令,从数据存储库中获得各自对应的数据处理指令指示的目标维度组合中各个维度的数据,对所获得的各个维度的数据进行数据处理得到的处理结果。
对于上述数据的说明可参见前述图1a所示实施例,这里不再赘述。
具体的,在为各个数据处理指令分配目标处理节点后,可以将各个数据处理指令下发至所分配的目标处理节点,从而获得目标处理节点根据所分配的数据处理指令进行数据处理得到的数据处理结果。
目标处理节点根据所分配的数据处理指令进行数据处理的具体实现方式可参见前述实施例,这里不再赘述。
在各个目标处理节点输出各自对应的数据处理结果后,可以汇总统计各个目标处理节点对应的数据处理结果,从而得到数据统计结果。
由以上可见,应用本发明实施例提供的方案处理多维度数据时,对配置文件中记录的的数据的维度进行排列组合,可以理解为对多维度数据的多个维度进行排列组合,从而得到多个目标维度组合,并生成各个目标维度组合对应的数据处理指令,由所分配的各个目标处理节点处理根据各自对应的数据处理指令进行数据处理,实现了由多个目标处理节点对多维度数据进行数据处理,从而能够提高对多维度数据进行处理的效率。因此,应用本发明实施例提供的多维度数据处理方案,能够提高对多维度数据进行处理的效率。
另外,在应用本发明实施例提供的方案处理多维度数据时,由于各个任务处理节点是分布式布局的,各个目标处理节点在进行数据处理时仅需关注所获得的数据处理指令指示的目标维度组合,这样在增加或减少多维度数据的维度时,也仅需重新对各个维度进行排列组合,生成数据处理指令,并由各个目标处理节点对各自对应的数据处理指令指示的目标维度组合下的数据进行处理即可,因此,应用本发明实施例提供的多维度数据处理方案,能够提高对多维度数据进行处理的灵活性和可扩展性。
在为各个数据处理指令分配目标处理节点时,除了可以基于各个任务处理节点的节点负载这一因素进行分配之外,还可以综合考虑节点负载以及其他因素实现节点分配。
本发明的一个实施例中,参见图3,提供了第二种多维度数据处理方法的流程示意图,本实施例中,上述方法还包括以下步骤S204,并且可以通过以下步骤S202A实现上述步骤S202。
步骤S204:获得各任务处理节点按照预设的发送周期发送的自身未处理任务的数量。
其中,上述发送周期可以是一分钟、十分钟或者其他时长。
具体的,本发明实施例的执行主体为上述数据处理设备,该数据处理设备与各任务处理节点之间存在通信连接,通过数据处理设备与各任务处理节点之间的通信连接,数据处理设备即可获得各任务处理节点发送的自身未处理任务数量。
任务处理节点周期性发送自身未处理任务的数量的具体实现方式可参见前述系统实施例,这里不再赘述。
在获得各个任务处理节点的未处理任务数量之后,可以通过以下步骤S202A根据各个任务处理节点的节点负载以及未处理任务数量进行节点分配。
步骤S202A:生成处理各个目标维度组合下的数据的各个数据处理指令,并根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
根据各个任务处理节点中未处理任务数量和节点负载为数据处理指令分配目标处理节点的具体实现方式可参见前述系统实施例的描述,这里不再赘述。
由以上可见,应用本发明实施例提供的方案处理多维度数据时,可以根据各个数据处理节点的未处理任务数量以及节点负载,为各个数据处理指令分配目标处理节点,由于在进行节点分配时不仅考虑了各个任务处理节点的节点负载,还考虑了各个任务处理节点未处理任务的数量,因此,所考虑的信息更加丰富,从而能够为数据处理指令分配更加准确合理的目标处理节点,这样利用所分配的目标处理节点,能够加快对各个数据处理指令指示的各个维度的数据进行处理的效率,即加快对多维度数据进行处理的效率。因此,应用本发明实施例提供的多维度数据处理方案,能够提高对多维度数据进行处理的效率。
本发明的一个实施例中,参见图4,提供了第三种多维度数据处理方法的流程示意图,本实施例中,在得到多个目标维度组合之后,上述方法还包括以下步骤S205,并且可以通过以下步骤S202A1实现上述步骤S202A。
步骤S205:获得各个目标维度组合中各个维度的数据的数据量。
具体的,各个维度的数据通常存储于存储数据库中,数据存储库可以记录有各个维度的数据的信息,即数据存储库可以确定每一维度的数据中的哪些数据为该维度的数据。鉴于此,可以获得数据存储库记录的各个维度的数据的数据量,从而针对每一目标维度组合,在所获得的各个维度对应的数据量中确定该目标维度组合中各维度对应的数据量。
在获得上述数据量之后,可以通过以下步骤S202A1根据各个任务处理节点的节点负载、未处理任务数量以及各个目标维度组合对应的数据量进行节点分配。
步骤S202A1:生成处理各个目标维度组合下的数据的各个数据处理指令,并根据各个目标维度组合对应的数据量、最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本步骤与上述步骤S202A相类似,区别仅在于本步骤在分配目标处理节点时,还考虑了各个目标维度组合对应的数据量这一因素。对于数据量较大的目标维度组合,可以为该目标维度组合对应的数据处理指令分配节点计算能力较强的目标处理节点,对于数据量较小的目标维度组合,可以为该目标维度组合对应的数据处理指令分配计算能力较弱的目标处理节点。
由以上可见,应用本发明实施例提供的方案处理多维度数据时,在为数据处理指令分配目标处理节点时,除了考虑各个任务处理节点的未处理任务数量以及节点负载这两种因素之外,还考虑了各个数据处理指令指示的目标维度组合对应的数据量,对于数据量较大的目标维度组合对应的数据处理指令,可以为其分配计算能力较强的目标处理节点,对于数据量较小的目标维度组合对应的数据处理指令,可以为其分配计算能力较弱的目标处理节点,这样无需要求各个任务处理节点均为计算能力较强的节点,从而能够降低对多维度数据进行处理的处理成本。
与上述多维度数据处理方法相对应,本发明实施例还提供了一种多维度数据处理装置。
本发明的一个实施例中,参见图5,提供了第一种多维度数据处理装置的结构示意图,所述装置包括:
维度组合模块501,用于按照预设的查询周期查询预设的配置文件,得到所述配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合;
节点分配模块502,用于生成处理各个目标维度组合下的数据的各个数据处理指令,为各个数据处理指令分配目标处理节点;
结果获得模块503,用于获得各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果,其中,各个目标处理节点对应的数据处理结果为:各个目标处理节点响应于各自对应的数据处理指令,从所述数据存储库中获得各自对应的数据处理指令指示的目标维度组合中各个维度的数据,对所获得的各个维度的数据进行数据处理得到的处理结果。
由以上可见,应用本发明实施例提供的方案处理多维度数据时,对配置文件中记录的的数据的维度进行排列组合,可以理解为对多维度数据的多个维度进行排列组合,从而得到多个目标维度组合,并生成各个目标维度组合对应的数据处理指令,由所分配的各个目标处理节点处理根据各自对应的数据处理指令进行数据处理,实现了由多个目标处理节点对多维度数据进行数据处理,从而能够提高对多维度数据进行处理的效率。因此,应用本发明实施例提供的多维度数据处理方案,能够提高对多维度数据进行处理的效率。
本发明的一个实施例中,所述节点分配模块502,具体用于根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
本方案中,根据各个任务处理节点的节点负载为各个数据处理指令分配目标处理节点,能够使得各个任务处理节点的节点负载保持均衡,从而充分发挥各个任务处理节点的处理能力,提高数据处理的效率。
本发明的一个实施例中,参见图6,提供了第二种多维度数据处理装置的结构示意图,本实施例中,所述装置还包括:
数量获得模块504,用于获得各任务处理节点按照预设的发送周期发送的自身未处理任务的数量;
所述节点分配模块502,具体用于:
根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
由以上可见,应用本发明实施例提供的方案处理多维度数据时,可以根据各个数据处理节点的未处理任务数量以及节点负载,为各个数据处理指令分配目标处理节点,由于在进行节点分配时不仅考虑了各个任务处理节点的节点负载,还考虑了各个任务处理节点未处理任务的数量,因此,所考虑的信息更加丰富,从而能够为数据处理指令分配更加准确合理的目标处理节点,这样利用所分配的目标处理节点,能够加快对各个数据处理指令指示的各个维度的数据进行处理的效率,即加快对多维度数据进行处理的效率。因此,应用本发明实施例提供的多维度数据处理方案,能够提高对多维度数据进行处理的效率。
本发明的一个实施例中,参见图7,提供了第三种多维度数据处理装置的结构示意图,本实施例中,所述装置还包括:
数据量获得模块505,用于在所述得到多个目标维度组合之后,获得各个目标维度组合中各个维度的数据的数据量;
所述节点分配模块502,具体用于:
根据各个目标维度组合对应的数据量、最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
由以上可见,应用本发明实施例提供的方案处理多维度数据时,在为数据处理指令分配目标处理节点时,除了考虑各个任务处理节点的未处理任务数量以及节点负载这两种因素之外,还考虑了各个数据处理指令指示的目标维度组合对应的数据量,对于数据量较大的目标维度组合对应的数据处理指令,可以为其分配计算能力较强的目标处理节点,对于数据量较小的目标维度组合对应的数据处理指令,可以为其分配计算能力较弱的目标处理节点,这样无需要求各个任务处理节点均为计算能力较强的节点,从而能够降低对多维度数据进行处理的处理成本。
本发明实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,实现如下步骤:
按照预设的查询周期查询预设的配置文件,得到所述配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合;
生成处理各个目标维度组合下的数据的各个数据处理指令,并根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点;
获得各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果,其中,各个目标处理节点对应的数据处理结果为:各个目标处理节点响应于各自对应的数据处理指令,从所述数据存储库中获得各自对应的数据处理指令指示的目标维度组合中各个维度的数据,对所获得的各个维度的数据进行数据处理得到的处理结果。
上述处理器801执行存储器803上存放的程序而实现多维度数据处理的其他方案,与前述模型训练方法实施例中提及的方案相同,这里不再赘述。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一多维度数据处理方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一多维度数据处理方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (13)

1.一种多维度数据处理方法,其特征在于,所述方法包括:
按照预设的查询周期查询预设的配置文件,得到所述配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合;
生成处理各个目标维度组合下的数据的各个数据处理指令,为各个数据处理指令分配目标处理节点;
汇总统计各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果。
2.根据权利要求1所述的方法,其特征在于,所述为各个数据处理指令分配目标处理节点,包括:
根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获得各任务处理节点按照预设的发送周期发送的自身未处理任务的数量;
所述根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点,包括:
根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
4.根据权利要求3所述的方法,其特征在于,在所述得到多个目标维度组合之后,所述方法还包括:
获得各个目标维度组合中各个维度的数据的数据量;
所述根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点,包括:
根据各个目标维度组合对应的数据量、最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
5.一种多维度数据处理装置,其特征在于,所述装置包括:
维度组合模块,用于按照预设的查询周期查询预设的配置文件,得到所述配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合;
节点分配模块,用于生成处理各个目标维度组合下的数据的各个数据处理指令,为各个数据处理指令分配目标处理节点;
结果获得模块,用于汇总统计各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果。
6.一种多维度数据处理系统,其特征在于,所述系统包括:数据存储库、维度调度节点、任务下发节点、汇总统计节点以及多个任务处理节点;其中,
所述维度调度节点,用于按照预设的查询周期查询预设的配置文件,得到所述配置文件中记录的数据的维度,并对所得到的维度进行排列组合,得到多个目标维度组合,向所述任务下发节点发送各个目标维度组合;
所述任务下发节点,用于获取各个目标维度组合,生成处理各个目标维度组合下的数据的各个数据处理指令,为各个数据处理指令分配目标处理节点;
各目标处理节点,用于响应于各自对应的数据处理指令,从所述数据存储库中获得各自对应的数据处理指令指示的目标维度组合中各个维度的数据,对所获得的各个维度的数据进行数据处理,得到数据处理结果;
所述汇总统计节点,用于汇总统计各个目标处理节点根据各自对应的数据处理指令进行数据处理的数据处理结果。
7.根据权利要求6所述的系统,其特征在于,所述任务下发节点,具体用于根据各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
8.根据权利要求7所述的系统,其特征在于,
所述任务处理节点,用于按照预设的发送周期,将自身未处理任务的数量发送至所述任务下发节点;
所述任务下发节点,具体用于根据最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
9.根据权利要求8所述的系统,其特征在于,
所述任务下发节点,具体用于获得各个目标维度组合中各个维度的数据的数据量,根据各个目标维度组合对应的数据量、最近获得的各个任务处理节点中未处理任务的数量和各个任务处理节点的节点负载,为各个数据处理指令分配目标处理节点。
10.根据权利要求6-9中任一项所述的系统,其特征在于,所述目标处理节点,具体用于:
响应于自身对应的数据处理指令,查询自身当前的未处理任务数量;
在所述未处理任务数量大于预设的第一任务数量的情况下,将自身对应的数据处理指令存储至各个任务处理节点公用的任务队列;
在所述未处理任务数量不大于预设的第一任务数量的情况下,从所述数据存储库中,获得自身对应的数据处理指令指示的目标维度组合中各个维度的数据,对所获得的各个维度的数据进行数据处理,得到数据处理结果;
各个任务处理节点,还用于在节点中当前未处理任务数量小于预设的第二任务数量的情况下,获得所述任务队列中存储的数据处理指令,并根据所获得的数据处理指令进行数据处理,其中,所述第二任务数量小于所述第一任务数量。
11.根据权利要求6-9中任一项所述的系统,其特征在于,所述目标处理节点,具体用于:
在预设的多种处理规则中,确定与自身对应的数据处理指令指示的目标维度组合中的维度对应的目标处理规则;
基于所述目标处理规则,对自身对应的数据处理指令指示的目标维度组合中各个维度的数据进行数据处理,得到数据处理结果。
12.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-4任一所述的方法步骤。
CN202211007282.9A 2022-08-22 2022-08-22 一种多维度数据处理方法、装置、系统、设备及存储介质 Pending CN115421910A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211007282.9A CN115421910A (zh) 2022-08-22 2022-08-22 一种多维度数据处理方法、装置、系统、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211007282.9A CN115421910A (zh) 2022-08-22 2022-08-22 一种多维度数据处理方法、装置、系统、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115421910A true CN115421910A (zh) 2022-12-02

Family

ID=84197586

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211007282.9A Pending CN115421910A (zh) 2022-08-22 2022-08-22 一种多维度数据处理方法、装置、系统、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115421910A (zh)

Similar Documents

Publication Publication Date Title
US20200159702A1 (en) Method, apparatus, and computer program product for data quality analysis
US11755452B2 (en) Log data collection method based on log data generated by container in application container environment, log data collection device, storage medium, and log data collection system
CN108683692B (zh) 一种业务请求处理方法及装置
WO2017166643A1 (zh) 一种任务资源的量化方法和装置
US9588813B1 (en) Determining cost of service call
CN113535363A (zh) 任务调用方法、装置、电子设备及存储介质
CN110008021B (zh) 内存管理方法、装置、电子设备及计算机可读存储介质
CN112527848B (zh) 基于多数据源的报表数据查询方法、装置、系统及存储介质
CN110147470B (zh) 一种跨机房数据比对系统及方法
CN112328688B (zh) 数据存储方法、装置、计算机设备及存储介质
US20140344328A1 (en) Data collection and distribution management
CN111324454A (zh) 多核cpu分配方法、装置、电子设备及存储介质
CN115421910A (zh) 一种多维度数据处理方法、装置、系统、设备及存储介质
US11627193B2 (en) Method and system for tracking application activity data from remote devices and generating a corrective action data structure for the remote devices
CN110020166A (zh) 一种数据分析方法及相关设备
CN105245380B (zh) 一种消息的传播方式识别方法及装置
CN114298585A (zh) 一种面向采购场景的物料采购配额分配方法及装置
CN109543079B (zh) 数据查询方法、装置、计算设备及存储介质
CN113760989A (zh) 一种无界流数据处理方法、装置、设备及存储介质
CN113672834A (zh) 数据处理方法、装置、电子设备及计算机可读介质
CN107360441A (zh) 一种用户直播间发言控制方法及装置
US20230342226A1 (en) Event handling based on tracing execution paths
CN112612415B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN110134691B (zh) 数据校验方法、装置、设备和介质
CN113238852B (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