数据监控处理方法及设备的制作方法

文档序号:6499121阅读:109来源:国知局
数据监控处理方法及设备的制作方法
【专利摘要】本申请提供一种数据监控处理方法及数据监控处理设备。该数据监控处理方法,所述方法包括:接收来自用户端的实时的原始数据;按照预定规则分发所述原始数据;对所述分发的数据分别按照统一配置进行对应的在线多维度处理;保存所述处理的结果。根据本申请,能够实现易扩展性、实时性以及高度可配置性。
【专利说明】数据监控处理方法及设备
【技术领域】
[0001]本申请涉及数据处理【技术领域】,尤其涉及一种数据监控处理方法及设备。
【背景技术】
[0002]近年来,移动互联网市场规模高速成长,移动互联网在互联网经济中的占比也快速上升。移动终端和操作系统的激烈竞争推动了智能手机的普及,移动应用开发技术也随之迅速发展,传统互联网企业移动化的意愿也不断增强,大批应用开发者涌入这个市场,在应用模式和商业模式上不断探索、创新。对于应用开发者来说,想在这个激烈竞争的市场中快速占取一席之地的关键因素之一,就是要及时了解自己产品的市场反映、用户的使用习惯及反馈以及在同行业中的竞争水平,以便及时做出调整和反映。而采集数据、处理数据和计算指标对开发者来说,往往是费时费力的,很难保证足够的投入。针对移动应用开发者的需求,提供一系列有针对性的分析工具,让开发者无需在采集、处理数据上花费精力,同时从第一天起就能实时监控应用的各项指标,通过对数据进行分析,更有针对性的改进、优化产品和运营策略。而在数据监控处理过程中,当服务器接收到各类原始数据时,需要将原始的异构的数据转换成结构化数据,然后根据整个系统的需要,实时地对海量的原始数据进行计算,并将其加工为满足计算需求的各类指标数据。而在整个过程中,需要实现一套在线的数据监控处理系统。
[0003]对于很多产品,用户为了希望尽早了解自己的产品的使用情况并及时发现和解决问题而收集到各种各样的使用数据。当用户收集到原始数据后,需要从多个维度对数据进行实时分析,计算出不同的测度指标,并从数据中提取相应规律,从而针对性地做出决策。
[0004]传统的在线计算处理,往往针对特定的产品来设计特定的处理方案。当需求发生变化或者面对一个全新产品时,就需要对处理方案进行大量改动,甚至重新做出一套新方案。这会严重影响新产品的开发周期,导致系统缺乏高度可配置性。
[0005]对于数据处理系统来说,需要满足以下几点需求:(I)在系统的输入是来自于手机用户的各类行为数据的情况下,由于手机终端用户的规模,系统的输入必然是巨大的,所以必须能够满足在大量数据基础之上的计算处理需求,这就要求系统具有易扩展性。(2)用户往往希望尽早了解自己的产品的使用情况,及时发现和解决问题,因此,计算结果的实时性也是系统必须满足的要求。(3)用户的计算处理需求是多种多样的,对于不同的应用场景,用户通常有着不同的需求,这就使得系统必须能够快速灵活地响应用户的计算需求,因此,系统必须具有高度的可配置性。

【发明内容】

[0006]本申请的主要目的在于提供一种数据监控处理方法及数据监控处理设备,以解决现有技术存在的数据处理系统不能同时满足易扩展性、实时性以及高度可配置性的问题,其中:
[0007]本申请的一个方面,提供一种数据监控处理方法,所述方法包括:接收来自用户端的实时的原始数据;按照预定规则分发所述原始数据;对所述分发的数据分别按照统一配置进行对应的在线多维度处理;保存所述处理的结果。
[0008]根据本申请的实施例,在所述方法中,所述按照预定规则分发所述原始数据的步骤包括按照用户端的ID对所述原始数据进行分发、根据数据中的匹配特征串进行分发、按照数据的属性特征进行分发、以及按照数据的行为特征进行分发中的任意一种分发方式。
[0009]根据本申请的实施例,在所述方法中,所述对所述分发的数据分别按照统一配置进行对应的在线多维度处理的步骤包括:对所述分发的数据进行结构化处理,生成结构化数据;读取配置文件中的多组配置参数以及所述结构化数据,生成对应的多个计算单元;以及用所述多个计算单元分别基于所述结构化数据进行计算。
[0010]根据本申请的实施例,在所述方法中,所述生成计算单元的步骤包括生成树的处理和生成叶子的处理。
[0011]根据本申请的实施例,在所述方法中,所述生成树的处理包括:读取步骤,针对所述配置文件中的多组配置参数,依次读取一组配置参数作为当前节点;判断步骤,根据所述配置参数的信息来判断所述当前节点是维度节点还是测度节点;以及检测步骤,检测所述当前节点包含的子节点,并针对所述子节点依次执行所述读取步骤和判断步骤。
[0012]根据本申请的实施例,在所述方法中,所述判断步骤中还包括:当判断为当前节点是维度节点时,调用维度节点生成器而生成维度节点;以及当判断为当前节点是测度节点时,获取当前节点的测度类名,并通过反射机制生成测度节点实例。
[0013]根据本申请的实施例,在所述方法中,所述生成叶子的处理包括:从所述配置文件中获取维度节点所关注的维度信息;以及使用维度读取器从所述结构化数据中读取与所述维度信息对应的维度数据,并根据预定需求将所述维度数据划分为不同的维度值区间;以及分别将所述不同的维度值区间与所述测度节点实例相关联。
[0014]根据本申请的实施例,在所述方法中,还包括:接收查询请求;反馈所保存的与所述查询请求对应的处理结果;以及对多个所述反馈的处理结果进行合并运算,并将合并运算的结果发送到所述用户端。
[0015]本申请的另一个方面,提供一种数据监控处理设备,包括:接收模块,被配置成从用户端接收实时的原始数据;计算模块,被配置成对所述原始数据进行在线多维度处理;以及存储模块,被配置成保存所述处理的结果。
[0016]根据本申请的实施例,在所述设备中,所述计算模块包括:分发模块,被配置成按照预定规则向所述计算模块所具有的多个计算节点分发所述原始数据;以及处理模块,被配置成对每个计算节点接收到的所述分发的数据按照统一配置进行对应的在线多维度处理。
[0017]根据本申请的实施例,在所述设备中,所述处理模块包括:结构化处理模块,被配置成对所述分发的数据进行结构化处理,生成结构化数据;生成模块,被配置成读取配置文件中的多组配置参数以及所述结构化数据,生成对应的多个计算单元;以及计算装置,被配置成用所述多个计算单元分别基于所述结构化数据进行计算。
[0018]根据本申请的实施例,在所述设备中,所述生成模块包括:第一处理装置,被配置成执行生成树的处理;以及第二处理装置,被配置成执行生成叶子的处理。
[0019]根据本申请的实施例,在所述设备中,所述第一处理装置包括:读取装置,被配置成针对所述配置文件中的多组配置参数,依次读取一组配置参数作为当前节点;判断装置,被配置成根据所述配置参数的信息来判断所述当前节点是维度节点还是测度节点;以及检测装置,被配置成检测所述当前节点包含的子节点,并针对所述子节点依次使用所述读取装置和判断装置执行处理。
[0020]根据本申请的实施例,在所述设备中,所述判断装置在判断为当前节点是维度节点时,调用维度节点生成器而生成维度节点,所述判断装置在判断为当前节点是测度节点时,获取当前节点的测度类名,并通过反射机制生成测度节点实例。
[0021]根据本申请的实施例,在所述设备中,所述第二处理装置包括:获取装置,被配置成从所述配置文件中获取维度节点所关注的维度;以及划分装置,被配置成使用维度读取器从所述结构化数据中读取与所述所关注的维度对应的维度数据,并根据预定需求将所述维度数据分为不同的维度值区间;以及关联装置,被配置成分别将所述不同的维度值区间与所述测度节点实例相关联。
[0022]根据本申请的实施例,在所述设备中,还包括查询模块,被配置成将来自所述用户端的查询请求分别发送到所述多个计算节点,并且将从所述多个计算节点反馈回来的处理结果进行合并运算,并将合并运算的结果返回给所述用户端。
[0023]根据本申请的实施例,在所述设备中,所述多个计算节点在接收到所述查询请求后分别将保存在存储模块中的与所述查询请求对应的处理结果反馈给所述查询模块。
[0024]与现有技术相比,根据本申请的技术方案,能够提供一种实现易扩展性、实时性以及高度可配置性的数据监控处理方法及数据监控处理设备。
【专利附图】

【附图说明】
[0025]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0026]图1是本申请实施例的数据监控处理系统的示意图;
[0027]图2是本申请实施例的数据监控处理方法的概略流程图;
[0028]图3是本申请实施例的步骤S203的具体流程的示意图;
[0029]图4是本申请实施例的由树状结构形成的计算单元的示意图;
[0030]图5是本申请实施例的步骤S302涉及的生成树的处理的流程图;
[0031]图6是本申请实施例的步骤S302涉及的生成叶子的处理的流程图;
[0032]图7是本申请实施例的针对查询请求进行处理的流程图;
[0033]图8是本申请实施例的数据监控处理设备的结构示意图;
[0034]图9是本发明实施例的计算模块802的具体结构的示意图;
[0035]图10示出了适于用来实现本申请实施方式的计算机系统的框图。
【具体实施方式】
[0036]本申请的主要思想在于,考虑到系统的特殊性,本系统必须做到易扩展、实时、高度可配置。分布化、易扩展是解决数据处理系统的通用方式。简单地利用增加机器的方法、将计算压力分摊到多个计算节点,从而使得提高整个系统的服务能力。在这种情况下,必须做到能够简单地修改配置文件就能够将系统部署在多个计算节点上。并且,在本系统中,对于所有的计算节点使用同样的配置,实现同样的计算逻辑。而且,通过保证每个计算节点上数据的正交性,这样使得整个系统简单、易扩展。
[0037]为使本申请的目的、技术方案和优点更加清楚,以下结合附图及具体实施例,对本申请作进一步地详细说明。
[0038]根据本申请的一方面,提供了 一种数据监控处理方法。
[0039]首先,简要说明数据监控处理系统的主要组成部分。图1是本申请实施例的数据监控处理系统的示意图。如图1所示,数据监控处理系统主要包括接收模块、计算模块以及查询模块。该数据监控处理系统是分布式系统。其中,计算模块包括多个计算节点。
[0040]参考图2,图2是本申请实施例的数据监控处理方法的概略流程图。下面,结合图1和图2来具体说明数据监控处理系统执行的数据监控处理。
[0041]首先,在步骤S201中,接收来自用户端的实时的原始数据。这里的原始数据是来自手机用户的各类行为数据,用户端是手机终端。换句话说,在数据监控处理系统(以下也称作系统)运行时,接收模块从用户端实时地接收原始数据。
[0042]接着,在步骤S202中,按照预定规则分发所述原始数据。也就是说,接收模块在接收到原始数据以后按照预定规则将其分发到计算模块中的多个计算节点上。这里的预定规则是指特定的分发算法。下面,举例说明特定的分发算法。
[0043]例如,可以按照用户端的ID (以下称作用户ID)将接收到的原始数据向多个计算节点进行分发。在此情况下,可以使用下面的公式I。
[0044][公式I]
[0045]NodeIdTo=UserId%NodeNum
[0046]其中,NodeIdT。表示数据分发的目标节点序号,UserId为用户ID, NodeNum为计算节点数。
[0047]又例如,可以根据数据中匹配的特征串进行分发。在这种情况下,预先设有一个特征串规则集合,集合中的每个元素包含了一个特征串和与该特征串对应的一个分发目标节点。当接收到数据时,需要检测所接收到的数据中是否含有某个特征串,如果存在特征串,则将该数据分发到上述的特征串规则集合中指定的与检测出的特征串对应的目标节点。
[0048]又例如,可以根据数据的属性特征进行分发。在这种情况下,需要定义用户的属性特征。比如,可以将数据发送时使用的网络作为特征,将来自不同网络的数据分发到不同的计算节点上。
[0049]又例如,可以根据数据的行为特征进行分发。在这种情况下,需要定义用户的行为特征。比如,可以从数据中抽取出该数据所包含的事件数作为特征,将不同事件数的数据分发到不同的计算节点上。
[0050]一般地,如果采用将原始数据随机地分发到多个计算节点的方法,那么有可能存在某几台计算节点均接收到来自于同一个用户ID的分发数据的情况。例如,假设计算模块包括计算节点A、计算节点B、计算节点C,接收模块从用户1、用户2、用户3接收数据并且将数据随机地分为数据1、数据I1、数据III这三个部分,数据I来自于用户1、用户2,数据II来自于用户2、用户3,数据III来自于用户1、用户2、用户3。此时,若数据I被分发到计算节点A,数据II被分发到计算节点B,数据III被分发到计算节点C时,则用户I的数据被分发到计算节点A和C,用户2的数据被分发到计算节点A、B、C,用户3的数据被分发到计算节点B和C。当对经过计算节点A、B、C处理后的所有数据结果进行整合时,需要分别针对用户1、用户2、用户3执行数据的逻辑“或”运算。S卩,针对用户1,将来自计算节点A的有关用户I的数据和来自计算节点C的有关用户I的数据进行逻辑“或”运算。另外,对用户2和用户3也按照同样的方式执行同样的运算。
[0051]相对于此,本申请采用了按照用户名将接收到的数据分发到各计算节点上的方法。即,例如将来自用户I的数据分发到计算节点A,将来自用户2的数据分发到计算节点B,将来自用户3的数据分发到计算节点C。这样,在整合数据时不需要针对用户1、2、3执行逻辑“或”运算的处理。显然,采用这种分发方式,能节省对大量数据的逻辑运算操作,达到了省时省力的目的,提高了系统的运行效率。由此可知,通过采用上述的分发算法,能够保证将来自于同一种类(例如同一用户端)的数据分发到一个计算节点上。这样处理的好处是,能够避免在对多个计算节点的处理结果进行整合时针对用户ID执行逻辑运算,从而使得对用户ID等的相关操作降低为线性时间。
[0052]然后,在步骤S203中,对所述分发的数据分别按照统一配置进行对应的在线多维度处理。换句话说,各计算节点按照统一配置分别对接收到的分发数据进行在线多维度处理。在此,统一配置是指各计算节点对分发数据进行处理的方式相同。以下,对有关在线多维度处理的过程进行详细描述。
[0053]图3是本申请实施例的步骤S203的具体流程的示意图。
[0054]如图3所示,首先,在步骤S301中,对所述分发的数据进行结构化处理,生成结构化数据。即,各计算节点对接收到分发数据进行结构化处理。由于接收模块从用户端接收到的原始数据是异构数据,所以需要将原始数据转换为结构化数据,这种转换处理有利于对各计算节点的数据处理结果进行逻辑运算。
[0055]接着,在步骤S302中,读取应用程序配置文件中的多组配置参数以及所述结构化数据,生成对应的多个计算单元。在多用户、多任务环境中,配置文件用于控制用户权限、系统应用程序、守护进程、服务和其它管理任务。该配置文件中包含预先设置的可以被读取的多组配置参数,这些参数是用于监控用户各种行为数据的计算指标。在本系统中,使用例如树状结构来描述用于计算的配置。图4是本申请实施例的由树状结构形成的计算单元的示意图。如图4所示,一个计算单元即为一棵树,树的每一个节点对应着一个维度或者一个测度。维度通常是指分析的目标对象所采用的分析角度。测度是指分析的对象。也就是说,图4中的树是将应用名称和用户地理位置作为维度、将启动次数和用户数作为测度的计算单元。根据计算需求的不同,可以生成不同的计算单元,即每组配置参数生成对应的一个计算单元。因此,通过利用统一配置生成树,就可以实现维度和测度组合的高度可配置化。
[0056]更具体来说,步骤S302可以进一步包括生成树的处理和生成叶子的处理。
[0057]首先,如图5所示那样执行生成树的处理。图5是本申请实施例的步骤S302涉及的生成树的处理的流程图。
[0058]如图5所示,在步骤S501中,针对配置文件中的多组配置参数,依次读取一组配置参数作为当前节点(即读取步骤)。由于一棵树由多个节点构成,所以每读取一组配置参数,就生成一个节点。
[0059]接着,在步骤S502中,根据所述配置参数的信息来判断所述当前节点是维度节点还是测度节点(即判断步骤)。实际上,在每组配置参数中预先设定有节点类型的信息,即配置参数中包含当前节点是维度节点还是测度节点的信息。因此,只要读取当前节点的配置参数就可以通过有关节点类型的信息得知该节点是哪种类型的节点。
[0060]然后,根据步骤S502的判断结果,决定是执行步骤S503还是执行步骤S504。换句话说,在步骤S502中,当前节点被判断为维度节点时就进入步骤S503,而当前节点被判断为测度节点时就进入步骤S504。进而,在步骤S503中,调用维度节点生成器来生成维度节点。维度节点生成器是用于通过读取配置文件中的相关参数来生成所需要的维度节点的应用程序片段。另一方面,在步骤S504中,获取当前节点的测度类名,并通过反射机制生成测度节点实例。每一种测度对应着一个类,将类实例化后得到的是测度实例。换句话说,从配置文件中读取当前节点的测度的名称,通过反射机制使每个测度都具体化。测度实例就是测度对应的类的具体对象。例如,在图4中,通过根据配置参数的信息进行判断,可以得出该计算单元具有两个测度,这两个测度对应着两个类。因此,测度类名分别是“启动次数”和“用户数”。通过将一个测度取为“启动次数”,另一个测度取为“用户数”,相当于将这两个测度对应的两个类实例化而成为测度实例。反射机制是指程序在运行状态中能够获取自身的信息并修改自己的行为,在本例中,具体的测度对象通过获取配置参数信息来改变自己的行为,使之成为配置对应的类的示例,从而使得对象具有任何该类的方法和属性。
[0061]接着,在步骤S505中,检测所述当前节点包含的子节点,并针对所述子节点依次执行所述读取步骤和判断步骤(即检测步骤)。也就是说,当检测到当前节点具有子节点时继续从配置文件中读取配置参数并判断子节点的类型;当检测到当前节点不具有子节点时,结束树的生成处理。通过读取配置文件中预先设定的信息,就可以得出当前节点是否具有子节点。
[0062]下面,以图4为例说明树的生成过程。在图4中,以应用名称和用户地理位置作为维度,以启动次数和用户数作为测度。
[0063]1、从配置文件中读取当前节点A〈应用名称〉;
[0064]2、判断出当前节点A为维度节点,并通过调用维度节点生成器生成维度节点A〈应用名称> ;
[0065]3、检测出节点A具有子节点,并从配置文件中读取其子节点B〈用户地理位置> ;
[0066]4、判断出节点B为维度节点,并通过调用维度节点生成器生成维度节点B〈用户地
理位置> ;
[0067]5、检测出节点B具有子节点,并从配置文件中读取其子节点C〈启动次数> ;
[0068]6、判断出节点C为测度节点,并通过反射机制生成测度节点实例C〈启动次数> ;
[0069]7、检测出节点B具有子节点,并从配置文件中读取其子节点D〈启动次数> ;
[0070]8、判断出节点D为测度节点,并通过反射机制生成测度节点实例D〈用户数> ;
[0071]9、判断出节点C和节点D没有子节点,结束生成树的处理。
[0072]接下来,如图6所示那样执行生成叶子的处理。图6是本申请实施例的步骤S302涉及的生成叶子的处理的流程图。
[0073]如图6所示,在步骤S601中,从所述配置文件中获取维度节点所关注的维度信息。换句话说,维度节点所关注的维度信息就是作为计算单元的维度的对象。例如,在图4中,所关注的维度信息就是作为“应用名称”的“测试应用”和作为“用户地理位置”的“北京”
坐寸ο[0074]接着,在步骤S602中,使用维度读取器从所述结构化数据中读取与所述维度信息对应的维度值,并根据预定需求将所述维度值划分为不同的维度值区间。维度读取器是用于从结构化数据中读取所需要的维度值的应用程序片段。例如,在图4中,使用维度读取器从结构化数据中读取与“用户地理位置”对应的维度值“北京”和“上海”,根据需求将读出的维度值按用户所在地区划分为不同的两个区间即“北京”和“上海”。
[0075]在步骤S603中,分别将所述不同的维度值区间与所述测度节点实例相关联。也就是说,针对每个维度值区间利用反射机制生成测度节点实例。例如在图4中,将作为区间值的“北京”与作为测度类名的“启动次数”和“用户数”建立关联。对于作为区间值的“上海”也一样。
[0076]然后,返回至图3,在步骤S303中,用所述多个计算单元分别基于所述结构化数据进行计算。也就是说,将结构化数据分别输入到在步骤S302中构成的多棵树中来进行计算。[0077]接下来,返回至图2,在步骤S204中,保存所述处理的结果。也就是说,保存数据处理结果即步骤S303的计算结果。例如,可以将处理结果存储在存储器中。
[0078]如上所述,根据实施例,具体说明了对来自用户端的原始数据进行在线多维度处理的方法,但本申请涉及的数据监控处理方法不限于此,还能够根据来自用户端的查询请求而反馈处理结果。
[0079]具体来说,图7是本申请实施例的针对查询请求进行处理的流程图。结合图1和图7对查询处理的流程进行说明。
[0080]首先,在步骤S701中,接收查询请求。也就是说,各计算节点接收到来自查询模块的查询请求。在通常情况下,查询请求是基于用户从本系统根据在配置文件中预先设置的多组配置参数而对应地设定的多个计算指标中选取的一项以上的计算指标而发出的请求。
[0081]接着,在步骤S702中,反馈所保存的与所述查询请求对应的处理结果。换句话说,各计算节点根据接收到的查询请求从存储器中取出与该查询请求对应的处理结果,并将该处理结果反馈给查询模块。
[0082]接着,在步骤S703,对多个所述反馈的处理结果进行合并运算,并将合并运算的结果发送到所述用户端。也就是说,查询模块从多个计算节点接收到多个处理结果,并将这些处理结果进行合并运算,然后将运算结果发送给用户端。由于本系统的分发算法保证了各计算节点的数据均是独立的、无重复的。将这种具有独立性的数据称之为数据正交化。由于采用了将发送到各计算节点的数据正交化,所以保证了计算结果的正交性,所以查询模块能够快速地对处理结果进行整合,避免了进行复杂的运算。。
[0083]本申请的另一方面,还涉及一种数据监控处理设备。
[0084]图8是本申请实施例的数据监控处理设备的结构示意图。如图8所示,数据监控处理设备800可以包括接收模块801、计算模块802、存储模块803、以及查询模块804。其中,计算模块802由多个计算节点构成。
[0085]接收模块801被配置成从用户端接收实时的原始数据。
[0086]计算模块802被配置成对所述原始数据进行在线多维度处理。也就是说,计算模块802对从接收模块801接收到的原始数据进行在线多维度处理。
[0087]存储模块803被配置成保存所述处理的结果。换句话说,存储模块803保存经过计算模块802处理的计算结果。存储模块803例如可以是存储器。
[0088]查询模块804被配置成将来自所述用户端的查询请求分别发送到所述多个计算节点,并且将从所述多个计算节点反馈回来的处理结果进行合并运算,并将合并运算的结果返回给所述用户端。也就是说,查询模块804接收到来自用户端的查询请求后,将该查询请求分别发送到计算模块802所具有的多个计算节点上,然后从多个计算节点接收到经过该多个计算节点分别进行在线多维度处理后的处理结果,对这些处理结果进行合并运算后,将合并运算的结果返回到用户端。实际上,多个计算节点分别预先进行了在线多维度处理,并将处理结果分别保存在存储模块803中。当多个计算节点在接收到所述查询请求后,分别将保存在存储模块803中的与所述查询请求对应的处理结果反馈给所述查询模块804。
[0089]下面,参照图9来具体说明计算模块802的具体结构。图9是本发明实施例的计算模块802的具体结构的示意图。如图9所示,计算模块802可以包括分发模块901和处理模块902。
[0090]分发模块901被配置成按照预定规则向所述计算模块802所具有的多个计算节点分发所述原始数据。处理模块902被配置成对每个计算节点接收到的所述分发的数据按照统一配置进行对应的在线多维度处理。
[0091]具体来说,处理模块可以包括:结构化处理模块911、生成模块912以及计算装置913。
[0092]结构化处理模块911被配置成对所述分发的数据进行结构化处理而生成结构化数据。
[0093]生成模块912被配置成读取配置文件中的多组配置参数以及所述结构化数据而生成对应的多个计算单元。进而,生成模块912可以包括第一处理装置921和第二处理装置 922。
[0094]第一处理装置921被配置成执行生成树的处理。第二处理装置922被配置成执行生成叶子的处理。
[0095]另外,第一处理装置921可以包括读取装置931、判断装置932、以及检测装置933。读取装置931被配置成针对所述配置文件中的多组配置参数,依次读取一组配置参数作为当前节点。判断装置932被配置成根据所述配置参数的信息来判断所述当前节点是维度节点还是测度节点。当判断为当前节点是维度节点时,调用维度节点生成器而生成维度节点。而当判断为当前节点是测度节点时,获取当前节点的测度类名,并通过反射机制生成测度节点实例。检测装置933被配置成检测所述当前节点包含的子节点,并针对所述子节点依次使用所述读取装置和判断装置执行处理。
[0096]另外,第二处理装置922可以包括获取装置941、划分装置942以及关联装置943。获取装置941被配置成从所述配置文件中获取维度节点所关注的维度。划分装置942被配置成使用维度读取器从所述结构化数据中读取与所述所关注的维度对应的维度数据,并根据预定需求将所述维度数据分为不同的维度值区间。关联装置943被配置成分别将所述不同的维度值区间与所述测度节点实例相关联。
[0097]计算装置913被配置成用所述多个计算单元分别基于所述结构化数据进行计算。
[0098]本申请的设备800所包括的各个模块的具体实施与本申请的方法中的步骤的具体实施是相对应的,为了不模糊本申请,在此省略不再对各个模块的具体细节进行描述。
[0099]本申请还可以通过软件来实现,所述软件能够在其中执行的计算机系统如图10所示。
[0100]图10示出了适于用来实现本申请实施方式的计算机系统的框图。如图10所示,计算机系统可以包括=CPU (中央处理单元)1001、RAM (随机存取存储器)1002、ROM (只读存储器)1003、系统总线1004、硬盘控制器1005、键盘控制器1006、串行接口控制器1007、并行接口控制器1008、显示控制器1009、硬盘1010、键盘1011、串行外部设备1012、并行外部设备1013和显示器1014。在这些部件中,与系统总线1004相连的有CPU1001、RAM1002、R0M1003、硬盘控制器1005、键盘控制器1006、串行控制器1007、并行控制器1008和显示控制器1009。硬盘1010与硬盘控制器1005相连,键盘1011与键盘控制器1006相连,串行外部设备1012与串行接口控制器1007相连,并行外部设备1013与并行接口控制器1008相连,以及显示器1013与显示控制器1009相连。
[0101]应当理解,图10所述的结构框图仅仅为了示例的目的而示出的,而不是对本申请范围的限制。在某些情况下,可以根据具体情况而增加或者减少某些设备。
[0102]特别地,除硬件实施方式之外,本申请的实施方式可以通过计算机程序产品的形式实现。例如,参考图2描述的方法可以通过计算机程序产品来实现。该计算机程序产品可以存储在例如图10所示的RAM1004、R0M1004、硬盘1010和/或任何适当的存储介质中,或者通过网络从适当的位置下载到计算机系统上。计算机程序产品可以包括计算机代码部分,其包括可由适当的处理设备(例如,图10中示出的CPU1001)执行的程序指令。所述程序指令至少可以包括用于实现上文描述的方法的指令。
[0103]本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0104]应当注意,尽管在上文详细描述中提及了设备的若干模块或子模块,但是这种划分仅仅并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
[0105]此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
[0106]以上所述仅为本申请的实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
【权利要求】
1.一种数据监控处理方法,所述方法包括: 接收来自用户端的实时的原始数据; 按照预定规则分发所述原始数据; 对所述分发的数据分别按照统一配置进行对应的在线多维度处理; 保存所述处理的结果。
2.根据权利要求1所述的方法,其中,所述按照预定规则分发所述原始数据的步骤包括按照用户端的ID对所述原始数据进行分发、根据数据中的匹配特征串进行分发、按照数据的属性特征进行分发、以及按照数据的行为特征进行分发中的任意一种分发方式。
3.根据权利要求1所述的方法,其中,所述对所述分发的数据分别按照统一配置进行对应的在线多维度处理的步骤包括: 对所述分发的数据 进行结构化处理,生成结构化数据; 读取配置文件中的多组配置参数以及所述结构化数据,生成对应的多个计算单元;以及 用所述多个计算单元分别基于所述结构化数据进行计算。
4.根据权利要求3所述的方法,其中,所述生成计算单元的步骤包括生成树的处理和生成叶子的处理。
5.根据权利要求4所述的方法,其中,所述生成树的处理包括: 读取步骤,针对所述配置文件中的多组配置参数,依次读取一组配置参数作为当前节占.判断步骤,根据所述配置参数的信息来判断所述当前节点是维度节点还是测度节点;以及 检测步骤,检测所述当前节点包含的子节点,并针对所述子节点依次执行所述读取步骤和判断步骤。
6.根据权利要求5所述的方法,其中,所述判断步骤中还包括: 当判断为当前节点是维度节点时,调用维度节点生成器而生成维度节点;以及当判断为当前节点是测度节点时,获取当前节点的测度类名,并通过反射机制生成测度节点实例。
7.根据权利要求4所述的方法,其中,所述生成叶子的处理包括: 从所述配置文件中获取维度节点所关注的维度信息;以及 使用维度读取器从所述结构化数据中读取与所述维度信息对应的维度值,并根据预定需求将所述维度值划分为不同的维度值区间;以及 分别将所述不同的维度值区间与所述测度节点实例相关联。
8.根据权利要求1所述的方法,还包括: 接收查询请求; 反馈所保存的与所述查询请求对应的处理结果;以及 对多个所述反馈的处理结果进行合并运算,并将合并运算的结果发送到所述用户端。
9.一种数据监控处理设备,包括: 接收模块,被配置成从用户端接收实时的原始数据; 计算模块,被配置成对所述原始数据进行在线多维度处理;以及存储模块,被配置成保存所述处理的结果。
10.根据权利要求9所述的设备,其中,所述计算模块包括: 分发模块,被配置成按照预定规则向所述计算模块所具有的多个计算节点分发所述原始数据;以及 处理模块,被配置成对每个计算节点接收到的所述分发的数据按照统一配置进行对应的在线多维度处理。
11.根据权利要求10所述的设备,其中,所述处理模块包括: 结构化处理模块,被配置成对所述分发的数据进行结构化处理,生成结构化数据; 生成模块,被配置成读取配置文件中的多组配置参数以及所述结构化数据,生成对应的多个计算单元;以及 计算装置,被配置成用所述多个计算单元分别基于所述结构化数据进行计算。
12.根据权利要求11所述的设备,其中,所述生成模块包括: 第一处理装置,被配置成执行生成树的处理;以及 第二处理装置,被配置成执行生成叶子的处理。
13.根据权利要求12所述的设备,其中,所述第一处理装置包括: 读取装置,被配置成针对所述配置文件中的多组配置参数,依次读取一组配置参数作为当前节点; 判断装置,被配置成根据所述配置参数的信息来判断所述当前节点是维度节点还是测度节点;以及 检测装置,被配置成检测所述当前节点包含的子节点,并针对所述子节点依次使用所述读取装置和判断装置执行处理。
14.根据权利要求13所述的设备,其中,所述判断装置在判断为当前节点是维度节点时,调用维度节点生成器而生成维度节点, 所述判断装置在判断为当前节点是测度节点时,获取当前节点的测度类名,并通过反射机制生成测度节点实例。
15.根据权利要求13所述的设备,其中,所述第二处理装置包括: 获取装置,被配置成从所述配置文件中获取维度节点所关注的维度;以及 划分装置,被配置成使用维度读取器从所述结构化数据中读取与所述所关注的维度对应的维度数据,并根据预定需求将所述维度数据分为不同的维度值区间;以及 关联装置,被配置成分别将所述不同的维度值区间与所述测度节点实例相关联。
【文档编号】G06F17/30GK103942197SQ201310017893
【公开日】2014年7月23日 申请日期:2013年1月17日 优先权日:2013年1月17日
【发明者】周躜, 初敏, 赵斌强 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1