CN109710610A - 数据处理方法、装置及计算设备 - Google Patents
数据处理方法、装置及计算设备 Download PDFInfo
- Publication number
- CN109710610A CN109710610A CN201811543777.7A CN201811543777A CN109710610A CN 109710610 A CN109710610 A CN 109710610A CN 201811543777 A CN201811543777 A CN 201811543777A CN 109710610 A CN109710610 A CN 109710610A
- Authority
- CN
- China
- Prior art keywords
- calculate node
- data
- dimensional parameter
- target
- dimension
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据处理方法、装置及计算设备,所述方法的一具体实施方式包括:确定数据的维度参数;每个所述数据的维度参数包括一个或多个维度标识;基于所述维度参数对应的维度标识,采用降低维度的方式确定树形结构;所述树形结构的每个计算节点对应一个维度参数;其中,所述树形结构的任一子计算节点对应的维度标识集合为该子计算节点的父计算节点对应的维度标识集合的真子集;确定目标数据;根据所述目标数据,计算所述每个计算节点对应的维度参数的目标指标,并将所述目标指标与对应的计算节点进行关联地存储。该实施方式不仅节省了计算资源,也提高了指标查询的效率。
Description
技术领域
本申请涉及大数据技术领域,特别涉及一种数据处理方法、装置及计算设备。
背景技术
随着大数据技术的不断发展,对大数据的统计与管理变得越来越重要。目前来说,一般是将大量的数据记录在存储介质中,当需要利用数据的属性条件查询数据的某些指标时,需要遍历存储介质中的所有数据,筛选出满足属性条件的数据,然后基于筛选出的数据计算查询的指标。因此,在每次查询时,都要遍历一遍数据,并临时计算查询的指标,不仅消耗了过多的计算资源,而且查询的效率很低。
发明内容
为了解决上述技术问题之一,本申请提供一种数据处理方法、装置及计算设备。
根据本申请实施例的第一方面,提供一种数据处理方法,包括:
确定数据的维度参数;每个所述维度参数包括一个或多个维度标识;
基于所述数据的维度参数对应的维度标识,采用降低维度的方式确定树形结构;所述树形结构的每个计算节点对应一个维度参数;其中,所述树形结构的任一子计算节点对应的维度标识集合为该子计算节点的父计算节点对应的维度标识集合的真子集;
确定目标数据;
根据所述目标数据,计算所述每个计算节点对应的维度参数的目标指标。
可选的,所述根据所述目标数据,计算所述每个计算节点对应的维度参数的目标指标,包括:
从所述树形结构的根计算节点开始,按照从父节点到子节点的顺序遍历所述树形结构的每个计算节点,任意一个遍历到的计算节点执行以下操作:接收数据,并基于接收到的数据计算该计算节点对应的维度参数的目标指标;
其中,针对任一所述树形结构的根计算节点,所述接收到的数据为所述目标数据;针对任一所述树形结构的叶子计算节点,所述接收到的数据为该叶子计算节点的父计算节点分发的数据。
可选的,任意一个遍历到的非末端的计算节点还执行以下操作:基于该计算节点对应的维度参数以及所述接收到的数据,确定待分发数据,并将所述待分发数据分发至该计算节点的子计算节点。
可选的,所述基于接收到的数据计算该计算节点对应的维度参数的目标指标,包括:
根据该计算节点对应的维度参数的属性值,将所述接收到的数据分为多组第一子数据,每组第一子数据对应的属性值相同;
对所述每组第一子数据进行统计计算,得到该计算节点对应的统计数据;
基于所述统计数据计算该计算节点对应的维度参数的目标指标。
可选的,其中,每一组第一子数据对应计算节点的一个计算实例;其中每一计算节点对应一个或多个计算实例,且每一计算实例具有相同的维度参数的属性值,且不同的计算实例的维度参数的属性值不相同。
可选的,所述基于该计算节点对应的维度参数以及所述接收到的数据,确定待分发数据,包括:
确定该计算节点的一个或多个目标子计算节点;
根据该计算节点对应的维度参数及每个所述目标子计算节点对应的维度参数,确定每个所述目标子计算节点与该计算节点相同的维度;
基于每个所述目标子计算节点与该计算节点相同的维度以及所述接收到的数据,确定针对每个所述目标子计算节点的待分发数据。
可选的,通过如下方式确定针对任一目标子计算节点的待分发数据:
基于该目标子计算节点与该计算节点相同的维度的属性值,将该计算节点接收到的数据分为多组第二子数据,每组第二子数据对应的属性值相同;
对每组第二子数据进行统计计算,得到针对该目标子节点的待分发数据。
根据本申请实施例的第二方面,提供一种数据处理装置,包括:
确定模块,用于确定数据的维度参数;每个所述维度参数包括一个或多个维度标识;
构建模块,用于基于所述数据的维度参数对应的维度标识,采用降低维度的方式确定树形结构;所述树形结构的每个计算节点对应一个维度参数;其中,所述树形结构的任一子计算节点对应的维度标识集合为该子计算节点的父计算节点对应的维度标识集合的真子集;
获取模块,用于确定目标数据;
计算模块,用于根据所述目标数据,计算所述每个计算节点对应的维度参数的目标指标。
根据本申请实施例的第三方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的方法。
根据本申请实施例的第四方面,提供一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面中任一项所述的方法。
本申请的实施例提供的技术方案可以包括以下有益效果:
本申请的实施例提供的数据处理方法和装置,确定数据的维度参数,每个维度参数包括一个或多个维度标识,基于上述维度参数对应的维度标识,采用降低维度的方式确定树形结构,确定目标数据,根据目标数据,计算树形结构的每个计算节点对应的维度参数的目标指标,并将目标指标与对应的计算节点进行关联地存储。由于本实施例基于数据的维度参数采用降低维度的方式确定树形结构,并预先计算树形结构的每个计算节点对应的维度参数的目标指标,将目标指标与对应的计算节点进行关联地存储,因此,当用户需要利用数据的属性条件查询数据的目标指标时,可以直接从预存的数据中取出目标指标,无需在每次查询时,遍历数据并临时计算目标指标,从而不仅节省了计算资源,也提高了指标查询的效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1A是本申请根据一示例性实施例示出的一种数据处理方法的流程图;
图1B是本申请根据一示例性实施例示出的一种树形结构示意图;
图1C是本申请根据一示例性实施例示出的另一种树形结构示意图;
图1D是本申请根据一示例性实施例示出的另一种树形结构示意图;
图1E是本申请根据一示例性实施例示出的一种数据处理方法的场景示意图;
图2是本申请根据一示例性实施例示出的另一种数据处理方法的流程图;
图3是本申请根据一示例性实施例示出的另一种数据处理方法的流程图;
图4是本申请根据一示例性实施例示出的另一种数据处理装置的框图;
图5是本申请根据一示例性实施例示出的一种计算设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
如图1A所示,图1A是根据一示例性实施例示出的一种数据处理方法的流程图,该方法可以应用于分布式系统中,该方法包括以下步骤:
在步骤101中,确定数据的维度参数,每个维度参数包括一个或多个维度标识。
在本实施例中,首先可以确定数据的维度参数,每个维度参数可以包括一个或多个维度标识。维度标识可以是任意合理形式的标识,例如,维度标识可以是字母形式的标识,也可以是数字形式的标识,可以理解,本申请对维度标识的具体形式方面不限定。其中,每个维度标识可以表示数据的一种属性,例如,维度标识表示的属性可以包括但不限于身高属性,体重属性,年龄属性,口味偏好属性,消费金额属性等等。因此,每个维度参数可以对应数据的一组属性。
在步骤102中,基于上述维度参数对应的维度标识,采用降低维度的方式确定树形结构。
在本实施例中,该树形结构的每个计算节点对应一个维度参数,其中,该树形结构的任一子计算节点对应的维度标识集合为该子计算节点的父计算节点对应的维度标识集合的真子集。
具体来说,如果数据的维度参数包括ABCDE、ABCD、ACDE、ABC、ABD、ACD、ADE、AB、AC、AD、AE、A(其中,A、B、C、D、E为维度标识,分别表示不同的属性)。可以基于上述维度参数对应的维度标识,采用降低维度的方式构建出如图1B所示的树形结构,也可以构建出如图1C所示的树形结构,还可以构建出如图1D所示的树形结构等(还可以构建出其它形式的树形结构,在此不一一列举)。
例如,由图1B可知,子计算节点ABCD对应的维度标识集合为{A,B,C,D},子计算节点ABCD的父计算节点ABCDE对应的维度标识集合为{A,B,C,D,E},{A,B,C,D}是{A,B,C,D,E}的真子集。
又例如,由图1B可知,子计算节点AB对应的维度标识集合为{A,B},子计算节点AB的父计算节点ABC对应的维度标识集合为{A,B,C},{A,B}是{A,B,C}的真子集。
在本实施例中,该树形结构的每个计算节点可以对应一个计算机集群,由于每个计算节点对应一个维度参数,因此,每个计算节点对应的计算机集群可以用于处理该计算节点对应的维度参数的相关数据。
在步骤103中,确定目标数据。
在步骤104中,根据目标数据,计算树形结构的每个计算节点对应的维度参数的目标指标。
在本实施例中,目标数据可以是待统计管理的原始数据,目标指标可以是任意合理的指标,例如,目标指标可以包括但不限于每秒查询率,平均响应时间,属性判断成功率,响应时间的最大值,响应时间的最小值,响应时间的各分位数等等。
如图1E所示的,在本实施例中,每一个维度参数可以包括一个或多个维度标识,但是具有相同的维度参数,其包括的维度标识的属性值可以是不同的。例如:图1E中的维度参数包括四个维度标识{A,B,C,D},因此具有相同的维度标识的数据会被分发到同一个计算节点。对于任意一个维度标识,不同的数据的维度标识的哈希值(Hash)可以是不相同的。例如图1E中所示的,在具有维度参数{A,B,C,D}的计算节点中,其维度标识C的属性值可以分别为:C1、C2、C3……Cn。当然,这只是举例说明,其中的任意一个维度标识都可以是不相同的,例如A、B、D;以下只是用维度标识C不同为例进行说明。
为了提高计算效率,在本实施例中,维度标识具有相同哈希值的数据,被分发到同一计算实例中;即一个计算节点可以对应一个或多个计算实例。如图1E所示的,hash(ABCD)为相同值的维度参数被分发到一个计算实例中,例如:hash(ABCD)=1的被分发到一个计算实例中个,hash(ABCD)=2的被分发到另一个计算实例中。
以图1E为例,计算节点的维度参数为{A,B,D}的子计算节点,其维度标识为A1B1D1的数据被分发一个子节点的同一个计算实例中;此时不需关注维度C的属性值,即:A1B1C1D1、A1B1C2D1、A1B1C3D1……都会在同一个计算实例,这是因为其hash(ABD)的值是相同的(由于该哈希值的计算与C无关)。而维度标识为A1B1D2的数据被分发到这个子节点的另一个计算实例中;此时同样不需关注维度C的属性值,即:A1B1C1D1、A1B1C2D1、A1B1C3D1……都会在同一个计算实例,只要其维度标识的{A,B,D}的值相同。这样在聚合步骤中可以极大的提高计算目标数据的效率。
如图1E所示的,本实施例的方法包括:确定数据的维度参数,以及特征参数中包括的维度标识;例如根计算节点,其维度标识包括其中维度参数可以为{A,B,C,D};而该根计算节点示例性的包括两个子计算节点,两个子计算节点的维度标识分别为{A,B,C}和{A,B,D}。如图1E所示的,根计算节点对应了多个计算实例,这些分别对应不同的维度标识ABC1D、ABC2D……ABC3D。而维度标识为{A,B,D}的子计算节点也对应了多个计算实例,这些计算实例分别对应不同的维度标识AB1D、AB2D……AB3D。即,在子计算节点中,AB1C1D、A B1C2D……AB1CnD都对应在该子计算节点的同一个计算实例;而AB2C1D、AB2C2D……A B2CnD都对应在该子计算节点的另一个相同的计算实例。
在本实施例中,可以根据目标数据,通过每个计算节点计算该计算节点对应的维度参数的目标指标。具体来说,可以从树形结构的根计算节点开始,按照从父节点到子节点的顺序遍历树形结构的每个计算节点,任意一个遍历到的计算节点接收数据,并基于接收到的数据计算该计算节点对应的维度参数的目标指标。
在本实施例中,计算出每个计算节点对应的维度参数的目标指标后,可以将目标指标与对应的计算节点进行关联地存储;而如果当前计算节点已经有目标指标了,则需要利用新的目标数据的目标指标对已有的目标指标进行关联聚类。当用户需要利用数据的属性条件查询数据的目标指标时,可以先确定上述数据的属性条件所对应的维度参数,查找到该维度参数对应的计算节点,并取出该计算节点关联的目标指标。
本申请的上述实施例提供的数据处理方法,确定数据的维度参数,每个维度参数包括一个或多个维度标识,基于上述维度参数对应的维度标识,采用降低维度的方式确定树形结构,确定目标数据,根据目标数据,计算树形结构的每个计算节点对应的维度参数的目标指标,并将目标指标与对应的计算节点进行关联地存储。由于本实施例基于数据的维度参数采用降低维度的方式确定树形结构,并预先计算树形结构的每个计算节点对应的维度参数的目标指标,将目标指标与对应的计算节点进行关联地存储,因此,当用户需要利用数据的属性条件查询数据的目标指标时,可以直接从预存的数据中取出目标指标,无需在每次查询时,遍历数据并临时计算目标指标,从而不仅节省了计算资源,也提高了指标查询的效率。
如图2所示,图2根据一示例性实施例示出的另一种数据处理方法的流程图,该实施例描述了计算每个计算节点对应的维度参数的目标指标的过程,该方法可以应用于分布式系统中,包括以下步骤:
在步骤201中,确定数据的维度参数,每个维度参数包括一个或多个维度标识。
在步骤202中,基于上述维度参数对应的维度标识,采用降低维度的方式确定树形结构。
在步骤203中,确定目标数据。
在步骤204中,根据目标数据,从上述树形结构的根计算节点开始,按照从父节点到子节点的顺序遍历该树形结构的每个计算节点,任意一个遍历到的计算节点执行以下操作:接收数据,基于接收到的数据计算该计算节点对应的维度参数的目标指标,并将目标指标与该计算节点进行关联地存储。
在本实施例中,针对任意一个树形结构的根计算节点,上述接收到的数据为目标数据。针对任意一个树形结构的叶子计算节点,上述接收到的数据为该叶子计算节点的父计算节点分发的数据。
具体来说,首先,可以将目标数据分发至树形结构的根计算节点,根计算节点接收目标数据,并基于目标数据计算该根计算节点对应的维度参数的目标指标,然后将该目标指标与根计算节点进行关联地存储。接着,根计算节点可以基于目标数据向其子计算节点分发数据。根计算节点的子计算节点接收到根计算节点分发的数据,并基于该接收到的数据计算该子计算节点对应的维度参数的目标指标,并将该目标指标与该子计算节点进行关联地存储。再基于该接收到的数据向下一级子计算节点分发数据。以此类推,遍历树形结构的每个计算节点。如果是增量计算时,每一计算节点已经有了对应的目标指标了。此时,可以将目标数据分发至树形结构的根计算节点,根计算节点接收目标数据,并基于目标数据计算该根计算节点对应的维度参数的目标指标,然后将该目标指标与根计算节点当前的目标指标进行关联聚类以对当前的目标指标进行更新,然后再将更新后的目标指标与该根计算节点进行关联地存储。接着,根计算节点可以基于目标数据向其子计算节点分发数据。根计算节点的子计算节点接收到根计算节点分发的数据,并基于该接收到的数据计算该子计算节点对应的维度参数的目标指标,然后将该目标指标与该子计算节点当前的目标指标进行关联聚类以对当前的目标指标进行更新,然后再将更新后的目标指标与该子计算节点进行关联地存储。再基于该接收到的数据向下一级子计算节点分发数据。以此类推,遍历树形结构的每个计算节点。
当然,上述实施例中是采用将新增的目标数据的目标指标与根计算节点当前的目标指标进行关联聚类;本实施例还可以利用新增的目标数据的维度参数的参数值与该计算节点已有的维度参数的参数值进行聚类,以计算该计算节点对应的维度参数的目标指标。
在本实施例中,可以通过如下方式基于接收到的数据计算该计算节点对应的维度参数的目标指标:首先,可以根据该计算节点对应的维度参数的属性值,将接收到的数据分为多组第一子数据,每组第一子数据对应的属性值相同。然后,对每组第一子数据进行统计计算,得到该节点对应的统计数据,最后,基于该统计数据计算该节点对应的维度参数的目标指标。由于基于属性值对接收到的数据进行分组,并按组进行统计计算,因此,提高了计算效率。
其中,对任一组第一子数据进行统计计算可以是对该组第一子数据中能够用于计算目标指标的数据进行统计。能够用于计算目标指标的数据可以是任意合理的数据,例如,可以包括但不限于一次访问的耗时,状态码等等。可以采用任意合理的方式进行统计计算,本申请对统计计算的具体方式方面不限定。
可选地,可以采用分布式的方式对上述多组第一子数据进行统计计算,其中,针对任意一组第一子数据,在该计算节点的同一个计算实例下对该组第一子数据进行统计计算。可以在该计算节点的不同计算实例下对不同组的第一子数据进行统计计算。因此,进一步提高了计算效率。其中,计算节点的计算实例可以是计算节点对应的计算机集群中的一台计算机。
以计算节点ACE为例,如果计算节点ACE对应的维度参数的属性值包括a1c1e1,a1c1e2,a1c2e2,可以将计算节点ACE接收到的数据按照上述属性值分成三组第一子数据,每组第一子数据对应的属性值相同。然后,统计每组第一子数据中能够用于计算目标指标的数据。例如,如果能够用于计算目标指标的数据包括状态码,则每组第一子数据得到的统计结果可以包括该组第一子数据中对应的不同状态码,以及每个状态码对应的数据数量。可选地,可以在计算节点ACE的同一个计算实例上统计同一组第一子数据。将三组第一子数据对应的统计结果,作为计算节点ACE对应的统计数据,可以基于该统计数据确定计算节点ACE对应的维度参数的目标指标。
需要说明的是,对于与图1A实施例中相同的步骤,在上述图2实施例中不再进行赘述,相关内容可参见图1A实施例。
本申请的上述实施例提供的数据处理方法,确定数据的维度参数,每个维度参数包括一个或多个维度标识,基于上述维度参数对应的维度标识,采用降低维度的方式确定树形结构,确定目标数据,根据目标数据,从上述树形结构的根计算节点开始,按照从父节点到子节点的顺序遍历该树形结构的每个计算节点,任意一个遍历到的计算节点执行以下操作:接收数据,基于接收到的数据计算该计算节点对应的维度参数的目标指标,并将目标指标与该计算节点进行关联地存储。从而进一步节省了计算资源,有助于提高指标的查询效率。
如图3所示,图3根据一示例性实施例示出的另一种数据处理方法的流程图,该实施例描述了分发数据的过程,该方法可以应用于分布式系统中,包括以下步骤:
在步骤301中,确定数据的维度参数,每个维度参数包括一个或多个维度标识。
在步骤302中,基于上述维度参数对应的维度标识,采用降低维度的方式确定树形结构。
在步骤303中,确定目标数据。
在步骤304中,根据目标数据,从上述树形结构的根计算节点开始,按照从父节点到子节点的顺序遍历该树形结构的每个计算节点,任意一个遍历到的计算节点执行以下操作:接收数据,并基于接收到的数据计算该计算节点对应的维度参数的目标指标,并将目标指标与该计算节点进行关联地存储。任意一个遍历到的非末端的计算节点还执行以下操作:基于该计算节点对应的维度参数以及接收到的数据,确定待分发数据,并将待分发数据分发至该计算节点的子计算节点。
在本实施例中,针对任意一个树形结构的根计算节点,上述接收到的数据为目标数据。针对任意一个树形结构的叶子计算节点,上述接收到的数据为该叶子计算节点的父计算节点分发的数据。
以如图1B所示的树形结构为例,首先,可以将目标数据分发至树形结构的根计算节点ABCDE,根计算节点ABCDE接收目标数据,并基于目标数据计算该根计算节点对应的维度参数的目标指标,然后将该目标指标与根计算节点ABCDE进行关联地存储。接着,根计算节点ABCDE可以基于对应的维度参数以及接收到的目标数据,确定针对计算节点ABCD的待分发数据和针对计算节点ACDE的待分发数据,并将上述待分发数据分别分发至计算节点ABCD和计算节点ACDE。
计算节点ABCD接收到根计算节点ABCDE发送到数据后,基于该接收到的数据计算对应的维度参数的目标指标,然后将该目标指标与计算节点ABCD进行关联地存储。接着,计算节点ABCD可以基于对应的维度参数以及从根计算节点ABCDE接收到的数据,确定针对计算节点ABC的待分发数据和针对计算节点ABD的待分发数据,并将上述待分发数据分别分发至计算节点ABC和计算节点ABD。以此类推,遍历树形结构的每个计算节点。
在本实施例中,可以通过如下方式基于该计算节点对应的维度参数以及接收到的数据,确定待分发数据:首先,可以确定该计算节点的一个或多个目标子计算节点,根据该计算节点对应的维度参数及每个目标子计算节点对应的维度参数,确定每个目标子计算节点与该计算节点相同的维度。基于每个目标子计算节点与该计算节点相同的维度以及上述接收到的数据,确定针对每个目标子计算节点的待分发数据。其中,可以通过如下方式确定针对任一目标子计算节点的待分发数据:基于该目标子计算节点与该计算节点相同的维度的属性值,将该计算节点接收到的数据分为多组第二子数据,每组第二子数据对应的属性值相同,对每组第二子数据进行统计计算,得到针对该目标子节点的待分发数据。
以计算节点ACE为例,可以确定计算节点ACE的目标子计算节点为计算节点AC和计算节点AE。因此,可以确定计算节点AC和计算节点AE与计算节点ACE相同的维度分别为A、C和A、E。针对计算节点AC,对应的维度的属性值包括a1,c1,c2,因此,可以将计算节点ACE接收到的数据按照上述属性值分成两组第二子数据,每组第二子数据对应的维度参数的属性值相同,分别为a1c1,a1c2。然后,对每组第二子数据进行统计计算,得到针对计算节点AC的待分发数据。
针对计算节点AE,对应的维度的属性值包括a1,e1,e2,因此,可以将计算节点ACE接收到的数据按照上述属性值再分成两组第二子数据,每组第二子数据对应的维度参数的属性值相同,分别为a1e1,a1e2。然后,对每组第二子数据进行统计计算,得到针对计算节点AE的待分发数据。
需要说明的是,对于与图1A和图2实施例中相同的步骤,在上述图3实施例中不再进行赘述,相关内容可参见图1A和图2实施例。
本申请的上述实施例提供的数据处理方法,通过构建逐级降维的树形结构,并从树形结构的根计算节点开始,按照从父节点到子节点的顺序,遍历树形结构的每个计算节点,通过每个计算节点计算对应的目标指标,并将目标指标与对应的计算节点进行关联地存储。同时,按照从父节点到子节点的顺序,逐级向下游计算节点分发数据,由于逐级降维的树形结构,使得分发的数据的逐级减少。从而不仅降低了计算资源的消耗,也有助于提高指标查询的效率。
应当注意,尽管在上述的实施例中,以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
与前述数据处理方法实施例相对应,本申请还提供了数据处理装置的实施例。
如图4所示,图4是本申请根据一示例性实施例示出的一种数据处理装置框图,该装置可以包括:确定模块401,构建模块402,获取模块403和计算模块404。
其中,确定模块401,用于确定数据的维度参数,每个维度参数包括一个或多个维度标识。
构建模块402,用于基于上述维度参数对应的维度标识,采用降低维度的方式确定树形结构,该树形结构的每个计算节点对应一个维度参数。其中,该树形结构的任一子计算节点对应的维度标识集合为该子计算节点的父计算节点对应的维度标识集合的真子集。
获取模块403,用于确定目标数据。
计算模块404,用于根据目标数据,计算每个计算节点对应的维度参数的目标指标,并将该目标指标与对应的计算节点进行关联地存储。
在一些可选实施方式中,计算模块404被配置用于:从树形结构的根计算节点开始,按照从父节点到子节点的顺序遍历树形结构的每个计算节点,指示任意一个遍历到的计算节点执行以下操作:接收数据,并基于接收到的数据计算该计算节点对应的维度参数的目标指标。
其中,针对任一树形结构的根计算节点,上述接收到的数据为目标数据。针对任一树形结构的叶子计算节点,上述接收到的数据为该叶子计算节点的父计算节点分发的数据。
在另一些可选实施方式中,计算模块404还被配置用于:指示任意一个遍历到的非末端的计算节点执行以下操作:基于该计算节点对应的维度参数以及所述接收到的数据,确定待分发数据,并将待分发数据分发至该计算节点的子计算节点。
在另一些可选实施方式中,通过如下方式基于接收到的数据计算该计算节点对应的维度参数的目标指标:根据该计算节点对应的维度参数的属性值,将接收到的数据分为多组第一子数据,每组第一子数据对应的属性值相同,对每组第一子数据进行统计计算,得到该计算节点对应的统计数据,并基于统计数据计算该计算节点对应的维度参数的目标指标。
在另一些可选实施方式中,采用分布式的方式对多组第一子数据进行统计计算。其中,针对任意一组第一子数据,在该计算节点的同一个计算实例下对该组第一子数据进行统计计算。
在另一些可选实施方式中,通过如下方式基于该计算节点对应的维度参数以及接收到的数据,确定待分发数据:确定该计算节点的一个或多个目标子计算节点,根据该计算节点对应的维度参数及每个所述目标子计算节点对应的维度参数,确定每个目标子计算节点与该计算节点相同的维度,基于每个目标子计算节点与该计算节点相同的维度以及所述接收到的数据,并确定针对每个目标子计算节点的待分发数据。
在另一些可选实施方式中,通过如下方式确定针对任一目标子计算节点的待分发数据:基于该目标子计算节点与该计算节点相同的维度的属性值,将该计算节点接收到的数据分为多组第二子数据,每组第二子数据对应的属性值相同,对每组第二子数据进行统计计算,得到针对该目标子节点的待分发数据。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1A至图3任一实施例提供的数据处理方法。
对应于上述的数据处理方法,本申请实施例还提出了图5所示的根据本申请的一示例性实施例的计算设备的示意结构图。请参考图5,在硬件层面,该计算设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成数据处理装置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法包括:
确定数据的维度参数;每个所述维度参数包括一个或多个维度标识;
基于所述数据的维度参数对应的维度标识,采用降低维度的方式确定树形结构;所述树形结构的每个计算节点对应一个维度参数;其中,所述树形结构的任一子计算节点对应的维度标识集合为该子计算节点的父计算节点对应的维度标识集合的真子集;
确定目标数据;
根据所述目标数据,计算所述每个计算节点对应的维度参数的目标指标。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标数据,计算所述每个计算节点对应的维度参数的目标指标,包括:
从所述树形结构的根计算节点开始,按照从父节点到子节点的顺序遍历所述树形结构的每个计算节点,任意一个遍历到的计算节点执行以下操作:接收数据,并基于接收到的数据计算该计算节点对应的维度参数的目标指标;
其中,针对任一所述树形结构的根计算节点,所述接收到的数据为所述目标数据;针对任一所述树形结构的叶子计算节点,所述接收到的数据为该叶子计算节点的父计算节点分发的数据。
3.根据权利要求2所述的方法,其特征在于,任意一个遍历到的非末端的计算节点还执行以下操作:基于该计算节点对应的维度参数以及所述接收到的数据,确定待分发数据,并将所述待分发数据分发至该计算节点的子计算节点。
4.根据权利要求2所述的方法,其特征在于,所述基于接收到的数据计算该计算节点对应的维度参数的目标指标,包括:
根据该计算节点对应的维度参数的属性值,将所述接收到的数据分为多组第一子数据,每组第一子数据对应的属性值相同;
对所述每组第一子数据进行统计计算,得到该计算节点对应的统计数据;
基于所述统计数据计算该计算节点对应的维度参数的目标指标。
5.根据权利要求4所述的方法,其特征在于,其中,每一组第一子数据对应计算节点的一个计算实例;其中每一计算节点对应一个或多个计算实例,且每一计算实例具有相同的维度参数的属性值,且不同的计算实例的维度参数的属性值不相同。
6.根据权利要求3所述的方法,其特征在于,所述基于该计算节点对应的维度参数以及所述接收到的数据,确定待分发数据,包括:
确定该计算节点的一个或多个目标子计算节点;
根据该计算节点对应的维度参数及每个所述目标子计算节点对应的维度参数,确定每个所述目标子计算节点与该计算节点相同的维度;
基于每个所述目标子计算节点与该计算节点相同的维度以及所述接收到的数据,确定针对每个所述目标子计算节点的待分发数据。
7.根据权利要求6所述的方法,其特征在于,通过如下方式确定针对任一目标子计算节点的待分发数据:
基于该目标子计算节点与该计算节点相同的维度的属性值,将该计算节点接收到的数据分为多组第二子数据,每组第二子数据对应的属性值相同;
对每组第二子数据进行统计计算,得到针对该目标子节点的待分发数据。
8.一种数据处理装置,其特征在于,所述装置包括:
确定模块,用于确定数据的维度参数;每个所述维度参数包括一个或多个维度标识;
构建模块,用于基于所述数据的维度参数对应的维度标识,采用降低维度的方式确定树形结构;所述树形结构的每个计算节点对应一个维度参数;其中,所述树形结构的任一子计算节点对应的维度标识集合为该子计算节点的父计算节点对应的维度标识集合的真子集;
获取模块,用于确定目标数据;
计算模块,用于根据所述目标数据,计算所述每个计算节点对应的维度参数的目标指标。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1-7中任一项所述的方法。
10.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811543777.7A CN109710610B (zh) | 2018-12-17 | 2018-12-17 | 数据处理方法、装置及计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811543777.7A CN109710610B (zh) | 2018-12-17 | 2018-12-17 | 数据处理方法、装置及计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109710610A true CN109710610A (zh) | 2019-05-03 |
CN109710610B CN109710610B (zh) | 2020-12-01 |
Family
ID=66256795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811543777.7A Active CN109710610B (zh) | 2018-12-17 | 2018-12-17 | 数据处理方法、装置及计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710610B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125159A (zh) * | 2019-12-24 | 2020-05-08 | 亚信科技(中国)有限公司 | 一种数据统计的方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145227A (zh) * | 2007-10-30 | 2008-03-19 | 金蝶软件(中国)有限公司 | 一种业务数据的处理方法及处理装置 |
US20120036163A1 (en) * | 2010-08-05 | 2012-02-09 | Wavemarket, Inc. | Distributed multidimensional range search system and method |
CN104424229A (zh) * | 2013-08-26 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 一种多维度拆分的计算方法及系统 |
CN104424251A (zh) * | 2013-08-28 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 一种多维度拆分的计算方法以及系统 |
CN104424231A (zh) * | 2013-08-26 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 多维数据的处理方法及装置 |
CN106874574A (zh) * | 2017-01-22 | 2017-06-20 | 清华大学 | 基于决策树的移动应用性能瓶颈分析方法及装置 |
-
2018
- 2018-12-17 CN CN201811543777.7A patent/CN109710610B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145227A (zh) * | 2007-10-30 | 2008-03-19 | 金蝶软件(中国)有限公司 | 一种业务数据的处理方法及处理装置 |
US20120036163A1 (en) * | 2010-08-05 | 2012-02-09 | Wavemarket, Inc. | Distributed multidimensional range search system and method |
CN104424229A (zh) * | 2013-08-26 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 一种多维度拆分的计算方法及系统 |
CN104424231A (zh) * | 2013-08-26 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 多维数据的处理方法及装置 |
CN104424251A (zh) * | 2013-08-28 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 一种多维度拆分的计算方法以及系统 |
CN106874574A (zh) * | 2017-01-22 | 2017-06-20 | 清华大学 | 基于决策树的移动应用性能瓶颈分析方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125159A (zh) * | 2019-12-24 | 2020-05-08 | 亚信科技(中国)有限公司 | 一种数据统计的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109710610B (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106095589B (zh) | 一种分配分区的方法、装置及系统 | |
CN109117275B (zh) | 基于数据分片的对账方法、装置、计算机设备及存储介质 | |
CN109213792A (zh) | 数据处理的方法、服务端、客户端、装置及可读存储介质 | |
CN110209686A (zh) | 数据的存储、查询方法及装置 | |
CN110519090B (zh) | 一种fpga云平台的加速卡分配方法、系统及相关组件 | |
CN112364908A (zh) | 一种面向决策树的纵向联邦学习方法 | |
CN107193643A (zh) | 一种高可靠分布式数据流实时统计方法及系统 | |
CN110414569A (zh) | 聚类实现方法及装置 | |
CN109347647A (zh) | 群组消息分发方法及装置 | |
CN104965846B (zh) | MapReduce平台上的虚拟人建立方法 | |
US11263569B2 (en) | Blockchain-based information processing method and apparatus, and device | |
CN113704252A (zh) | 规则引擎决策树实现方法、装置、计算机设备及计算机可读存储介质 | |
CN112699134A (zh) | 基于图剖分的分布式图数据库的存储与查询方法 | |
CN113810234B (zh) | 微服务链路拓扑处理方法、装置及可读存储介质 | |
Mizrahi et al. | State sharding with space-aware representations | |
CN107276912B (zh) | 存储器、报文处理方法及分布式存储系统 | |
CN109710610A (zh) | 数据处理方法、装置及计算设备 | |
CN107291746A (zh) | 一种存储和读取数据的方法及设备 | |
CN105978744A (zh) | 一种资源分配方法、装置及系统 | |
CN111259062B (zh) | 一种能够保证分布式数据库全表查询语句结果集顺序的方法和装置 | |
CN110232525B (zh) | 一种企业风险获取方法、装置、服务器及存储介质 | |
CN104036052A (zh) | 一种基于历史经验的谓词索引匹配方法 | |
CN110224847B (zh) | 基于社交网络的社团划分方法、装置、存储介质及设备 | |
CN116910061A (zh) | 一种数据库的分库分表方法、装置、设备及可读存储介质 | |
CN103414756A (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 |