数据分析方法、系统及服务器.pdf

上传人:g**** 文档编号:4573869 上传时间:2018-10-21 格式:PDF 页数:25 大小:635.69KB
返回 下载 相关 举报
摘要
申请专利号:

CN201010222602.3

申请日:

2010.07.07

公开号:

CN102314460A

公开日:

2012.01.11

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 17/30申请日:20100707|||公开

IPC分类号:

G06F17/30

主分类号:

G06F17/30

申请人:

阿里巴巴集团控股有限公司

发明人:

岑文初

地址:

英属开曼群岛大开曼岛资本大厦一座四层847号邮箱

优先权:

专利代理机构:

北京集佳知识产权代理有限公司 11227

代理人:

逯长明;王宝筠

PDF下载: PDF下载
内容摘要

本申请实施例公开了一种数据分析方法、系统及服务器。其中,所述方法包括:从服务器接收主服务器发送的文件,其中,所述文件携带待分析的原始数据的数据标识和预置键值对,所述预置键定义了从服务器对待分析的原始数据进行归类的方式;从服务器根据所述数据标识,从数据源中获取待分析的原始数据;从服务器根据所述分割标识将获取的原始数据切割成数据元素;从服务器按照预置键中对数据元素的定义方式,对获取的原始数据进行归类;从服务器按照预置值的定义,对归类后的原始数据进行分析处理,并将分析处理结果反馈给主服务器。根据本申请实施例,可以实现对并行的数据处理架构中的海量数据进行分析。

权利要求书

1: 一种数据分析方法, 其特征在于, 包括 : 从服务器接收主服务器发送的文件, 其中, 所述文件携带待分析的原始数据的数据标 识和预置键值对, 所述预置键定义了从服务器对待分析的原始数据进行归类的方式, 所述 预置值定义了从服务器对归类后的原始数据进行分析处理的方式 ; 从服务器根据所述数据标识, 从数据源中获取待分析的原始数据, 其中, 所述原始数据 中数据元素之间以分割标识进行隔离 ; 从服务器根据所述分割标识将获取的原始数据切割成数据元素 ; 从服务器按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 从服务器按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果 反馈给主服务器。
2: 根据权利要求 1 所述的数据分析方法, 其特征在于, 所述从服务器按照预置键中对 数据元素的定义方式, 对获取的原始数据进行归类之后, 还包括 : 从服务器从归类后的原始数据中筛选出符合第一预置过滤条件的原始数据 ; 则按照预置值的定义, 对归类后的原始数据键进行分析处理为 : 按照预置值的定义, 对 筛选出的原始数据进行分析处理。
3: 根据权利要求 1 所述的数据分析方法, 其特征在于, 所述从服务器按照预置值的定 义, 对归类后的原始数据进行分析处理之后, 还包括 : 从服务器从分析处理得到的分析处理结果中筛选出符合第二预置过滤条件的分析处 理结果 ; 则所述将分析处理结果反馈给主服务器为 : 将筛选出的分析处理结果反馈给主服务 器。
4: 根据权利要求 1-3 中任意一项所述的数据分析方法, 其特征在于, 所述方法还包括 : 当主服务器对接收到的分析处理结果进行合并处理后, 将得到的合并处理结果与同一 时间下的历史合并结果进行对比分析, 根据对比分析的结果产生预警信号。
5: 一种数据分析方法, 其特征在于, 包括 : 多线程中子线程接收主线程发送的文件, 其中, 所述文件携带待分析的原始数据的数 据标识和预置键值对, 所述预置键定义了子线程对待分析的原始数据进行归类的方式, 所 述预置值定义了子线程对归类后的原始数据进行分析处理的方式 ; 子线程根据所述数据标识, 从数据源中获取待分析的原始数据, 其中, 所述原始数据中 数据元素之间以分割标识进行隔离 ; 子线程根据所述分割标识将获取的原始数据切割成数据元素 ; 子线程按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 子线程按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反 馈给主线程。
6: 一种数据分析系统, 其特征在于, 包括 : 一主服务器和至少两个从服务器, 其中, 所述主服务器, 用于向从服务器发送文件, 并对接收到的分析处理结果进行合并, 其 中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了从服务 器对待分析的原始数据进行归类的方式, 所述预置值定义了从服务器对归类后的原始数据 进行分析处理的方式 ; 2 所述从服务器, 用于接收主服务器发送的文件, 根据所述数据标识, 从数据源中获取待 分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离, 根据所述分割 标识将获取的原始数据切割成数据元素, 按照预置键中对数据元素的定义方式, 对获取的 原始数据进行归类, 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理 结果反馈给主服务器。
7: 根据权利要求 6 所述的数据分析系统, 其特征在于, 当所述主服务器对接收到的分 析处理结果进行合并后, 所述主服务器还用于将得到的分析处理结果与同一时间下的历史 合并结果进行对比分析, 根据对比分析的结果产生预警信号。
8: 一种数据分析系统, 其特征在于, 包括 : 一主线程模块和至少两个子线程模块, 其 中, 所述主线程模块, 用于向子线程模块发送文件, 并对接收到的分析处理结果进行合并, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了子线 程模块对待分析的原始数据进行归类的方式, 所述预置值定义了子线程模块对归类后的原 始数据进行分析处理的方式 ; 所述子线程模块, 用于接收主线程模块发送的文件, 根据所述数据标识, 从数据源中获 取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离, 根据所述 分割标识将获取的原始数据切割成数据元素, 按照预置键中对数据元素的定义方式, 对获 取的原始数据进行归类, 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析 处理结果反馈给主线程模块。
9: 一种从服务器, 其特征在于, 包括 : 第一文件接收模块, 用于接收主服务器发送的文件, 其中, 所述文件携带待分析的原始 数据的数据标识和预置键值对, 所述预置键定义了从服务器对待分析的原始数据进行归类 的方式, 所述预置值定义了从服务器对归类后的原始数据进行分析处理的方式 ; 第一数据获取模块, 用于根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 第一数据切割模块, 用于根据所述分割标识将获取的原始数据切割成数据元素 ; 第一数据归类模块, 用于按照预置键中对数据元素的定义方式, 对获取的原始数据进 行归类 ; 第一数据计算模块, 用于按照预置值的定义, 对归类后的原始数据进行分析处理, 并将 分析处理结果反馈给主服务器。
10: 根据权利要求 9 所述的从服务器, 其特征在于, 还包括 : 第一过滤模块, 用于从归类后的原始数据中筛选出符合第一预置过滤条件的原始数 据; 则所述第一数据计算模块按照预置值的定义, 对筛选出的原始数据进行分析处理。
11: 根据权利要求 9 所述的从服务器, 其特征在于, 还包括 : 第二过滤模块, 用于从分析处理得到的分析处理结果中筛选出符合第二预置过滤条件 的分析处理结果 ; 则所述第一数据计算模块将筛选出的分析处理结果反馈给主服务器。
12: 一种服务器, 其特征在于, 包括 : 第二文件接收模块, 用于接收主线程发送的文件, 其中, 所述文件携带待分析的原始数 3 据的数据标识和预置键值对, 所述预置键定义了子线程对待分析的原始数据进行归类的方 式, 所述预置值定义了子线程对归类后的原始数据进行分析处理的方式 ; 第二数据获取模块, 用于根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 第二数据切割模块, 用于根据所述分割标识将获取的原始数据切割成数据元素 ; 第二数据归类模块, 用于按照预置键中对数据元素的定义方式, 对获取的原始数据进 行归类 ; 第二数据计算模块, 用于按照预置值的定义, 对归类后的原始数据进行分析处理, 并将 分析处理结果反馈给主线程。

说明书


数据分析方法、 系统及服务器

    【技术领域】
     本申请涉及通信和计算机技术领域, 特别涉及一种数据分析方法、 系统及服务器。背景技术 随着 web2.0 技术的发展, 互联网应用或者互联网平台中的业务数据, 如用户行为 数据和平台系统数据, 都呈现出海量增长的趋势。 为了便于海量业务数据的处理, 挖掘其内 在价值, 通常采用一种并行的数据处理架构来支撑海量数据的处理工作, 即利用多个分布 式的计算机相互协作工作, 共同完成对海量数据的处理。
     当前, 在大型的互联网网站平台中, 应用最为广泛的一种并行的数据处理架构为 Hadoop 系统框架。在 Hadoop 的系统架构中包括有一个主服务器和多个从服务器组成的集 群, 主服务器将海量数据分割成多个数据块, 再将分割后的数据块分配给多个并行的从服 务器, 由每个从服务器处理各自的数据块, 并将处理的结果发送至主服务器, 主服务器将处 理的结果合并后输出。此外, 当前阶段主服务器输出的合并结果又可以作为下一阶段主服 务器进行数据处理的一个输入, 得到下一阶段的合并结果。这种并行和串行相结合的处理 方式可以使并行的数据处理系统高效地处理海量数据。
     目前, 对于数据的分析方法主要为基于关系型数据库的数据分析方法, 然而, 这种 方法很难基于并行的数据处理架构对关系型数据库的数据进行分析, 特别是在需要进行归 类、 报表生成等复杂的数据分析处理工作时, 难以满足实际需要。因此, 基于关系型数据库 的数据分析方法并不适用于对并行的数据处理架构中的海量数据进行分析。
     发明内容
     为了解决上述技术问题, 本申请实施例提供了一种数据分析方法、 系统及服务器, 以实现对并行的数据处理架构中的海量数据进行分析。
     本申请实施例公开公开了如下技术方案 : 一种数据分析方法, 包括 :
     从服务器接收主服务器发送的文件, 其中, 所述文件携带待分析的原始数据的数 据标识和预置键值对, 所述预置键定义了从服务器对待分析的原始数据进行归类的方式, 所述预置值定义了从服务器对归类后的原始数据进行分析处理的方式 ; 从服务器根据所述 数据标识, 从数据源中获取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割 标识进行隔离 ; 从服务器根据所述分割标识将获取的原始数据切割成数据元素 ; 从服务器 按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 从服务器按照预置值 的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反馈给主服务器。
     本申请还提供另一种数据分析方法, 包括 : 多线程中子线程接收主线程发送的文 件, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了子 线程对待分析的原始数据进行归类的方式, 所述预置值定义了子线程对归类后的原始数据 进行分析处理的方式 ; 子线程根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 子线程根据所述分割标识将获取的原始数据切割成数据元素 ; 子线程按照预置键中对数据元素的定义方式, 对获取的原始 数据进行归类 ; 子线程按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处 理结果反馈给主线程。
     本申请还提供一种数据分析系统, 包括 : 一主服务器和至少两个从服务器, 其中, 所述主服务器, 用于向从服务器发送文件, 并对接收到的分析处理结果进行合并, 其中, 所 述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了从服务器对待 分析的原始数据进行归类的方式, 所述预置值定义了从服务器对归类后的原始数据进行分 析处理的方式 ; 所述从服务器, 用于接收主服务器发送的文件, 根据所述数据标识, 从数据 源中获取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离, 根 据所述分割标识将获取的原始数据切割成数据元素, 按照预置键中对数据元素的定义方 式, 对获取的原始数据进行归类, 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反馈给主服务器。
     本申请还提供另一数据分析系统, 包括 : 一主线程模块和至少两个子线程模块, 其 中, 所述主线程模块, 用于向子线程模块发送文件, 并对接收到的分析处理结果进行合并, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了子线 程模块对待分析的原始数据进行归类的方式, 所述预置值定义了子线程模块对归类后的原 始数据进行分析处理的方式 ; 所述子线程模块, 用于接收主线程模块发送的文件, 根据所述 数据标识, 从数据源中获取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割 标识进行隔离, 根据所述分割标识将获取的原始数据切割成数据元素, 按照预置键中对数 据元素的定义方式, 对获取的原始数据进行归类, 按照预置值的定义, 对归类后的原始数据 进行分析处理, 并将分析处理结果反馈给主线程模块。 本申请还提供一种从服务器, 包括 : 第一文件接收模块, 用于接收主服务器发送的 文件, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了 从服务器对待分析的原始数据进行归类的方式, 所述预置值定义了从服务器对归类后的原 始数据进行分析处理的方式 ; 第一数据获取模块, 用于根据所述数据标识, 从数据源中获取 待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 第一数据切 割模块, 用于根据所述分割标识将获取的原始数据切割成数据元素 ; 第一数据归类模块, 用 于按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 第一数据计算模块, 用于按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反馈给主 服务器。
     本申请还提供另一种服务器, 包括 : 第二文件接收模块, 用于接收主线程发送的文 件, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了子 线程对待分析的原始数据进行归类的方式, 所述预置值定义了子线程对归类后的原始数据 进行分析处理的方式 ; 第二数据获取模块, 用于根据所述数据标识, 从数据源中获取待分析 的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 第二数据切割模 块, 用于根据所述分割标识将获取的原始数据切割成数据元素 ; 第二数据归类模块, 用于按 照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 第二数据计算模块, 用于 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反馈给主线程。
     由上述实施例可以看出, 首先从数据源中获取待分析的原始数据, 然后按照分割
     标识将原始数据切割成数据元素, 并将切割得到的数据元素作为键值对中的键, 再从切割 得到的数据元素中, 提取出符合预置键值对中的键定义的数据元素, 最后按照预置键值对 中的值定义, 对提取出的数据元素进行分析处理, 并将分析处理结果反馈给主服务器, 以便 主服务器对接收到的分析处理结果进行合并。因此, 为并行的数据处理架构中的海量数据 进行分析提供了具体的实现方案。 附图说明
     为了更清楚地说明本申请实施例或现有技术中的技术方案, 下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本 申请的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可 以根据这些附图获得其他的附图。
     图 1 为本申请一种数据分析方法的一个实施例的流程图 ;
     图 2 为本申请一种数据分析方法的另一个实施例的流程图 ;
     图 3 为本申请一种从服务器的一个实施例的结构图 ;
     图 4 为本申请一种从服务器的另一个实施例的结构图 ;
     图 5 为本申请一种从服务器的另一个实施例的结构图 ; 图 6 为本申请一种服务器的一个实施例的结构图 ; 图 7 为本申请一种数据分析系统的一个实施例的结构图 ; 图 8 为本申请一种数据分析系统的另一个实施例的结构图。具体实施方式
     为使本申请的上述目的、 特征和优点能够更加明显易懂, 下面结合附图对本申请 实施例进行详细描述。
     本申请实施例中的数据分析方法可以对任何并行的数据处理架构中的海量数据 进行分析, 例如, Hadoop 系统框架中的海量数据。本申请实施例对并行的数据处理架构并 不进行限定。
     实施例一
     请参阅图 1, 其为本申请一种数据分析方法的一个实施例的流程图, 其应用于包括 一个主服务器和多个从服务器组成的集群系统中, 该方法包括以下步骤 :
     步骤 101 : 从服务器接收主服务器发送的文件, 其中, 所述文件中携带从服务器待 分析的原始数据的数据标识和预置键值对, 所述预置键定义了从服务器对待分析的原始数 据进行归类的方式, 所述预置值定义了从服务器对归类后的原始数据进行分析处理的方 式;
     例如, 在一个并行的数据处理架构中, 主服务器向各个从服务器发送一个文件, 在 文件中携带有数据标识和预置键值对, 其中的预置键值对可以有多个。 其中, 所述数据标识 指示了对应的从服务器需要获取的待分析的原始数据, 例如, 数据的地址信息等可以作为 数据标识, 指示对应的从服务器待分析的原始数据。 所述预置键值对包括预置键和预置值, 预置键定义了从服务器对待分析的原始数据进行归类的方式 ; 预置值定义了从服务器对归 类后的原始数据进行分析处理的方式。 例如, 假设一预置键值对中, 预置键为 : key = “1, 2,3” , 预置值为 : value = max($a$+$b$+$c$)。 则该预置键值对具体定义了从服务器需要对待 分析的原始数据按照第 1 至 3 列数据元素进行归类, 并按照预置值的定义, 对归类后的原始 数据中第 a 列、 第 b 列和第 c 列的数据元素的分析处理方法为求和后再取最大值。
     需要说明的是, 预置值定义的分析处理方法可以包括但不限于 : 统计最小值 (min)、 统计最大值 (max)、 计算平均值 (average)、 计数 (count)、 求和 (sum) 及直接显示 (plain) 等, 直接显示 (plain) 一般用于主键列的显示。当然, 分析处理过程也可以包括其 他的计算方法, 本申请实施例对分析处理的方式并不进行限定。
     步骤 102 : 从服务器根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ;
     例如, 各个从服务器根据自身接收的数据标识, 从数据源处获取数据标识所指示 的待分析的原始数据, 如, 数据源可以是 FTP 服务器、 数据库 (DB) 或文件系统, 具体数据的 格式可以是数据表、 记录、 日志等。 并且, 在本申请的原始数据中, 各个数据元素之间以分割 标识进行隔离。该分割标识可以是逗号、 分号、 空格、 冒号等。本申请实施例中以逗号作为 数据元素之间的分割标识进行举例说明。
     例如, 以下为一段从数据源处获取原始数据, 该原始数据为日志片段。 在这个日志 片段中, 每个数据元素之间以逗号隔离。 并且, 在这个日志片段中, 共有两段记录, 每个记录 以回车换行符作为记录的结束。 0, 203.171.227.117 ,null ,xml , 12005554 ,taobao.user.get , 0, 0, 0, 172.24.14.65, 小郭 cc, 1.0, null, 3, null, 0, 1274803197776, 0, 0, 0, 1, 0, 0, 0, 0, 8, 0, 0, 0, 9
     0, 97.74.215.111, null, xml, 12028711, taobao.taobaoke.items.detail.get, 0, 0, null, 172.24.14.65, null, 2.0, md5, 4, null, 221000, 1274803197765, 0, 2, -1, 1, 0, 0, 0, 0, 23, 0, 0, 0, 26
     步骤 103 : 从服务器根据所述分割标识将获取的原始数据切割成数据元素 ;
     例如, 如果各个数据元素之间以逗号隔离, 则可以按照逗号将第一条记录切割成 以下共 30 个数据元素 : 第一个数据元素为 0, 第二数据元素为 203.171.227.117, 第三个数 据元素为 null, 第四个数据元素为 xml, 第五个数据元素为 12005554, 第六个数据元素为 taobao.user.get, ......, 第 30 个数据元素为 9。
     同样, 可以按照上述方式将第二条记录切割成 30 个数据元素。
     步骤 104 : 从服务器按照预置键中对数据元素的定义方式, 对获取的原始数据进 行归类 ;
     仍以上述第一条记录为例, 如果在预置键值对中定义的预置键为 : key = “1, 2, 3” , 则从切割得到的数据元素中提取出的符合预置键值对中预置对应的数据元素, 即原始 数据中的第 1 至 3 列数据元素 0、 203.171.227.117 和 null。
     例如, 仍旧以预置键为 : key = “1, 2, 3” , 预置值为 : value = max($a$+$b$+$c$) 例 来说明上述预置键值对的作用。如, 对于一个从服务器上的 10 个待分析的原始数据而言, 当通过预置键的归类后, 发现在 10 个待分析的原始数据中, 有 7 个原始数据中的第 1 至 3 列数据元素相同, 另外 3 个原始数据中的第 1 至 3 列的数据元素相同, 则分别对 7 个原始数 据中第 a 列、 第 b 列和第 c 列的数据元素求和, 再取最大值, 并且分别对另外 3 个原始数据 中第 a 列、 第 b 列和第 c 列的数据元素求和, 再取最大值。
     但是, 当记录中的数据元素较多时, 或者数据元素在原始数据中的顺序发生变化 时, 容易发生数据元素操作错误的现象。例如, 当数据元素在原始数据中的顺序发生变化, 相应地, 该数据元素对应的预置键的定义也会发生变化。如, 假设数据元素 0 对应的预置键 的定义为 : key = “1” , 当其在原始数据中的顺序向右移动一位后, 其对应的预置键的定义 变为 key = “2” 。此时, 如果要提取数据元素 0, 必须修改其在预置键值对中的预置键的定 义, 即由 key = 1 修改为 key = 2, 否则就会提取错误的数据元素。为了保证当数据元素移 位时, 不必重新修改其在预置键值对中的预置键的定义, 优选地, 为每个数据元素设定一个 别名, 如下所示, 每个数据元素都对应一个别名。
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

     由上述内容可知, 在一个记录中, 第一个数据元素的别名为″ appStatus″, 第二 个数据元素的别名为″ remoteIp″, ......, 依此类推。此时, 上述预置键值对中定义的 预置键相应地被别名替换为 : key = “appStatus, remoteIp, partnerId” 。可见, 即使第 一个数据元素 0 在记录中向右移动一位后, 其在记录中的顺序发生变化, 但是其别名仍为 “appStatus” , 因此, 不必修改预置键值对中的预置键的定义。
     步骤 105 : 从服务器按照预置值的定义, 对归类后的原始数据进行分析处理, 并将 分析处理结果反馈给主服务器, 主服务器对接收到的分析处理结果进行汇总。并且还可以 进一步执行对应的分析处理工作, 例如采用与从服务器相同的处理方式, 对收到的分析结 果进行分析、 合并等工作。
     例 如, 如果在预置键值对中定义的预置键为 : key = ″ version, apiName, format″, 定义的预置值为 : value =″ average($responseMappingTime$)″, 当从服务器 按照预置键的定义从获取的原始数据中提取出数据元素 version、 apiName 和 format 相同 的原始数据
     ( 记录 ) 后, 即, 对原始数据进行归类后, 按照预置值的定义, 从服务器对提取出的 原始数据中的数据元素 responseMappingTime 进行求平均计算。 以下为一个文件中的预置键值对中对预置键和预置值的定义。
    
    
    
    
    
    
    
    
    

     其中, 在第一条预置键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据 中的数据元素 apiName 进行显示 ;
     在第二条预置键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据中的数据元 素 version 进行显示 ;
     在第三条键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据中的数据元 素 format 进行显示 ;
     在第四条键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据中的数据元 素 responseMappingTime 进行求平均计算 ;
     在第五条键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了对归类后的原始数据中的数据元素 responseMappingTime 求最大值 ;
     在第六条键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据中的数据元 素 timestamp9 进行求平均计算 ;
     在第七条键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器统计 (count) 归类后预置键相同 的的原始数据 ( 记录 ) 的数量。 另外, 上述七条键值对中还指定了预置值结果的显示名称, 如, “服务名称” 、 “版本 号” 、 “返回格式” 、 “Mapping 时间” 、 “Mapping 时间最大” 、 “业务平均消耗时间 (ms)” 和 “处 理总数” 等。
     经过上述数据分析处理后, 下面为数据分析处理结果的一个数据片段。
     11
     版本 号 1 1 1 1 1 1 1 1 json json json 0 0 0 json 0 json 0 0 0 0 0 0 xml 0 0 json 0 0 xml 0 0 格式 时间 时间最大 返回 Mapping Mapping 业务平均消 耗时间 (ms) 88.73333 417.2395 423.9512 128.5 306.25 158.2 13.5 7 处理 总数 15 3561 1210 10 16 5 4 1
     102314460 A CN 102314464服务名称taobao.areas.gettaobao.delivery.send说taobao.delivery.send明上 述 数据 片段中, 第 一行数 据表示, 按照预 置 键对 应的数 据 元素 “version” 、 “apiName”和 “format”进 行 归 类, 即按照 “服 务 名 称” 、 “版 本 号” 、 “返 回 格 式”分 别 为 “taobao.areas.get” 、 “1” 和 “xml” 对数据记录进行归类, 相同的数据记录的处理总数为 15 条, 其 Mapping 时间和 Mapping 时间最大均为 0, 15 条记录统计的业务平均消耗时间为 88.73333ms。12taobao.fenxiao.alipay.user.get书taobao.fenxiao.delivery.sendtaobao.fenxiao.distributor.addtaobao.fenxiao.supplier.punishtaobao.fenxiao.supplier.update8/14 页102314460 A CN 102314464
     说明书9/14 页从上述实例中可以看出, 本申请实施例通过文件中的预置键值对中对预置键和预 置值的定义, 可实现数据的归类、 统计分析、 报表生成 ( 例如可根据设定的预置键值对的顺 序生成报表 ) 等复杂功能, 例如适合于各种不同类型数据的海量分析、 处理, 为并行的数据 处理架构中的海量数据的分析、 处理以及报表的生成提供了一种方便、 灵活、 直观、 具体的 实现方案。
     当各个从服务器对原始数据进行分析处理后, 将各自的分析处理结果反馈给主服 务器, 由主服务器对接收到的分析处理结果进行合并。 其中, 主服务器也可按照预置键值对 中预置键的定义对从多个从服务器处得到分析处理结果进行归类, 并按照预置键值对中预 置值的定义对归类的分析处理结果进行合并处理。 例如, 在主服务器中, 预置键定义了主服 务器对分析处理结果进行归类的方式, 预置值定义主服务器对归类后的分析处理结果进行 合并处理的方法。例如, 假设主服务器接收到了来自 5 个从服务器上报的分析处理结果共 10 个, 按照预置键的定义, 其中的 7 个分析处理结果可以进行归类, 另外的 3 个分析处理结 果可以进行归类, 则主服务器分别可以对归类后的 7 个分析处理结果按照预置值的定义进 行合并处理, 以及, 对归类后的另外 3 个分析处理结果按照预置值的定义进行合并处理。由 于前面已经详细说明了预置键的归类方法和预置值的处理方法, 故此处不再赘述。
     需要说明的是, 上述实施例一除了应用于由一个主服务器和多个从服务器所组成 的集群系统中外, 还可以应用于由一个主线程和多个子线程所组成的一个数据分析服务器 中。此时, 主线程用于实现主服务器的功能, 子线程用于实现从服务器的功能。
     由上述实施例可以看出, 首先从数据源中获取待分析的原始数据, 然后按照分割 标识将原始数据切割成数据元素, 并将切割得到的数据元素作为键值对中的键, 再从切割 得到的数据元素中, 提取出符合预置键值对中的键定义的数据元素, 最后按照预置键值对 中的值定义, 对提取出的数据元素进行分析处理, 并将分析处理结果反馈给主服务器, 以便 主服务器对接收到的分析处理结果进行合并。因此, 为并行的数据处理架构中的海量数据 进行分析提供了具体的实现方案。
     实施例二
     当从服务器按照预置键中对数据元素的定义方式对获取的原始数据进行归类之 后, 根据用户的实际使用需求, 还可对归类后的原始数据进行进一步的过滤, 以过滤掉用户 不需要的一部分原始数据, 保留用户需要的原始数据。因此, 本实施例与实施例一的区别 在于 : 为了筛除掉归类后的原始数据中不需要处理的原始数据, 在执行完步骤 104 后, 还包 括: 从归类后的原始数据中筛选出符合第一预置过滤条件的原始数据。请参阅图 2, 其为本 申请一种数据分析方法的另一个实施例的流程图, 该方法包括以下步骤 :
     步骤 201 : 从服务器接收主服务器发送的文件, 其中, 所述文件中包括待分析的原 始数据的数据标识和预置键值对, 所述预置键定义了从服务器对待分析的原始数据进行归 类的方式, 所述预置值定义了从服务器对归类后的原始数据进行分析处理的方式 ;
     步骤 202 : 从服务器根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ;
     步骤 203 : 从服务器根据所述分割标识将获取的原始数据切割成数据元素 ;
     步骤 204 : 从服务器按照预置键中对数据元素的定义方式对获取的原始数据进行 归类 ;需要说明的是, 上述步骤 201 至步骤 204 的执行过程可以参见实施例一中步骤 101 至步骤 104, 此处不再赘述。
     步骤 205 : 从服务器从归类后的原始数据中筛选出符合第一预置过滤条件的原始 数据 ;
     例如, 当从服务器初始时从数据源处获取的 10 个原始数据, 并经过预置值的归类 后, 将其中的 7 个原始数据进行了归类, 将另外的 3 个原始数据进行了归类。而根据用户的 实际使用需求, 7 个归类后的原始数据经过第一预置过滤条件的过滤后, 从中筛选出 5 个符 合第一预置过滤条件的原始数据, 从服务器将按照预置值的定义对这 5 个筛选出的原始数 据进行分析处理。
     其中, 第一预置过滤条件包括大于、 小于、 不等于、 大于或者等于和小于或者等于 等条件表达式。 当然, 第一预置过滤条件为用户根据实际使用需求而设置的条件, 本申请实 施例对其不进行限定。
     步骤 206 : 从服务器按照预置键值对中预置值的定义, 对筛选出的原始数据进行 分析处理, 并将分析处理结果反馈给主服务器。
     另外, 当按照预置键值对中的预置值定义, 对筛选出的原始数据进行分析处理之 后, 根据用户的实际使用需求, 有些分析处理结果是不符合使用条件的分析处理结果。 优选 地, 为了筛除掉不符合使用条件的分析处理结果, 在按照预置键值对中的预置值的定义, 对 筛选出的数据元素进行分析处理之后, 且将分析处理结果反馈给主服务器之前, 还包括 : 从 分析处理得到的分析处理结果中筛选出符合第二预置过滤条件的分析处理结果。
     其中, 第二预置过滤条件为用于根据实际使用需求而设置的条件, 支持大于、 小 于、 不等于、 大于或者等于、 小于或者等于和是否是数字等表达式。
     另外, 对于一个报表数据的分析来说, 除了对数据本身作分析以外, 还可能需要能 够对数据与其他数据作对比分析, 产生一些预警, 避免出现的问题或者关注的内容被埋没 在海量的数据之中。 优选地, 本申请实施例中, 当主服务器对接收到的分析处理结果进行合 并处理后, 将得到的合并处理结果与同一时间下的历史合并结果进行对比分析, 根据对比 分析的结果产生预警信号。 例如, 用户可以根据各自的使用需求设定各种预警条件, 当主服 务器对接收到的分析处理结果进行合并处理后, 将合并处理结果与同一时间下的历史合并 结果进行对比分析, 判断对比分析的结果是否满足预警条件, 如果是, 生产预警信号。 其中,
     具体地, 可以包括四种对比分析方式 :
     将今天 (day) 合并处理后的数据与昨天合并处理后的数据进行对比。例如, 将今 天合并处理后的数据与昨天合并处理后的数据进行比对, 预警条件是前者小于后者时, 产 生预警信号。
     预警条件为将将今天的数据和上周 (week) 同一时间的数据进行对比。
     预警条件为将将今天的数据与上月 (month) 的同一时间数据进行对比分析。
     将今天合并处理后的数据与定义的时间同期合并处理后的数据进行对比。
     当然, 根据具体的应用需求, 还可以包括其他的对比分析方式, 本申请对对比分析 方式及预警条件的设立并不进行限定。
     需要说明的是, 上述实施例二除了应用于由一个主服务器和多个从服务器所组成 的集群系统中外, 同样可以应用于由一个主线程和多个子线程所组成的一个数据分析服务器中。此时, 主线程用于实现主服务器的功能, 子线程用于实现从服务器的功能。其中, 优 选地, 子线程按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类之后, 还包 括: 子线程从归类后的原始数据中筛选出符合第一预置过滤条件的原始数据 ; 则按照预置 值的定义, 对归类后的原始数据键进行分析处理为 : 按照预置值的定义, 对筛选出的原始数 据进行分析处理。
     优选的, 子线程按照预置值的定义, 对归类后的原始数据进行分析处理之后, 还包 括: 子线程从分析处理得到的分析处理结果中筛选出符合第二预置过滤条件的分析处理结 果; 则所述将分析处理结果反馈给主线程为 : 将筛选出的分析处理结果反馈给主线程。
     优选的, 当主线程对接收到的分析处理结果进行合并处理后, 将得到的合并处理 结果与同一时间下的历史合并结果进行对比分析, 根据对比分析的结果产生预警信号。
     由上述实施例可以看出, 首先从数据源中获取待分析的原始数据, 然后按照分割 标识将原始数据切割成数据元素, 并将切割得到的数据元素作为键值对中的键, 再从切割 得到的数据元素中, 提取出符合预置键值对中的键定义的数据元素, 最后按照预置键值对 中的值定义, 对提取出的数据元素进行分析处理, 并将分析处理结果反馈给主服务器, 以便 主服务器对接收到的分析处理结果进行合并。因此, 为并行的数据处理架构中的海量数据 进行分析提供了具体的实现方案。 并且通过过滤条件可以过滤掉原始数据中不符合条件的 数据, 使分析处理后的数据更加准确有效。 此外还通过设定的预警条件, 避免出现的问题或 者关注的内容被埋没在海量的数据之中。 实施例三
     与上述一种数据分析方法相对应, 本申请实施例还提供了一种数据分析装置。请 参阅图 3, 其为本申请一种从服务器的一个实施例的结构图, 该从服务器包括第一文件接收 模块 301、 第一数据获取模块 302、 第一数据切割模块 303、 第一数据归类模块 304 和第一数 据计算模块 305。下面结合该装置的工作原理进一步介绍其内部结构以及连接关系。
     第一文件接收模块 301, 用于接收主服务器发送的文件, 其中, 所述文件携带待分 析的原始数据的数据标识和预置键值对, 所述预置键定义了从服务器对待分析的原始数据 进行归类的方式, 所述预置值定义了从服务器对归类后的原始数据进行分析处理的方式 ;
     第一数据获取模块 302, 用于根据所述数据标识, 从数据源中获取待分析的原始数 据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离 ;
     第一数据切割模块 303, 用于根据所述分割标识将获取的原始数据切割成数据元 素;
     第一数据归类模块 304, 用于按照预置键中对数据元素的定义方式, 对获取的原始 数据进行归类 ;
     第一数据计算模块 305, 用于按照预置值的定义, 对归类后的原始数据进行分析处 理, 并将分析处理结果反馈给主服务器。
     优选的, 请参阅图 4, 其为本申请一种从服务器的另一个实施例的结构图, 所述从 服务器还包括第一过滤模块 306, 用于从归类后的原始数据中筛选出符合第一预置过滤条 件的原始数据 ; 则第一数据计算模块 305 按照预置值的定义, 对筛选出的原始数据进行分 析处理。
     优选的, 请参阅图 5, 其为本申请一种从服务器的另一个实施例的结构图, 所述从
     服务器还包括 : 第二过滤模块 307, 用于从分析处理得到的分析处理结果中筛选出符合第 二预置过滤条件的分析处理结果 ; 则第一数据计算模块 305 将筛选出的分析处理结果反馈 给主服务器。
     由上述实施例可以看出, 首先从数据源中获取待分析的原始数据, 然后按照分割 标识将原始数据切割成数据元素, 并将切割得到的数据元素作为键值对中的键, 再从切割 得到的数据元素中, 提取出符合预置键值对中的键定义的数据元素, 最后按照预置键值对 中的值定义, 对提取出的数据元素进行计算, 并将计算结果反馈给主服务器, 以便主服务器 对接收到的计算结果进行合并。因此, 为并行的数据处理架构中的海量数据进行分析提供 了具体的实现方案。
     实施例四
     与上述一种数据分析方法相对应, 本申请实施例还提供了一种数据分析装置。请 参阅图 6, 其为本申请一种服务器的一个实施例的结构示意图。所述服务器包括 : 第二文件 接收模块 601、 第一数据获取模块 602、 第一数据切割模块 603、 第一数据归类模块 604 和第 一数据计算模块 605。下面结合该装置的工作原理进一步介绍其内部结构以及连接关系。
     第二文件接收模块 601, 用于接收主线程发送的文件, 其中, 所述文件携带待分析 的原始数据的数据标识和预置键值对, 所述预置键定义了子线程对待分析的原始数据进行 归类的方式, 所述预置值定义了子线程对归类后的原始数据进行分析处理的方式 ; 第二数据获取模块 602, 用于根据所述数据标识, 从数据源中获取待分析的原始数 据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离 ;
     第二数据切割模块 603, 用于根据所述分割标识将获取的原始数据切割成数据元 素;
     第二数据归类模块 604, 用于按照预置键中对数据元素的定义方式, 对获取的原始 数据进行归类 ;
     第二数据计算模块 605, 用于按照预置值的定义, 对归类后的原始数据进行分析处 理, 并将分析处理结果反馈给主线程。
     优选的, 子线程按照预置键中对数据元素的定义方式, 对获取的原始数据进行归 类之后, 所述服务器还包括 : 第三过滤模块, 用于从归类后的原始数据中筛选出符合第一预 置过滤条件的原始数据 ; 则第二数据计算模块 605 按照预置值的定义, 对归类后的原始数 据键进行分析处理为 : 按照预置值的定义, 对筛选出的原始数据进行分析处理。
     优选的, 子线程按照预置值的定义, 对归类后的原始数据进行分析处理之后, 所述 服务器还包括 : 第四过滤模块, 用于从分析处理得到的分析处理结果中筛选出符合第二预 置过滤条件的分析处理结果 ; 则第二数据计算模块 605 将分析处理结果反馈给主线程为 : 将筛选出的分析处理结果反馈给主线程。
     由上述实施例可以看出, 首先从数据源中获取待分析的原始数据, 然后按照分割 标识将原始数据切割成数据元素, 并将切割得到的数据元素作为键值对中的键, 再从切割 得到的数据元素中, 提取出符合预置键值对中的键定义的数据元素, 最后按照预置键值对 中的值定义, 对提取出的数据元素进行计算, 并将计算结果反馈给主服务器, 以便主服务器 对接收到的计算结果进行合并。因此, 为并行的数据处理架构中的海量数据进行分析提供 了具体的实现方案。
     实施例五
     本申请还提供了一种数据分析系统, 请参阅图 7, 其为本申请一种数据分析系统的 一个实施例的结构图。所述系统包括 : 一主服务器 701 和至少两个从服务器 702, 其中,
     主服务器 701, 用于向从服务器 702 发送文件, 并对接收到的分析处理结果进行合 并, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了从 服务器 702 对待分析的原始数据进行归类的方式, 所述预置值定义了从服务器 702 对归类 后的原始数据进行分析处理的方式 ;
     从服务器 702, 用于接收主服务器 701 发送的文件, 根据所述数据标识, 从数据源 中获取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离, 根据 所述分割标识将获取的原始数据切割成数据元素, 按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类, 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将 分析处理结果反馈给主服务器 701。
     优选的, 当主服务器 701 对接收到的分析处理结果进行合并后, 主服务器 701 还用 于将得到的分析处理结果与同一时间下的历史合并结果进行对比分析, 并根据对比分析的 结果产生预警信号。
     由上述实施例可以看出, 首先从数据源中获取待分析的原始数据, 然后按照分割 标识将原始数据切割成数据元素, 并将切割得到的数据元素作为键值对中的键, 再从切割 得到的数据元素中, 提取出符合预置键值对中的键定义的数据元素, 最后按照预置键值对 中的值定义, 对提取出的数据元素进行计算, 并将计算结果反馈给主服务器, 以便主服务器 对接收到的计算结果进行合并。因此, 为并行的数据处理架构中的海量数据进行分析提供 了具体的实现方案。
     实施例六
     本申请还提供了一种数据分析系统, 请参阅图 8, 其为本申请一种数据分析系统的 另一个实施例的结构图。所述数据分析系统包括 : 一主线程模块 801 和至少两个子线程模 块 802, 其中,
     主线程模块 801, 用于向子线程模块 802 发送文件, 并对接收到的分析处理结果 进行合并, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定 义了子线程模块 802 对待分析的原始数据进行归类的方式, 所述预置值定义了子线程模块 802 对归类后的原始数据进行分析处理的方式 ;
     子线程模块 802, 用于接收主线程模块 801 发送的文件, 根据所述数据标识, 从数 据源中获取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离, 根据所述分割标识将获取的原始数据切割成数据元素, 按照预置键中对数据元素的定义方 式, 对获取的原始数据进行归类, 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反馈给主线程模块 801。
     由上述实施例可以看出, 首先从数据源中获取待分析的原始数据, 然后按照分割 标识将原始数据切割成数据元素, 并将切割得到的数据元素作为键值对中的键, 再从切割 得到的数据元素中, 提取出符合预置键值对中的键定义的数据元素, 最后按照预置键值对 中的值定义, 对提取出的数据元素进行计算, 并将计算结果反馈给主服务器, 以便主服务器 对接收到的计算结果进行合并。因此, 为并行的数据处理架构中的海量数据进行分析提供了具体的实现方案。
     需要说明的是, 本领域普通技术人员可以理解实现上述实施例方法中的全部或部 分流程, 是可以通过计算机程序来指令相关的硬件来完成, 所述的程序可存储于一计算机 可读取存储介质中, 该程序在执行时, 可包括如上述各方法的实施例的流程。其中, 所述的 存储介质可为磁碟、 光盘、 只读存储记忆体 (Read-Only Memory, ROM) 或随机存储记忆体 (Random Access Memory, RAM) 等。
     以上对本申请所提供的一种数据分析方法、 系统及服务器进行了详细介绍, 本文 中应用了具体实施例对本申请的原理及实施方式进行了阐述, 以上实施例的说明只是用于 帮助理解本申请的方法及其核心思想 ; 同时, 对于本领域的一般技术人员, 依据本申请的思 想, 在具体实施方式及应用范围上均会有改变之处, 综上所述, 本说明书内容不应理解为对 本申请的限制。

数据分析方法、系统及服务器.pdf_第1页
第1页 / 共25页
数据分析方法、系统及服务器.pdf_第2页
第2页 / 共25页
数据分析方法、系统及服务器.pdf_第3页
第3页 / 共25页
点击查看更多>>
资源描述

《数据分析方法、系统及服务器.pdf》由会员分享,可在线阅读,更多相关《数据分析方法、系统及服务器.pdf(25页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102314460 A (43)申请公布日 2012.01.11 CN 102314460 A *CN102314460A* (21)申请号 201010222602.3 (22)申请日 2010.07.07 G06F 17/30(2006.01) (71)申请人 阿里巴巴集团控股有限公司 地址 英属开曼群岛大开曼岛资本大厦一座 四层 847 号邮箱 (72)发明人 岑文初 (74)专利代理机构 北京集佳知识产权代理有限 公司 11227 代理人 逯长明 王宝筠 (54) 发明名称 数据分析方法、 系统及服务器 (57) 摘要 本申请实施例公开了一种数据分析方法、 系。

2、 统及服务器。其中, 所述方法包括 : 从服务器接收 主服务器发送的文件, 其中, 所述文件携带待分析 的原始数据的数据标识和预置键值对, 所述预置 键定义了从服务器对待分析的原始数据进行归类 的方式 ; 从服务器根据所述数据标识, 从数据源 中获取待分析的原始数据 ; 从服务器根据所述分 割标识将获取的原始数据切割成数据元素 ; 从服 务器按照预置键中对数据元素的定义方式, 对获 取的原始数据进行归类 ; 从服务器按照预置值的 定义, 对归类后的原始数据进行分析处理, 并将分 析处理结果反馈给主服务器。 根据本申请实施例, 可以实现对并行的数据处理架构中的海量数据进 行分析。 (51)Int。

3、.Cl. (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 3 页 说明书 14 页 附图 7 页 CN 102314464 A1/3 页 2 1. 一种数据分析方法, 其特征在于, 包括 : 从服务器接收主服务器发送的文件, 其中, 所述文件携带待分析的原始数据的数据标 识和预置键值对, 所述预置键定义了从服务器对待分析的原始数据进行归类的方式, 所述 预置值定义了从服务器对归类后的原始数据进行分析处理的方式 ; 从服务器根据所述数据标识, 从数据源中获取待分析的原始数据, 其中, 所述原始数据 中数据元素之间以分割标识进行隔离 ; 从服务器根据所述分割标识将获取的原始。

4、数据切割成数据元素 ; 从服务器按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 从服务器按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果 反馈给主服务器。 2. 根据权利要求 1 所述的数据分析方法, 其特征在于, 所述从服务器按照预置键中对 数据元素的定义方式, 对获取的原始数据进行归类之后, 还包括 : 从服务器从归类后的原始数据中筛选出符合第一预置过滤条件的原始数据 ; 则按照预置值的定义, 对归类后的原始数据键进行分析处理为 : 按照预置值的定义, 对 筛选出的原始数据进行分析处理。 3. 根据权利要求 1 所述的数据分析方法, 其特征在于, 所。

5、述从服务器按照预置值的定 义, 对归类后的原始数据进行分析处理之后, 还包括 : 从服务器从分析处理得到的分析处理结果中筛选出符合第二预置过滤条件的分析处 理结果 ; 则所述将分析处理结果反馈给主服务器为 : 将筛选出的分析处理结果反馈给主服务 器。 4. 根据权利要求 1-3 中任意一项所述的数据分析方法, 其特征在于, 所述方法还包括 : 当主服务器对接收到的分析处理结果进行合并处理后, 将得到的合并处理结果与同一 时间下的历史合并结果进行对比分析, 根据对比分析的结果产生预警信号。 5. 一种数据分析方法, 其特征在于, 包括 : 多线程中子线程接收主线程发送的文件, 其中, 所述文件携。

6、带待分析的原始数据的数 据标识和预置键值对, 所述预置键定义了子线程对待分析的原始数据进行归类的方式, 所 述预置值定义了子线程对归类后的原始数据进行分析处理的方式 ; 子线程根据所述数据标识, 从数据源中获取待分析的原始数据, 其中, 所述原始数据中 数据元素之间以分割标识进行隔离 ; 子线程根据所述分割标识将获取的原始数据切割成数据元素 ; 子线程按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 子线程按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反 馈给主线程。 6. 一种数据分析系统, 其特征在于, 包括 : 一主服务器和至少两个从服务器, 其中。

7、, 所述主服务器, 用于向从服务器发送文件, 并对接收到的分析处理结果进行合并, 其 中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了从服务 器对待分析的原始数据进行归类的方式, 所述预置值定义了从服务器对归类后的原始数据 进行分析处理的方式 ; 权 利 要 求 书 CN 102314460 A CN 102314464 A2/3 页 3 所述从服务器, 用于接收主服务器发送的文件, 根据所述数据标识, 从数据源中获取待 分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离, 根据所述分割 标识将获取的原始数据切割成数据元素, 按照预置键中对数据元。

8、素的定义方式, 对获取的 原始数据进行归类, 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理 结果反馈给主服务器。 7. 根据权利要求 6 所述的数据分析系统, 其特征在于, 当所述主服务器对接收到的分 析处理结果进行合并后, 所述主服务器还用于将得到的分析处理结果与同一时间下的历史 合并结果进行对比分析, 根据对比分析的结果产生预警信号。 8. 一种数据分析系统, 其特征在于, 包括 : 一主线程模块和至少两个子线程模块, 其 中, 所述主线程模块, 用于向子线程模块发送文件, 并对接收到的分析处理结果进行合并, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对。

9、, 所述预置键定义了子线 程模块对待分析的原始数据进行归类的方式, 所述预置值定义了子线程模块对归类后的原 始数据进行分析处理的方式 ; 所述子线程模块, 用于接收主线程模块发送的文件, 根据所述数据标识, 从数据源中获 取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离, 根据所述 分割标识将获取的原始数据切割成数据元素, 按照预置键中对数据元素的定义方式, 对获 取的原始数据进行归类, 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析 处理结果反馈给主线程模块。 9. 一种从服务器, 其特征在于, 包括 : 第一文件接收模块, 用于接收主服务器发送的文。

10、件, 其中, 所述文件携带待分析的原始 数据的数据标识和预置键值对, 所述预置键定义了从服务器对待分析的原始数据进行归类 的方式, 所述预置值定义了从服务器对归类后的原始数据进行分析处理的方式 ; 第一数据获取模块, 用于根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 第一数据切割模块, 用于根据所述分割标识将获取的原始数据切割成数据元素 ; 第一数据归类模块, 用于按照预置键中对数据元素的定义方式, 对获取的原始数据进 行归类 ; 第一数据计算模块, 用于按照预置值的定义, 对归类后的原始数据进行分析处理, 并将 分析处理结果。

11、反馈给主服务器。 10. 根据权利要求 9 所述的从服务器, 其特征在于, 还包括 : 第一过滤模块, 用于从归类后的原始数据中筛选出符合第一预置过滤条件的原始数 据 ; 则所述第一数据计算模块按照预置值的定义, 对筛选出的原始数据进行分析处理。 11. 根据权利要求 9 所述的从服务器, 其特征在于, 还包括 : 第二过滤模块, 用于从分析处理得到的分析处理结果中筛选出符合第二预置过滤条件 的分析处理结果 ; 则所述第一数据计算模块将筛选出的分析处理结果反馈给主服务器。 12. 一种服务器, 其特征在于, 包括 : 第二文件接收模块, 用于接收主线程发送的文件, 其中, 所述文件携带待分析的。

12、原始数 权 利 要 求 书 CN 102314460 A CN 102314464 A3/3 页 4 据的数据标识和预置键值对, 所述预置键定义了子线程对待分析的原始数据进行归类的方 式, 所述预置值定义了子线程对归类后的原始数据进行分析处理的方式 ; 第二数据获取模块, 用于根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 第二数据切割模块, 用于根据所述分割标识将获取的原始数据切割成数据元素 ; 第二数据归类模块, 用于按照预置键中对数据元素的定义方式, 对获取的原始数据进 行归类 ; 第二数据计算模块, 用于按照预置值的定义。

13、, 对归类后的原始数据进行分析处理, 并将 分析处理结果反馈给主线程。 权 利 要 求 书 CN 102314460 A CN 102314464 A1/14 页 5 数据分析方法、 系统及服务器 技术领域 0001 本申请涉及通信和计算机技术领域, 特别涉及一种数据分析方法、 系统及服务器。 背景技术 0002 随着 web2.0 技术的发展, 互联网应用或者互联网平台中的业务数据, 如用户行为 数据和平台系统数据, 都呈现出海量增长的趋势。 为了便于海量业务数据的处理, 挖掘其内 在价值, 通常采用一种并行的数据处理架构来支撑海量数据的处理工作, 即利用多个分布 式的计算机相互协作工作, 。

14、共同完成对海量数据的处理。 0003 当前, 在大型的互联网网站平台中, 应用最为广泛的一种并行的数据处理架构为 Hadoop 系统框架。在 Hadoop 的系统架构中包括有一个主服务器和多个从服务器组成的集 群, 主服务器将海量数据分割成多个数据块, 再将分割后的数据块分配给多个并行的从服 务器, 由每个从服务器处理各自的数据块, 并将处理的结果发送至主服务器, 主服务器将处 理的结果合并后输出。此外, 当前阶段主服务器输出的合并结果又可以作为下一阶段主服 务器进行数据处理的一个输入, 得到下一阶段的合并结果。这种并行和串行相结合的处理 方式可以使并行的数据处理系统高效地处理海量数据。 00。

15、04 目前, 对于数据的分析方法主要为基于关系型数据库的数据分析方法, 然而, 这种 方法很难基于并行的数据处理架构对关系型数据库的数据进行分析, 特别是在需要进行归 类、 报表生成等复杂的数据分析处理工作时, 难以满足实际需要。因此, 基于关系型数据库 的数据分析方法并不适用于对并行的数据处理架构中的海量数据进行分析。 发明内容 0005 为了解决上述技术问题, 本申请实施例提供了一种数据分析方法、 系统及服务器, 以实现对并行的数据处理架构中的海量数据进行分析。 0006 本申请实施例公开公开了如下技术方案 : 一种数据分析方法, 包括 : 0007 从服务器接收主服务器发送的文件, 其中。

16、, 所述文件携带待分析的原始数据的数 据标识和预置键值对, 所述预置键定义了从服务器对待分析的原始数据进行归类的方式, 所述预置值定义了从服务器对归类后的原始数据进行分析处理的方式 ; 从服务器根据所述 数据标识, 从数据源中获取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割 标识进行隔离 ; 从服务器根据所述分割标识将获取的原始数据切割成数据元素 ; 从服务器 按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 从服务器按照预置值 的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反馈给主服务器。 0008 本申请还提供另一种数据分析方法, 包括 : 多。

17、线程中子线程接收主线程发送的文 件, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了子 线程对待分析的原始数据进行归类的方式, 所述预置值定义了子线程对归类后的原始数据 进行分析处理的方式 ; 子线程根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 子线程根据所述分割标识将获取 说 明 书 CN 102314460 A CN 102314464 A2/14 页 6 的原始数据切割成数据元素 ; 子线程按照预置键中对数据元素的定义方式, 对获取的原始 数据进行归类 ; 子线程按照预置值的定义, 对归类。

18、后的原始数据进行分析处理, 并将分析处 理结果反馈给主线程。 0009 本申请还提供一种数据分析系统, 包括 : 一主服务器和至少两个从服务器, 其中, 所述主服务器, 用于向从服务器发送文件, 并对接收到的分析处理结果进行合并, 其中, 所 述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了从服务器对待 分析的原始数据进行归类的方式, 所述预置值定义了从服务器对归类后的原始数据进行分 析处理的方式 ; 所述从服务器, 用于接收主服务器发送的文件, 根据所述数据标识, 从数据 源中获取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离, 根 据所述分割标。

19、识将获取的原始数据切割成数据元素, 按照预置键中对数据元素的定义方 式, 对获取的原始数据进行归类, 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反馈给主服务器。 0010 本申请还提供另一数据分析系统, 包括 : 一主线程模块和至少两个子线程模块, 其 中, 所述主线程模块, 用于向子线程模块发送文件, 并对接收到的分析处理结果进行合并, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了子线 程模块对待分析的原始数据进行归类的方式, 所述预置值定义了子线程模块对归类后的原 始数据进行分析处理的方式 ; 所述子线程模块, 用于接收主线程模。

20、块发送的文件, 根据所述 数据标识, 从数据源中获取待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割 标识进行隔离, 根据所述分割标识将获取的原始数据切割成数据元素, 按照预置键中对数 据元素的定义方式, 对获取的原始数据进行归类, 按照预置值的定义, 对归类后的原始数据 进行分析处理, 并将分析处理结果反馈给主线程模块。 0011 本申请还提供一种从服务器, 包括 : 第一文件接收模块, 用于接收主服务器发送的 文件, 其中, 所述文件携带待分析的原始数据的数据标识和预置键值对, 所述预置键定义了 从服务器对待分析的原始数据进行归类的方式, 所述预置值定义了从服务器对归类后的原 。

21、始数据进行分析处理的方式 ; 第一数据获取模块, 用于根据所述数据标识, 从数据源中获取 待分析的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 第一数据切 割模块, 用于根据所述分割标识将获取的原始数据切割成数据元素 ; 第一数据归类模块, 用 于按照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 第一数据计算模块, 用于按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反馈给主 服务器。 0012 本申请还提供另一种服务器, 包括 : 第二文件接收模块, 用于接收主线程发送的文 件, 其中, 所述文件携带待分析的原始数据的数据标识和预。

22、置键值对, 所述预置键定义了子 线程对待分析的原始数据进行归类的方式, 所述预置值定义了子线程对归类后的原始数据 进行分析处理的方式 ; 第二数据获取模块, 用于根据所述数据标识, 从数据源中获取待分析 的原始数据, 其中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 第二数据切割模 块, 用于根据所述分割标识将获取的原始数据切割成数据元素 ; 第二数据归类模块, 用于按 照预置键中对数据元素的定义方式, 对获取的原始数据进行归类 ; 第二数据计算模块, 用于 按照预置值的定义, 对归类后的原始数据进行分析处理, 并将分析处理结果反馈给主线程。 0013 由上述实施例可以看出, 首先从数。

23、据源中获取待分析的原始数据, 然后按照分割 说 明 书 CN 102314460 A CN 102314464 A3/14 页 7 标识将原始数据切割成数据元素, 并将切割得到的数据元素作为键值对中的键, 再从切割 得到的数据元素中, 提取出符合预置键值对中的键定义的数据元素, 最后按照预置键值对 中的值定义, 对提取出的数据元素进行分析处理, 并将分析处理结果反馈给主服务器, 以便 主服务器对接收到的分析处理结果进行合并。因此, 为并行的数据处理架构中的海量数据 进行分析提供了具体的实现方案。 附图说明 0014 为了更清楚地说明本申请实施例或现有技术中的技术方案, 下面将对实施例或现 有技。

24、术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本 申请的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可 以根据这些附图获得其他的附图。 0015 图 1 为本申请一种数据分析方法的一个实施例的流程图 ; 0016 图 2 为本申请一种数据分析方法的另一个实施例的流程图 ; 0017 图 3 为本申请一种从服务器的一个实施例的结构图 ; 0018 图 4 为本申请一种从服务器的另一个实施例的结构图 ; 0019 图 5 为本申请一种从服务器的另一个实施例的结构图 ; 0020 图 6 为本申请一种服务器的一个实施例的结构图 ; 00。

25、21 图 7 为本申请一种数据分析系统的一个实施例的结构图 ; 0022 图 8 为本申请一种数据分析系统的另一个实施例的结构图。 具体实施方式 0023 为使本申请的上述目的、 特征和优点能够更加明显易懂, 下面结合附图对本申请 实施例进行详细描述。 0024 本申请实施例中的数据分析方法可以对任何并行的数据处理架构中的海量数据 进行分析, 例如, Hadoop 系统框架中的海量数据。本申请实施例对并行的数据处理架构并 不进行限定。 0025 实施例一 0026 请参阅图 1, 其为本申请一种数据分析方法的一个实施例的流程图, 其应用于包括 一个主服务器和多个从服务器组成的集群系统中, 该方。

26、法包括以下步骤 : 0027 步骤 101 : 从服务器接收主服务器发送的文件, 其中, 所述文件中携带从服务器待 分析的原始数据的数据标识和预置键值对, 所述预置键定义了从服务器对待分析的原始数 据进行归类的方式, 所述预置值定义了从服务器对归类后的原始数据进行分析处理的方 式 ; 0028 例如, 在一个并行的数据处理架构中, 主服务器向各个从服务器发送一个文件, 在 文件中携带有数据标识和预置键值对, 其中的预置键值对可以有多个。 其中, 所述数据标识 指示了对应的从服务器需要获取的待分析的原始数据, 例如, 数据的地址信息等可以作为 数据标识, 指示对应的从服务器待分析的原始数据。 所。

27、述预置键值对包括预置键和预置值, 预置键定义了从服务器对待分析的原始数据进行归类的方式 ; 预置值定义了从服务器对归 类后的原始数据进行分析处理的方式。 例如, 假设一预置键值对中, 预置键为 : key “1, 2, 说 明 书 CN 102314460 A CN 102314464 A4/14 页 8 3” , 预置值为 : valuemax($a$+$b$+$c$)。 则该预置键值对具体定义了从服务器需要对待 分析的原始数据按照第1至3列数据元素进行归类, 并按照预置值的定义, 对归类后的原始 数据中第 a 列、 第 b 列和第 c 列的数据元素的分析处理方法为求和后再取最大值。 002。

28、9 需要说明的是, 预置值定义的分析处理方法可以包括但不限于 : 统计最小值 (min)、 统计最大值 (max)、 计算平均值 (average)、 计数 (count)、 求和 (sum) 及直接显示 (plain) 等, 直接显示 (plain) 一般用于主键列的显示。当然, 分析处理过程也可以包括其 他的计算方法, 本申请实施例对分析处理的方式并不进行限定。 0030 步骤 102 : 从服务器根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 0031 例如, 各个从服务器根据自身接收的数据标识, 从数据源处获取数据标识所。

29、指示 的待分析的原始数据, 如, 数据源可以是 FTP 服务器、 数据库 (DB) 或文件系统, 具体数据的 格式可以是数据表、 记录、 日志等。 并且, 在本申请的原始数据中, 各个数据元素之间以分割 标识进行隔离。该分割标识可以是逗号、 分号、 空格、 冒号等。本申请实施例中以逗号作为 数据元素之间的分割标识进行举例说明。 0032 例如, 以下为一段从数据源处获取原始数据, 该原始数据为日志片段。 在这个日志 片段中, 每个数据元素之间以逗号隔离。 并且, 在这个日志片段中, 共有两段记录, 每个记录 以回车换行符作为记录的结束。 0033 0, 203.171.227.117,null。

30、,xml, 12005554,taobao.user.get, 0, 0, 0, 172.24.14.65, 小郭 cc, 1.0, null, 3, null, 0, 1274803197776, 0, 0, 0, 1, 0, 0, 0, 0, 8, 0, 0, 0, 9 0034 0, 97.74.215.111, null, xml, 12028711, taobao.taobaoke.items.detail.get, 0, 0, null, 172.24.14.65, null, 2.0, md5, 4, null, 221000, 1274803197765, 0, 2, -1, 。

31、1, 0, 0, 0, 0, 23, 0, 0, 0, 26 0035 步骤 103 : 从服务器根据所述分割标识将获取的原始数据切割成数据元素 ; 0036 例如, 如果各个数据元素之间以逗号隔离, 则可以按照逗号将第一条记录切割成 以下共 30 个数据元素 : 第一个数据元素为 0, 第二数据元素为 203.171.227.117, 第三个数 据元素为 null, 第四个数据元素为 xml, 第五个数据元素为 12005554, 第六个数据元素为 taobao.user.get, , 第 30 个数据元素为 9。 0037 同样, 可以按照上述方式将第二条记录切割成 30 个数据元素。 0。

32、038 步骤 104 : 从服务器按照预置键中对数据元素的定义方式, 对获取的原始数据进 行归类 ; 0039 仍以上述第一条记录为例, 如果在预置键值对中定义的预置键为 : key “1, 2, 3” , 则从切割得到的数据元素中提取出的符合预置键值对中预置对应的数据元素, 即原始 数据中的第 1 至 3 列数据元素 0、 203.171.227.117 和 null。 0040 例如, 仍旧以预置键为 : key “1, 2, 3” , 预置值为 : value max($a$+$b$+$c$) 例 来说明上述预置键值对的作用。如, 对于一个从服务器上的 10 个待分析的原始数据而言, 当。

33、通过预置键的归类后, 发现在 10 个待分析的原始数据中, 有 7 个原始数据中的第 1 至 3 列数据元素相同, 另外 3 个原始数据中的第 1 至 3 列的数据元素相同, 则分别对 7 个原始数 据中第 a 列、 第 b 列和第 c 列的数据元素求和, 再取最大值, 并且分别对另外 3 个原始数据 中第 a 列、 第 b 列和第 c 列的数据元素求和, 再取最大值。 说 明 书 CN 102314460 A CN 102314464 A5/14 页 9 0041 但是, 当记录中的数据元素较多时, 或者数据元素在原始数据中的顺序发生变化 时, 容易发生数据元素操作错误的现象。例如, 当数据。

34、元素在原始数据中的顺序发生变化, 相应地, 该数据元素对应的预置键的定义也会发生变化。如, 假设数据元素 0 对应的预置键 的定义为 : key “1” , 当其在原始数据中的顺序向右移动一位后, 其对应的预置键的定义 变为 key “2” 。此时, 如果要提取数据元素 0, 必须修改其在预置键值对中的预置键的定 义, 即由 key 1 修改为 key 2, 否则就会提取错误的数据元素。为了保证当数据元素移 位时, 不必重新修改其在预置键值对中的预置键的定义, 优选地, 为每个数据元素设定一个 别名, 如下所示, 每个数据元素都对应一个别名。 0042 0043 0044 0045 0046 。

35、0047 0048 0049 0050 0051 0052 0053 0054 0055 0056 0057 0058 0059 0060 0061 0062 0063 0064 0065 0066 0067 0068 0069 0070 0071 0072 说 明 书 CN 102314460 A CN 102314464 A6/14 页 10 0073 0074 由上述内容可知, 在一个记录中, 第一个数据元素的别名为 appStatus, 第二 个数据元素的别名为 remoteIp, , 依此类推。此时, 上述预置键值对中定义的 预置键相应地被别名替换为 : key “appStatus。

36、, remoteIp, partnerId” 。可见, 即使第 一个数据元素 0 在记录中向右移动一位后, 其在记录中的顺序发生变化, 但是其别名仍为 “appStatus” , 因此, 不必修改预置键值对中的预置键的定义。 0075 步骤 105 : 从服务器按照预置值的定义, 对归类后的原始数据进行分析处理, 并将 分析处理结果反馈给主服务器, 主服务器对接收到的分析处理结果进行汇总。并且还可以 进一步执行对应的分析处理工作, 例如采用与从服务器相同的处理方式, 对收到的分析结 果进行分析、 合并等工作。 0076 例如, 如果在预置键值对中定义的预置键为 : key version, a。

37、piName, format, 定义的预置值为 : value average($responseMappingTime$), 当从服务器 按照预置键的定义从获取的原始数据中提取出数据元素 version、 apiName 和 format 相同 的原始数据 0077 ( 记录 ) 后, 即, 对原始数据进行归类后, 按照预置值的定义, 从服务器对提取出的 原始数据中的数据元素 responseMappingTime 进行求平均计算。 0078 以下为一个文件中的预置键值对中对预置键和预置值的定义。 0079 0080 0081 0082 0083 0084 0085 0086 0087 00。

38、88 其中, 在第一条预置键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据 中的数据元素 apiName 进行显示 ; 0089 在第二条预置键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据中的数据元 素 version 进行显示 ; 说 明 书 CN 102314460 A CN 102314464 A7/14 页 11 0090 在第三条键值对中, 预置键定义了从服务器。

39、对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据中的数据元 素 format 进行显示 ; 0091 在第四条键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据中的数据元 素 responseMappingTime 进行求平均计算 ; 0092 在第五条键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了对归类后的原始数据中的。

40、数据元素 responseMappingTime 求最大值 ; 0093 在第六条键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器对归类后的原始数据中的数据元 素 timestamp9 进行求平均计算 ; 0094 在第七条键值对中, 预置键定义了从服务器对数据元素 version、 apiName 和 format 相同的原始数据进行归类, 预置值定义了从服务器统计 (count) 归类后预置键相同 的的原始数据 ( 记录 ) 的数量。 0095 另外, 上述七条键值对中还指定了预置值结果的显示名称。

41、, 如,“服务名称” 、“版本 号” 、“返回格式” 、“Mapping 时间” 、“Mapping 时间最大” 、“业务平均消耗时间 (ms)” 和 “处 理总数” 等。 0096 经过上述数据分析处理后, 下面为数据分析处理结果的一个数据片段。 0097 说 明 书 CN 102314460 A CN 102314464 A8/14 页 12 服务名称 版本 号 返回 格式 Mapping 时间 Mapping 时间最大 业务平均消 耗时间 (ms) 处理 总数 taobao.areas.get 1 xml 0 0 88.73333 15 taobao.delivery.send 1 js。

42、on 0 0 417.2395 3561 taobao.delivery.send 1 xml 0 0 423.9512 1210 taobao.fenxiao.alipay.user.get 1 json 0 0 128.5 10 taobao.fenxiao.delivery.send 1 json 0 0 306.25 16 taobao.fenxiao.distributor.add 1 json 0 0 158.2 5 taobao.fenxiao.supplier.punish 1 json 0 0 13.5 4 taobao.fenxiao.supplier.update 1 j。

43、son 0 0 7 1 0098 0099 上述数据片段中, 第一行数据表示, 按照预置键对应的数据元素 “version” 、 “apiName”和 “format”进行归类, 即按照 “服务名称” 、“版本号” 、“返回格式”分别为 “taobao.areas.get” 、“1” 和 “xml” 对数据记录进行归类, 相同的数据记录的处理总数为 15 条, 其 Mapping 时间和 Mapping 时间最大均为 0, 15 条记录统计的业务平均消耗时间为 88.73333ms。 说 明 书 CN 102314460 A CN 102314464 A9/14 页 13 0100 从上述实例。

44、中可以看出, 本申请实施例通过文件中的预置键值对中对预置键和预 置值的定义, 可实现数据的归类、 统计分析、 报表生成 ( 例如可根据设定的预置键值对的顺 序生成报表 ) 等复杂功能, 例如适合于各种不同类型数据的海量分析、 处理, 为并行的数据 处理架构中的海量数据的分析、 处理以及报表的生成提供了一种方便、 灵活、 直观、 具体的 实现方案。 0101 当各个从服务器对原始数据进行分析处理后, 将各自的分析处理结果反馈给主服 务器, 由主服务器对接收到的分析处理结果进行合并。 其中, 主服务器也可按照预置键值对 中预置键的定义对从多个从服务器处得到分析处理结果进行归类, 并按照预置键值对中。

45、预 置值的定义对归类的分析处理结果进行合并处理。 例如, 在主服务器中, 预置键定义了主服 务器对分析处理结果进行归类的方式, 预置值定义主服务器对归类后的分析处理结果进行 合并处理的方法。例如, 假设主服务器接收到了来自 5 个从服务器上报的分析处理结果共 10 个, 按照预置键的定义, 其中的 7 个分析处理结果可以进行归类, 另外的 3 个分析处理结 果可以进行归类, 则主服务器分别可以对归类后的 7 个分析处理结果按照预置值的定义进 行合并处理, 以及, 对归类后的另外 3 个分析处理结果按照预置值的定义进行合并处理。由 于前面已经详细说明了预置键的归类方法和预置值的处理方法, 故此处。

46、不再赘述。 0102 需要说明的是, 上述实施例一除了应用于由一个主服务器和多个从服务器所组成 的集群系统中外, 还可以应用于由一个主线程和多个子线程所组成的一个数据分析服务器 中。此时, 主线程用于实现主服务器的功能, 子线程用于实现从服务器的功能。 0103 由上述实施例可以看出, 首先从数据源中获取待分析的原始数据, 然后按照分割 标识将原始数据切割成数据元素, 并将切割得到的数据元素作为键值对中的键, 再从切割 得到的数据元素中, 提取出符合预置键值对中的键定义的数据元素, 最后按照预置键值对 中的值定义, 对提取出的数据元素进行分析处理, 并将分析处理结果反馈给主服务器, 以便 主服。

47、务器对接收到的分析处理结果进行合并。因此, 为并行的数据处理架构中的海量数据 进行分析提供了具体的实现方案。 0104 实施例二 0105 当从服务器按照预置键中对数据元素的定义方式对获取的原始数据进行归类之 后, 根据用户的实际使用需求, 还可对归类后的原始数据进行进一步的过滤, 以过滤掉用户 不需要的一部分原始数据, 保留用户需要的原始数据。因此, 本实施例与实施例一的区别 在于 : 为了筛除掉归类后的原始数据中不需要处理的原始数据, 在执行完步骤 104 后, 还包 括 : 从归类后的原始数据中筛选出符合第一预置过滤条件的原始数据。请参阅图 2, 其为本 申请一种数据分析方法的另一个实施。

48、例的流程图, 该方法包括以下步骤 : 0106 步骤 201 : 从服务器接收主服务器发送的文件, 其中, 所述文件中包括待分析的原 始数据的数据标识和预置键值对, 所述预置键定义了从服务器对待分析的原始数据进行归 类的方式, 所述预置值定义了从服务器对归类后的原始数据进行分析处理的方式 ; 0107 步骤 202 : 从服务器根据所述数据标识, 从数据源中获取待分析的原始数据, 其 中, 所述原始数据中数据元素之间以分割标识进行隔离 ; 0108 步骤 203 : 从服务器根据所述分割标识将获取的原始数据切割成数据元素 ; 0109 步骤 204 : 从服务器按照预置键中对数据元素的定义方式对获取的原始数据进行 归类 ; 说 明 书 CN 102314460 A CN 102314464 A10/14 页 14 0110 需要说明的是, 上述步骤201至步骤204的执行过程可以参见实施例一中步骤101 至步骤 104, 此处不再赘述。 0111 步骤 205 : 从服务器从归类后的原始数据中筛选出符合第一预置过滤条件的原始 数据 ; 0112 例如, 当从服务器初始时从数据源处获取的 10 个原始数据, 并经过预置值的归类 后, 将其中的 7 个原始数据进行了归类, 将。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1