Bi报表的统计方法及系统的制作方法

文档序号:10552961阅读:614来源:国知局
Bi报表的统计方法及系统的制作方法
【专利摘要】本发明适用于数据处理技术领域,提供了一种BI报表的统计方法及系统,所述统计方法包括:获取用户数据信息,并将所述用户数据信息分别存储至第一数据库和第二数据库;从BI统计任务列表中获取待统计任务,根据所述第一数据库计算所述待统计任务的第一统计结果,根据所述第二数据库计算所述待统计任务的第二统计结果;比较所述第一统计结果和第二统计结果,若所述第一统计结果等于所述第二统计结果,则保存所述第一统计结果或第二统计结果。本发明实现了对BI报表中待统计任务的统计结果验证,解决了现有技术在处理逻辑不完善的情况下导致的统计结果不正确的问题,有效地提高了BI报表的统计结果的准确性。
【专利说明】
BI报表的统计方法及系统
技术领域
[0001] 本发明属于数据处理技术领域,尤其涉及一种BI报表的统计方法及系统。
【背景技术】
[0002] BI(Business Intelligence,商业智能),是一套企业决策解决方案,能够对企业 现有的用户数据进行整合,快速准确地提供报表并给出决策依据,以帮助企业作出明智的 经营决策。然而,在面对庞大的用户数据时,依靠传统关系型数据库进行BI (Business Inte 11 i gence,商业智能)报表分析变得越来越困难。现有技术主要通过hadoop框架将需要 进行分析的用户数据分成多个子集,然后对每个子集进行存储和统计计算,最后合并汇总 所有的统计结果。而统计计算的过程是由技术人员根据业务需求和原始数据的特征决定 的,有时候会由于处理逻辑的不完善而导致统计结果不正确的问题,无法验证及保证BI报 表的统计结果的准确性。

【发明内容】

[0003] 鉴于此,本发明实施例提供一种BI报表的统计方法及系统,以提高BI报表的统计 结果的准确性。
[0004] 第一方面,提供了一种BI报表的统计方法,所述统计方法包括:
[0005] 获取用户设备上传的用户数据信息,并将所述用户数据信息分别存储至第一数据 库和第二数据库;
[0006] 从BI统计任务列表中获取待统计任务,根据所述第一数据库计算所述待统计任务 的第一统计结果,根据所述第二数据库计算所述待统计任务的第二统计结果;
[0007]比较所述第一统计结果和第二统计结果,若所述第一统计结果等于所述第二统计 结果,则保存所述第一统计结果或第二统计结果。
[0008] 第二方面,提供了一种BI报表的统计系统,所述统计系统包括:
[0009] 获取模块,用于获取用户数据信息,并将所述用户数据信息分别存储至第一数据 库和第二数据库;
[0010] 统计模块,用于从BI统计任务列表中获取待统计任务,根据所述第一数据库计算 所述待统计任务的第一统计结果,根据所述第二数据库计算所述待统计任务的第二统计结 果;
[0011] 比较模块,用于比较所述第一统计结果和第二统计结果,若所述第一统计结果等 于所述第二统计结果,则保存所述第一统计结果或第二统计结果。
[0012] 与现有技术相比,本发明实施例通过将用户设备上传的用户数据信息分别存储至 预设的第一数据库和第二数据库;在进行BI报表统计时,从BI统计任务列表中获取待统计 任务,根据所述第一数据库计算所述待统计任务的第一统计结果,根据所述第二数据库计 算所述待统计任务的第二统计结果;比较所述第一统计结果和第二统计结果,若所述第一 统计结果等于所述第二统计结果,则保存所述第一统计结果或第二统计结果;从而实现了 对BI报表中待统计任务的统计结果验证,解决了现有技术在处理逻辑不完善的情况下导致 的统计结果不正确的问题,有效地提高了 BI报表的统计结果的准确性。
【附图说明】
[0013] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他附图。
[0014] 图1是本发明实施例提供的BI报表的统计方法的实现流程图;
[0015]图2是本发明实施例提供的分布式系统hadoop框架的组成结构;
[0016]图3是本发明实施例提供的BI报表的统计方法中步骤S102的具体实现流程图;
[0017] 图4是本发明另一实施例提供的BI报表的统计方法的实现流程图;
[0018] 图5是本发明实施例提供的BI报表的统计系统的组成结构图。
【具体实施方式】
[0019] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并 不用于限定本发明。
[0020] 本发明实施例通过将用户设备上传的用户数据信息分别存储至预设的第一数据 库和第二数据库;在进行BI报表统计时,从BI统计任务列表中获取待统计任务,根据所述第 一数据库计算所述待统计任务的第一统计结果,根据所述第二数据库计算所述待统计任务 的第二统计结果;比较所述第一统计结果和第二统计结果,若所述第一统计结果等于所述 第二统计结果,则保存所述第一统计结果或第二统计结果;从而实现了对BI报表中待统计 任务的统计结果验证,解决了现有技术在处理逻辑不完善的情况下导致的统计结果不正确 的问题,有效地提高了 BI报表的统计结果的准确性。本发明实施例还提供了相应的系统,以 下分别进行详细的说明。
[0021] 图1示出了本发明实施例提供的BI报表的统计方法的实现流程。
[0022]在本发明实施例中,所述BI报表的统计方法应用于分布式系统hadoop框架中,执 行主体包括但不限于计算机、笔记本电脑等终端设备。
[0023]参阅图1,所述BI报表的统计方法包括:
[0024]在步骤S101中,获取用户设备上传的用户数据信息,并将所述用户数据信息分别 存储至第一数据库和第二数据库。
[0025]在这里,用户在使用用户设备的过程中会产生大量的用户数据信息。所述用户设 备包括但不限于智能手机、平板电脑、计算机、笔记本电脑、智能穿戴设备等终端以及其他 提供用户使用的设备。本发明实施例中的分布式系统hadoop框架中的终端设备接收所述用 户设备所上传的用户数据信息,并将所述用户数据信息分别存储于预设的第一数据库和第 二数据库中,作为BI报表统计的原始数据。可选地,所述用户数据信息包括但不限于用户设 备的标识device_id、上传时间uploadtime、客户端类型client_type、IP地址IPAddress、应 用程序信息APPinfo等。
[0026] 在步骤S102中,从BI统计任务列表中获取待统计任务,根据所述第一数据库计算 所述待统计任务的第一统计结果,根据所述第二数据库计算所述待统计任务的第二统计结 果。
[0027] 在本发明实施例中,在对BI统计任务列表中的待统计任务进行统计时,分别基于 所述第一数据库和第二数据库中存储的用户数据信息计算所述待统计任务的统计结果,得 到第一统计结果和第二统计结果。
[0028]可选地,图2示出了本发明实施例提供的分布式系统hadoop框架的组成结构。参阅 图2,本发明实施例中所述的hadoop框架包括BI报表层、Hadoop生态系统层、数据采集层以 及数据源。其中,所述数据源为所上传的用户数据信息的来源,包括但不限于用户行为数 据、点播数据、直播数据、路由器数据等。所述数据采集层主要使用日志收集服务器nginx。 所述Hadoop生态系统层包括分布式应用程序协调服务Zookeeper、计算框架MapReduce、资 源管理调度平台YARN、非关系型数据库NoSQL中的列存储数据库HBase以及分布式文件系统 HDFS。所述BI报表层包括BI-WEB、BI任务统计列表、应用数据库等。作为本发明的一个优选 示例,所述第一数据库可以为分布式文件系统HDFS,所述第二数据库可以为分布式列存储 数据库ffflase;用户设备上传的用户数据信息分别入库至所述分布式文件系统HDFS和分布 式列存储数据库HBase中。
[0029] 作为本发明的一个优选示例,图3示出了本发明实施例提供的BI报表的统计方法 中步骤S102的具体实现流程。
[0030] 参阅图3,所述步骤S102包括:
[0031]在步骤S301中,从BI统计任务列表中获取待统计任务,查找所述待统计任务对应 的统计指标恒等式Qi = Q2,得到所述待统计任务对应的第一统计方式Qi和第二统计方式Q2。 [0032]在这里,对于分布式文件系统HDFS,每一个待统计任务都对应一个或者多个第一 统计方式Qi;对于分布式列存储数据库ffflase,所述待统计任务也对应一个或者多个第二统 计方式Q2。所述第一统计方式Qi和第二统计方式Q2用于计算所述待统计任务的统计结果。
[0033] 示例性地,假设待统计任务为:当天活跃用户数,则:
[0040] 在步骤S103中,比较所述第一统计结果和第二统计结果,若所述第一统计结果等 于所述第二统计结果,则保存所述第一统计结果或第二统计结果。
[0041] 在得到所述待统计任务对应的第一统计结果和第二统计结果后,比较所述第一统 计结果和第二统计结果,以验证所述待统计任务的统计结果。在统计流程、逻辑完善的情况 下,通过所述第一统计方式Qi计算得到的所述待统计任务的统计结果Ri和通过第二统计方 式Q 2计算得到的所述待统计任务的统计结果R2应当相同。因此,若所述第一统计结果等于所 述第二统计结果,说明所述待统计任务的本次统计结果正确,保存所述第一统计结果或第 二统计结果作为所述待统计任务的统计结果,实现了对BI报表的统计结果的验证。
[0042] 进一步地,在保存所述第一统计结果或第二统计结果之后,所述统计方法还包括:
[0043] 从BI统计任务列表中获取下一个待统计任务,对所述下一个待统计任务进行统 计。返回步骤S102。
[0044] 进一步地,服务器网络时延、用户数据信息丢失等问题会导致通过步骤S102得到 的第一统计结果和第二统计结果不相同。若比较得到所述第一统计结果不等于所述第二统 计结果,则说明所述待统计任务的本次统计结果出错。作为本发明的另一个优选示例,图4 示出了本发明另一实施例提供的BI报表的统计方法的实现流程。
[0045] 参阅图4,所述统计方法包括:
[0046]在步骤S401中,获取用户数据信息,并将所述用户数据信息分别存储至第一数据 库和第二数据库。
[0047]在步骤S402中,从BI统计任务列表中获取待统计任务。
[0048]在步骤S403中,根据所述第一数据库计算所述待统计任务的第一统计结果,根据 所述第二数据库计算所述待统计任务的第二统计结果。
[0049]在步骤S404中,比较所述第一统计结果和第二统计结果。
[0050]若所述第一统计结果等于所述第二统计结果,则执行步骤S405;否则,若所述第一 统计结果不等于所述第二统计结果时,执行步骤S406。
[0051] 在步骤S405中,保存所述第一统计结果或第二统计结果。返回步骤S402,从BI统计 任务列表中获取下一个待统计任务,对所述下一个待统计任务进行统计。
[0052] 其中,步骤S401至步骤S405具体请参见上述图1和图3实施例的叙述,此处不在赘 述。所述统计方法还包括:
[0053]在步骤S406中,判断所述待统计任务当前的统计次数是否大于或等于预设次数阈 值。
[0054]若是,则执行步骤S407;否则,在所述待统计任务当前的统计次数小于所述预设次 数阈值时,执行步骤S408。
[0055]在步骤S407中,捕获并记录所述待统计任务的异常信息,并发送告警信息。
[0056]在这里,若对当前的待统计任务经过多次统计后,第一统计结果和第二统计结果 仍不相同,则捕获并记录所述待统计任务的异常信息,通过发送告警信息的方式输出所述 待统计任务的异常信息,以通知开发人员。然后返回步骤S402,从BI统计任务列表中获取下 一个待统计任务,对所述下一个待统计任务进行统计。
[0057] 在步骤S408中,对所述待统计任务进行下一次统计。返回步骤S403。
[0058]在这里,步骤S408具体为采用通过骤S301所获取的所述待统计任务对应的第一统 计方式&和第二统计方式Q2对所述待统计任务再次进行统计。直至第一统计结果等于第二 统计结果时,从BI统计任务列表中获取下一个待统计任务进行统计;或者,在统计次数达到 预设次数阈值时,捕获并记录所述待统计任务的异常信息,发送告警信息,并从BI统计任务 列表中获取下一个待统计任务进行统计。开发人员通过所述告警信息可清晰地分辨BI报表 准确可信的统计结果和存在误差的统计结果,
[0059] 综上所述,本发明实施例通过将用户设备上传的用户数据信息分别存储至预设的 第一数据库和第二数据库;在进行BI报表统计时,从BI统计任务列表中获取待统计任务,根 据所述第一数据库计算所述待统计任务的第一统计结果,根据所述第二数据库计算所述待 统计任务的第二统计结果;比较所述第一统计结果和第二统计结果,若所述第一统计结果 等于所述第二统计结果,则保存所述第一统计结果或第二统计结果;从而实现了对BI报表 中待统计任务的统计结果验证,解决了现有技术在处理逻辑不完善的情况下导致的统计结 果不正确的问题,有效地提高了 BI报表的统计结果的准确性。
[0060] 图5示出了本发明实施例提供的BI报表的统计系统的组成结构,为了便于说明,仅 示出了与本发明实施例相关的部分。
[0061] 在本发明实施例中,所述BI报表的统计系统用于实现上述图1至图4任一实施例所 述的BI报表的统计方法,可以是内置于终端设备的软件单元、硬件单元或者软硬件结合的 单元。所述终端设备包括但不限于计算机、服务器等。
[0062]参阅图5,所述BI报表的统计系统包括:
[0063]获取模块51,用于获取用户设备上传的用户数据信息,并将所述用户数据信息分 别存储至第一数据库和第二数据库;
[0064]统计模块52,用于从BI统计任务列表中获取待统计任务,根据所述第一数据库计 算所述待统计任务的第一统计结果,根据所述第二数据库计算所述待统计任务的第二统计 结果;
[0065]比较模块53,用于比较所述第一统计结果和第二统计结果,若所述第一统计结果 等于所述第二统计结果,则保存所述第一统计结果或第二统计结果。
[0066]进一步地,所述第一数据库为分布式文件系统HDFS,所述第二数据库为分布式列 存储数据库HBase。
[0067]进一步地,所述统计模块52包括:
[0068] 获取单元521,用于从BI统计任务列表中获取待统计任务,查找所述待统计任务对 应的统计指标恒等式Qi = Q2,得到所述待统计任务对应的第一统计方式Qi和第二统计方式 Q2;
[0069] 第一统计单元522,用于对第一数据库中的用户数据信息,采用分布式计算框架 MapReduce按照第一统计方式Qi计算所述待统计任务的第一统计结果;
[0070] 第二统计单元523,用于对第二数据库中的用户数据信息,采用HBase协处理器 coprocessor按照第二统计方式Q2计算所述待统计任务的第二统计结果。
[0071] 进一步地,所述系统还包括:
[0072]告警模块54,用于在所述第一统计结果不等于所述第二统计结果时,判断所述待 统计任务当前的统计次数是否大于或等于预设次数阈值;若是,则捕获并记录所述待统计 任务的异常信息,并发送告警信息;
[0073] 所述统计模块52还用于:
[0074] 在所述待统计任务当前的统计次数小于所述预设次数阈值时,对所述待统计任务 进行下一次统计。
[0075]进一步地,所述统计模块52还用于:
[0076]在保存所述第一统计结果或第二统计结果后或者发送告警信息后,从所述BI统计 任务列表中获取下一个待统计任务,对所述下一个待统计任务进行统计。
[0077]需要说明的是,本发明实施例中的系统可以用于实现上述方法实施例中的全部技 术方案,其各个功能模块的功能可以根据上述方法实施例中的方法具体实现,其具体实现 过程可参照上述实例中的相关描述,此处不再赘述。
[0078] 综上所述,本发明实施例通过将用户设备上传的用户数据信息分别存储至预设的 第一数据库和第二数据库;在进行BI报表统计时,从BI统计任务列表中获取待统计任务,根 据所述第一数据库计算所述待统计任务的第一统计结果,根据所述第二数据库计算所述待 统计任务的第二统计结果;比较所述第一统计结果和第二统计结果,若所述第一统计结果 等于所述第二统计结果,则保存所述第一统计结果或第二统计结果;从而实现了对BI报表 中待统计任务的统计结果验证,解决了现有技术在处理逻辑不完善的情况下导致的统计结 果不正确的问题,有效地提高了 BI报表的统计结果的准确性。
[0079] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单 元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟 以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员 可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出 本发明的范围。
[0080] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、 模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0081] 在本申请所提供的几个实施例中,应该理解到,所揭露的BI报表的统计方法及系 统,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述 模块、单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多 个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一 点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统、模 块或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0082]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显 示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个 网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目 的。
[0083] 另外,在本发明各个实施例中的各功能单元、模块可以集成在一个处理单元中,也 可以是各个单元、模块单独物理存在,也可以两个或两个以上单元、模块集成在一个单元 中。
[0084] 所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以 存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说 对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计 算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个 人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。 而前述的存储介质包括:U盘、移动硬盘、只读存储器(R0M,Read-0nly Memory)、随机存取存 储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0085]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何 熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵 盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
【主权项】
1. 一种BI报表的统计方法,其特征在于,所述统计方法包括: 获取用户设备上传的用户数据信息,并将所述用户数据信息分别存储至第一数据库和 第二数据库; 从BI统计任务列表中获取待统计任务,根据所述第一数据库计算所述待统计任务的第 一统计结果,根据所述第二数据库计算所述待统计任务的第二统计结果; 比较所述第一统计结果和第二统计结果,若所述第一统计结果等于所述第二统计结 果,则保存所述第一统计结果或第二统计结果。2. 如权利要求1所述的BI报表的统计方法,其特征在于,所述第一数据库为分布式文件 系统HDFS,所述第二数据库为分布式列存储数据库HBase。3. 如权利要求2所述的BI报表的统计方法,其特征在于,所述从BI统计任务列表中获取 待统计任务,根据所述第一数据库计算所述待统计任务的第一统计结果,根据所述第二数 据库计算所述待统计任务的第二统计结果包括: 从BI统计任务列表中获取待统计任务,查找所述待统计任务对应的统计指标恒等式Qi = Q2,得到所述待统计任务对应的第一统计方式Qi和第二统计方式Q2; 对第一数据库中的用户数据信息,采用分布式计算框架MapReduce按照第一统计方式Q1 计算所述待统计任务的第一统计结果; 对第二数据库中的用户数据信息,采用HBase协处理器coprocessor按照第二统计方式 Q2计算所述待统计任务的第二统计结果。4. 如权利要求1至3任一项所述的BI报表的统计方法,其特征在于,所述统计方法还包 括: 若所述第一统计结果不等于所述第二统计结果时,则判断所述待统计任务当前的统计 次数是否大于或等于预设次数阈值; 若是,则捕获并记录所述待统计任务的异常信息,并发送告警信息; 否则,在所述待统计任务当前的统计次数小于所述预设次数阈值时,对所述待统计任 务进行下一次统计。5. 如权利要求4所述的BI报表的统计方法,其特征在于,所述统计方法还包括: 在保存所述第一统计结果或第二统计结果后或者发送告警信息后,从所述BI统计任务 列表中获取下一个待统计任务,对所述下一个待统计任务进行统计。6. -种BI报表的统计系统,其特征在于,所述系统包括: 获取模块,用于获取用户设备上传的用户数据信息,并将所述用户数据信息分别存储 至第一数据库和第二数据库; 统计模块,用于从BI统计任务列表中获取待统计任务,根据所述第一数据库计算所述 待统计任务的第一统计结果,根据所述第二数据库计算所述待统计任务的第二统计结果; 比较模块,用于比较所述第一统计结果和第二统计结果,若所述第一统计结果等于所 述第二统计结果,则保存所述第一统计结果或第二统计结果。7. 如权利要求6所述的BI报表的统计系统,其特征在于,所述第一数据库为分布式文件 系统HDFS,所述第二数据库为分布式列存储数据库HBase。8. 如权利要求7所述的BI报表的统计系统,其特征在于,所述统计模块包括: 获取单元,用于从BI统计任务列表中获取待统计任务,查找所述待统计任务对应的统 计指标恒等式Qi = Q2,得到所述待统计任务对应的第一统计方式Qi和第二统计方式Q2; 第一统计单元,用于对第一数据库中的用户数据信息,采用分布式计算框架MapReduce 按照第一统计方式Q1计算所述待统计任务的第一统计结果; 第二统计单元,用于对第二数据库中的用户数据信息,采用HBase协处理器 coprocessor按照第二统计方式Q2计算所述待统计任务的第二统计结果。9. 如权利要求6至8任一项所述的BI报表的统计系统,其特征在于,所述统计系统还包 括: 告警模块,用于在所述第一统计结果不等于所述第二统计结果时,判断所述待统计任 务当前的统计次数是否大于或等于预设次数阈值;若是,则捕获并记录所述待统计任务的 异常信息,并发送告警信息; 所述统计模块还用于: 在所述待统计任务当前的统计次数小于所述预设次数阈值时,对所述待统计任务进行 下一次统计。10. 如权利要求9所述的BI报表的统计系统,其特征在于,所述统计模块还用于: 在保存所述第一统计结果或第二统计结果后或者发送告警信息后,从所述BI统计任务 列表中获取下一个待统计任务,对所述下一个待统计任务进行统计。
【文档编号】G06F17/30GK105912605SQ201610209725
【公开日】2016年8月31日
【申请日】2016年4月5日
【发明人】李佳
【申请人】Tcl集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1