CN113094409B - 业务数据的处理方法及装置、计算机存储介质 - Google Patents

业务数据的处理方法及装置、计算机存储介质 Download PDF

Info

Publication number
CN113094409B
CN113094409B CN202110378394.4A CN202110378394A CN113094409B CN 113094409 B CN113094409 B CN 113094409B CN 202110378394 A CN202110378394 A CN 202110378394A CN 113094409 B CN113094409 B CN 113094409B
Authority
CN
China
Prior art keywords
data
rectangle
statistical
service
result set
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.)
Active
Application number
CN202110378394.4A
Other languages
English (en)
Other versions
CN113094409A (zh
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.)
State Grid Digital Technology Holdings Co ltd
State Grid E Commerce Technology Co Ltd
Original Assignee
State Grid Digital Technology Holdings Co ltd
State Grid E Commerce 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 State Grid Digital Technology Holdings Co ltd, State Grid E Commerce Technology Co Ltd filed Critical State Grid Digital Technology Holdings Co ltd
Priority to CN202110378394.4A priority Critical patent/CN113094409B/zh
Publication of CN113094409A publication Critical patent/CN113094409A/zh
Application granted granted Critical
Publication of CN113094409B publication Critical patent/CN113094409B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了一种业务数据的处理方法及装置、计算机存储介质,所述业务数据的处理方法,包括:获取业务***产生的业务数据;基于创建的数据模型,分别在多个数据维度组合下对所述业务数据进行统计计算,得到每个所述数据维度组合对应的统计结果集合;其中,所述数据模型中定义有多个数据维度;每一个所述数据维度组合均由至少一个所述数据维度组成;将每个所述数据维度组合对应的统计结果集合存储至数据库中;其中,所述统计结果集合中包含的统计结果用于在接收到查询请求时,生成与所述查询请求对应的查询结果。从而通过对业务数据的预计算,不仅减少了业务数据的数据量,而且还免除或减少了数据查询时的计算,有效地提高了数据的查询效率。

Description

业务数据的处理方法及装置、计算机存储介质
技术领域
本申请涉及数据处理技术领域,特别涉及一种业务数据的处理方法及装置、计算机存储介质。
背景技术
各个公司随着业务的不断发展,数据量也越来越多,同时对数据深度挖掘的需求也在增加,数据的关联关系也愈加复杂,因此目前数据查询主要针对的是对处理后得到的数据的复杂查询,例如,报表的查询。
在处理复杂查询请求时,首先从数据库中查询出各个基础的业务数据,然后再对各个业务数据根据查询请求进行计算,得到所请求的处理后的数据,并进行反馈。
但是由于业务数据的数据量较大,并且业务数据相对零散且更新频率高,在处理复杂请求时,查询出各个相关的业务数据以及对业务数据的处理所耗费较长时间,因此数据查询效率相对较低。
发明内容
基于上述现有技术的不足,本申请提供了一种业务数据的处理方法及装置、计算机存储介质,以解决现有技术的数据查询效率较低的问题。
为了实现上述目的,本申请提供了以下技术方案:
本申请第一方面提供了一种业务数据的处理方法,包括:
获取业务***产生的业务数据;
基于创建的数据模型,分别在多个数据维度组合下对所述业务数据进行统计计算,得到每个所述数据维度组合对应的统计结果集合;其中,所述数据模型中定义有多个数据维度;每一个所述数据维度组合均由至少一个所述数据维度组成;
将每个所述数据维度组合对应的统计结果集合存储至数据库中;其中,所述统计结果集合中包含的统计结果用于在接收到查询请求时,生成与所述查询请求对应的查询结果。
可选地,在上述的业务数据的处理方法中,所述基于创建的数据模型,分别在多个数据维度组合下对所述业务数据进行统计计算,得到每个所述数据维度组合对应的统计结果集合,包括:
基于创建的所述数据模型,创建一张宽表;其中,所述宽表中包括所述多个数据维度以及所述业务数据;
对所述宽表中的所述多个数据维度进行去重;
在基础数据维度组合下,对所述宽表中的所述业务数据进行统计,得到最低级的数据矩形对应的统计结果集合;其中,所述基础数据维度组合指代所有所述数据维度组成的数据维度组合;一个所述数据矩形对应一个所述数据维度组合;
依次基于下一级的数据矩形对应的统计结果集合,计算得到上一级的数据矩形对应的统计结果集合;其中,下一级的数据矩形对应的数据维度组合的数据维度的数量,比上一级数据矩形对应的数据维度组合的数据维度的数量多。
可选地,在上述的业务数据的处理方法中,所述将每个所述数据维度组合对应的统计结果集合存储至数据库中,包括:
确定每个所述数据矩形的ID;所述数据矩形的ID为二进制编码,并且所述数据矩形的ID与每个所述数据维度相关;
分别针对每个所述数据矩形,将所述数据矩形的标ID分别与所述数据矩形对应的统计结果集合中各个统计结果对应的词典编码组合,得到每个所述统计结果对应的键;其中,所述统计结果对应的词典编码指代其所属的各个所述数据维度下的类别的词典编码;
分别将每个所述统计结果作为值,与其对应的键组合为键值对,并存储至数据库中。
可选地,在上述的业务数据的处理方法中,所述获取业务***产生的业务数据之后,还包括:
将所述业务数据存储至过渡数据库中;
定时导出所述过渡数据库中全量的所述业务数据的SCV文件,并将所述SCV文件导入数据仓库中。
可选地,在上述的业务数据的处理方法中,所述将每个所述数据维度组合对应的统计结果集合存储至数据库中之后,还包括:
当接收到报表***发送的查询请求时,从所述数据库中查询出相关的统计结果;其中,所述报表***通过提供的数据库连接直接发送所述查询请求;
利用所述统计结果生成所述查询请求所请求的目标数据,并将所述目标数据作为查询结果反馈给所述报表***进行处理并展示。
本申请第二方面提供了一种业务数据的处理装置,包括:
获取单元,用于获取业务***产生的业务数据;
计算单元,用于基于创建的数据模型,分别在多个数据维度组合下对所述业务数据进行统计计算,得到每个所述数据维度组合对应的统计结果集合;其中,所述数据模型中定义有多个数据维度;每一个所述数据维度组合均由至少一个所述数据维度组成;
第一存储单元,用于将每个所述数据维度组合对应的统计结果集合存储至数据库中;其中,所述统计结果集合中包含的统计结果用于在接收到查询请求时,生成与所述查询请求对应的查询结果。
可选地,在上述的业务数据的处理装置中,所述计算单元,包括:
创建单元,用于基于创建的所述数据模型,创建一张宽表;其中,所述宽表中包括所述多个数据维度以及所述业务数据;
去重单元,用于对所述宽表中的所述多个数据维度进行去重;
第一计算单元,用于在基础数据维度组合下,对所述宽表中的所述业务数据进行统计,得到最低级的数据矩形对应的统计结果集合;其中,所述基础数据维度组合指代所有所述数据维度组成的数据维度组合;一个所述数据矩形对应一个所述数据维度组合;
第二计算单元,用于依次基于下一级的数据矩形对应的统计结果集合,计算得到上一级的数据矩形对应的统计结果集合;其中,下一级的数据矩形对应的数据维度组合的数据维度的数量,比上一级数据矩形对应的数据维度组合的数据维度的数量多1。
可选地,在上述的业务数据的处理装置中,所述第一存储单元,包括:
确定单元,用于确定每个所述数据矩形的ID;所述数据矩形的ID为二进制编码,并且所述数据矩形的ID与每个所述数据维度相关;
组合单元,用于分别针对每个所述数据矩形,将所述数据矩形的ID分别与所述数据矩形对应的统计结果集合中各个统计结果对应的词典编码组合,得到每个所述统计结果对应的键;其中,所述统计结果对应的词典编码指代其所属的各个所述数据维度下的类别的词典编码;
第一存储子单元,用于分别将每个所述统计结果作为值,与其对应的键组合为键值对,并存储至数据库中。
可选地,在上述的业务数据的处理装置中,还包括:
第二存储单元,用于将所述业务数据存储至过渡数据库中;
数据传输单元,用于定时导出所述过渡数据库中全量的所述业务数据的SCV文件,并所述SCV文件导入数据仓库中,覆盖所述数据仓库中的数据。
可选地,在上述的业务数据的处理装置中,还包括:
查询单元,用于当接收到报表***发送的查询请求时,从所述数据库中查询出相关的统计结果;其中,所述报表***通过数据库连接直接发送所述查询请求;
生成单元,用于利用所述统计结果生成所述查询请求所请求的目标数据,并将所述目标数据作为查询结果反馈给所述报表***进行处理并展示。
本申请第三方面提供了一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,用于实现如上述任意一项所述的深度图像的生成方法。
本申请提供的一种业务数据的处理方法,通过获取业务***产生的业务数据,然后基于创建的数据模型,分别在数据模型中定义的多个数据维度组成的多个数据维度组合下,对业务数据进行统计计算,得到每个数据维度对应的统计结果集合,从而实现对业务数据在多个数据维度组合下的预计算。然后,将每个数据维度组合对应的统计结果集合存储至数据库中,供后续在接收到查询请求时,生成查询结果,从而通过对业务数据的预计算,将多个业务数据统计为了一个数据,减少了数据量,并且由于已经经过预计算,所以可以免除或减少了查询时的计算过程,有效地提高了数据的查询效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种业务数据处理***的结构示意图;
图2为本申请另一实施例提供的一种业务数据的处理方法的流程图;
图3为本申请另一实施例提供的一种计算数据维度组合对应的统计结果集合的方法的流程图;
图4为本申请另一实施例提供的一种数据立方体的示意图;
图5为本申请另一实施例提供的一种存储统计结果集合的方法的流程图;
图6为本申请另一实施例提供的数据交互的示意图;
图7为本申请另一实施例提供的一种业务数据的处理装置的结构示意图;
图8为本申请另一实施例提供的一种计算单元的结构示意图;
图9为本申请另一实施例提供的一种第一存储单元的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本申请提供了一种业务数据的处理方法,以解决现有技术数据查询效率较低的问题。
为了实现本申请提供的一种业务数据的处理方法,可选地,本申请实施例提供的一种业务数据处理***,如图1所示,具体包括:服务模块101、查询模块102、路由模块103、管理模块104、计算模块105、数据仓库106以及数据库107。
其中,服务模块101具体可以是REST服务,主要用于与第三方***对接,从第三方***获取数据或发送数据至第三方。需要说明的是,在申请中主要指的业务***。查询模块102主要用于对查询请求进行解析,并与其他组件进行交互实现数据查询以及反馈。路由模块103则主要将查询请求的解析结果转化为对数据维度组合对应的统计结果的查询请求,从而获取到相应的统计结果。管理模块104则主要用于数据模型的创建、数据维度的管理等数据管理工作。数据仓库106则主要用于存储从业务***获得业务数据,即待处理的业务数据。数据库107则用于存储各个数据维度组合对应的统计结果集合。计算模型则主要用于从数据仓库106获取业务数据,然后基于创建的数据模型,对多个数据维度组合下的所述业务数据进行统计计算,得到多个数据维度组合对应的统计结果集合,并将每个数据维度组合对应的统计结果集合存储至数据库107中。
可选地,本申请实施提供的业务数据处理***还可以进一步包括过渡数据库,用于将获取的业务数据先存储在过渡数据库中,再将过渡数据库中的数据全量导入数据仓库106中,从而可以更好的适应业务数据的增删改查。
可选地,本申请实施例提供的业务数据处理***可以基于开源的分布式分析引擎Apache Kylin来实现,数据仓库106可以为Hive,数据库107可以为Hbose。当然,这只是其中一种可选的方式,也可以其他的软件或框架来实现。
基于上述提供的业务数据处理***,本申请另一实施例提供了一种业务数据的处理方法,如图2所示,具体包括以下步骤:
S201、获取业务***产生的业务数据。
可选的,可以获取指定的一个或者多个业务***所产生的业务数据。具体可以是业务***每产生一个业务数据则获取该业务数据,并将该业务数据存储至数据仓库中,直至获取的业务数据的数据量达到预设数量,或者到达设定时间点时,执行步骤S202。当然这只是其中一种可选的方式,也可以是通过其他方式获取业务数据,以及其他的方式启动步骤S202的执行。
若数据仓库为Hive,由于Hive适合增量数据的应用场景,但是对数据修改和删除并不友好,并且写的性能也不高。若将业务系产生的业务数据直接存储与数据仓库,将使得整个业务数据处理***不能很好地适应数据的增删改查。并且由于写性能较差,数据写入也相对较慢,因此本申请另一实施例中,在执行步骤S201获取到业务***产生的业务数据之后,先将业务数据存在存储至过渡数据库中,即将业务***产生的业务数据直接存储在过渡数据库中。然后,再定时导出过渡数据库中全量的业务数据的SCV文件,并SCV文件导入数据仓库中,覆盖数据仓库中的数据。
其中,过渡数据库为增删改查性能优异的数据库,所以可以在过渡数据中执行增删改查,从而通过过渡数据库很好地适应了数据需要进行增删改查的应用场景。并且由于SCV文件格式简单,并且具备很强的开放性,所以可以快速地将数据代入到数据仓库中,提供数据的处理效率。
S202、基于创建的数据模型,分别在多个数据维度组合下对业务数据进行统计计算,得到每个数据维度组合对应的统计结果集合。
其中,数据模型中至少定义有多个数据维度。可选地,数据模型中还可以包括有数据维度的基度、数据维度的分组、数据维度与业务数据的关系等。通过数据模型定义了如何对多个数据维度组合下的业务数据进行统计计算。
需要说明的是,每一个数据维度组合均由至少一个数据维度组成,即数据维度组合为数据。例如,业务数据为手机的销量信息,而数据维度包括时间、手机品牌以及国家。则所有的数据维度组合包括:(时间)、(手机品牌)、(国家)、(时间,手机品牌)、(时间,国家)、(时间,手机品牌,国家),共存在6种数据维度组合,即三个维度的所有排列组合都可以作为一个数据维度组合。
具体的,在一个数据维度组合下对业务数据进行统计计算,指的是以该数据维度组合为统计基准,对业务数据进行统计计算。而一个数据维度组合对应的统计结果集合中的统计结果的数量,等于组成该数据维度组合的各个数据维度的基度的乘积。而对于仅包含一个数据维度的数据维度组合,则其对应的统计结果集合中的统计结果的数量等于该数据维度的季度。其中,一个数据维度的基度可以简单的理解为该数据维度下划分的类别的数量,例如,对于时间的数据维度下可以包括2010年、2011年、和2012年三个类别,即其基度为3。所以,对于仅包括时间这一数据维度的数据维度组合,其对应的统计结果集合中包括了3个统计集合,即包括了2010年的手机销售总量、2011年的手机销售总量、和2012年的手机销售总量。若进一步假设手机品牌的基度也是3,那么时间和手机品牌组成的数据维度组合对应的统计结果集合中包括有9个统计结果,即包含有各个手机品牌在各年度的销售总量。
在本实施例中,数据统计可以是针对数据模型中的数据维度的排列组合得到的所有数据维度组合进行业务数据统计,也可以针对部分数据维度组合进行业务数据统计。
可选地,本申请另一实施例中的步骤S202的一种具体的实施方式,如图3所示,具体包括以下步骤:
S301、基于创建的数据模型,创建一张宽表,宽表中包括多个数据维度以及业务数据。
具体的,可以基于业务数据的数据模型中的逻辑调用数据仓库,进而从数据仓库中相应的数据表中获取到业务数据。然后,将数据模型中多个数据维度以及获取的业务数据,共同组建成一张宽表。
S302、对宽表中的多个数据维度进行去重。
可选地,在对宽表中的数据维度进行去重后,还可以进一步对宽表中的各个数据维度创建相应词典编码。具体为对各个数据维度下的各个类别创建词典编码。例如,对于时间、手机品牌以及国家三个数据维度,均分别包括三个类别,具体编码后为:苹果,0、华为,1、小米,2;2010年,0、2011年,1、2012年,2;中国,0、美国,1、日本,2。因此,可以在对宽表中的多个数据维度进行去重后,将宽表存储至数据库中,在进行词典编码后,再执行步骤S303。
S303、在基础数据维度组合下,对宽表中的业务数据进行统计,得到最低级的数据矩形对应的统计结果集合。
其中,基础数据维度组合指代所有数据维度组成的数据维度组合。例如,设定的所有数据维度包括时间、手机品牌以及国家,则基础数据维度组合指的就是时间、手机品牌以及国家共同组成的数据维度组合。因此,最低级的数据矩形对应的统计结果集合可以包含每个手机品牌每年在各个国家的手机销售量。
需要说明的是,一个数据矩形(cuboid)对应一个数据维度组合,所以数据矩形对应的统计结果集合,即为数据维度组合对应的统计结果集合,最低级的数据矩形对应的数据维度组合即为基础数据维度组合。并且,本申请实施例中根据组成数据维度组合的数据维度的数量,将数据维度组合对应的数据矩形划分为多个等级。其中,组成数据维度组合的数据维度的数量越多,则该数据维度组合对应的数据矩形的级别越低,所以下一级的数据矩形对应的数据维度组合的数据维度的数量,都比其上一级数据矩形对应的数据维度组合的数据维度的数量多,具体可以是多1。而最低级的数据矩形是由所有数据维度组成的数据维度组合,也可以称为基础数据矩形。
S304、依次基于下一级的数据矩形对应的统计结果集合,计算得到上一级的数据矩形对应的统计结果集合。
由于,下一级的数据矩形对应的数据维度组合,较上一级的数据维度组合多一个数据维度,所以本申请实施例中,通过对下一级的数据矩形对应的统计结果集合,进一步进行统计,则可以得到少一个数据维度的上一级的数据矩形对应的统计结果,从而不需要对每个级别的数据矩形都利用基础的业务数据进行统计,有效地提高了统计计算的效率。
例如,在统计得到时间、手机品牌以及国家的数据维度组合对应的数据矩形对应的统计结果集合后,即得到每个收集品牌每年在各个国家的销售量后,再统计其上一级的数据矩形的统计结果集合时,如统计时间和收集品牌组成的数据维度组合对应的统计结果时,只需分别针对每个手机品牌、每一年,将下一级的数据矩形的统计结果集合中,该年该手机品牌在所有国家年的手机销量求和,就可以得到该级别的数据矩形对应的统计结果集合。
具体的,由于在步骤S303以及统计计算得到了最低级的数据矩形对应的统计结果集合,所以可以基于最低级的数据矩形对应的统计结果集合,计算其上一级的数据矩形对应的统计结果集合,然后不断由下往上,依次计算直至得到仅由一个数据维度组成的数据维度组合所对应的数据矩形所对应的统计结果集合。
可选地,还可以额外设置一个不对应数据维度组合的最顶级的数据矩形,即该数据矩形不存在对应的数据维度组合,也不对应有统计集合,从而可以将该数据矩形与其他所有的数据矩形对应的统计结果共同构成一个数据立方体。例如,如图4所示的数据立方体,数据维度包括三个,每个圆圈指代一个数据立方体,包含有其对应的统计结果结合。
S203、将每个数据维度组合对应的统计结果集合存储至数据库中。
其中,统计结果集合中包含的统计结果用于在接收到查询请求时,生成与查询请求对应的查询结果。
具体的,当查询的是统计结果集合中的统计结果时,则直接将统计结果封装为查询结果并反馈。若查询的是还需进一步计算的结果,则可以相应的先查找出相关的统计结果,然后对统计结果做进一步运算,从而得到所以查询的结果进行反馈。
可选地,步骤S203的一种具体实施方式,如图5所示,具体可以包括以下步骤:
S501、确定每个数据矩形的ID。
其中,数据矩形的ID为二进制编码,并且数据矩形的ID与每个数据维度相关。具体可以每个数据维度对应有数据矩形的ID中的一位。
具体的,每个数据矩形的ID为具有多位的二进制编码,并且该ID的位数不能少于定义的所有数据维度的数量,并且每个数据维度对应有数据矩形的ID中的一位。例如,数据矩形的ID为8位,所以的数据维度为3个,分别为时间、手机品牌和国家,那么对于(时间,手机,国家)的数据组合对应的数据矩形的ID可以为:00000111;对于(时间,国家)的数据组合对应的数据矩形的ID为:00000101。
S502、分别针对每个数据矩形,将数据矩形的ID分别与数据矩形对应的统计结果集合中各个统计结果对应的词典编码组合,得到每个统计结果对应的键。
其中,统计结果对应的词典编码指代其所属的各个数据维度下的类别的词典编码。需要说明的是,对于词典编码的创建过程,可以相应的参考步骤S302下的具体说明过程,此处不再赘述。
在本申请实施例中,采用数据库Hbase存储统计结果集合。并采用数据矩形的ID和对应的词典编码组成RowKey,即组成键值对中的键,从而根据RowKey就可以知道对应的值为哪个数据维度集合中的哪个数据维度下的统计结果,更便于对统计集合的查询。例如,基于步骤S302下举例的词典编码的离子,对于2011年苹果手机销量这一统计结果,其所属的数据矩形的ID为00000110,时间维度下的2011年的词典编码为1,苹果手机的词典编码为0,则组合后得到的键为:0000011010。
S503、分别将每个数据矩形对应的统计结果作为值,与其对应的键组合为键值对,并存储至数据库中。
可选地,在执行步骤S203之后,若当接收到报表***发送的查询请求时,从数据库中查询出相关的统计结果,并利用统计结果生成所述查询请求所请求的目标数据,然后目标数据作为查询结果反馈给所述报表***进行处理并展示。
其中,报表***通过提供的数据库连接直接发送查询请求。
具体的,在业务数据处理***为开源的分布式分析引擎Apache Kylin来实现时,该引擎所提供的Java数据库连接,与现有的报表***BI所支持的连接的格式相一致,所以可以实现两者的直接连接,不需中间的数据转换过程。所以报表***可以直接通过提供的数据库连接发送查询请求。因此在具体应用过程中,具体可以如图6所示,业务***将业务数据存储至数据仓库,当然也可以从数据仓库获取业务数据办理业务,分析引擎ApacheKylin从数据仓库获取业务数据并进行处理,得到统计结果集合,然后在通过BI进行查询时,将相应的统计集合反馈给BI进行展示。
本申请实施例提供的一种业务数据的处理方法,通过获取业务***产生的业务数据,然后基于创建的数据模型,分别在数据模型中定义的多个数据维度组成的多个数据维度组合下,对业务数据进行统计计算,得到每个数据维度对应的统计结果集合,从而实现对业务数据在多个数据维度组合下的预计算。然后,将每个数据维度组合对应的统计结果集合存储至数据库中,供后续接收到查询请求时,用于生成查询结果。从而通过对业务数据的预计算,不仅减少了数据量,并且可以免除或减少了查询时的计算过程,有效地提高了数据的查询效率。
本申请另一实施例提供了一种业务数据的处理装置,如图7所示,具体包括以下单元:
获取单元701,用于获取业务***产生的业务数据。
计算单元702,用于基于创建的数据模型,分别在多个数据维度组合下对业务数据进行统计计算,得到每个数据维度组合对应的统计结果集合。
其中,数据模型中定义有多个数据维度;每一个数据维度组合均由至少一个数据维度组成。
第一存储单元703,用于将每个数据维度组合对应的统计结果集合存储至数据库中。
其中,统计结果集合中包含的统计结果用于在接收到查询请求时,生成与查询请求对应的查询结果。
可选地,本申请另一实施例提供的业务数据的处理装置中,计算单元,如图8所示,包括以下单元:
创建单元801,用于基于创建的数据模型,创建一张宽表。
其中,宽表中包括多个数据维度以及业务数据。
去重单元802,用于对宽表中的多个数据维度进行去重。
第一计算单元803,用于在基础数据维度组合下,对宽表中的业务数据进行统计,得到最低级的数据矩形对应的统计结果集合。
其中,基础数据维度组合指代所有数据维度组成的数据维度组合。一个数据矩形对应一个数据维度组合。
第二计算单元804,用于依次基于下一级的数据矩形对应的统计结果集合,计算得到上一级的数据矩形对应的统计结果集合。
其中,下一级的数据矩形对应的数据维度组合的数据维度的数量,比上一级数据矩形对应的数据维度组合的数据维度的数量多。
可选地,在本申请另一实施例提供的业务数据的处理装置中,第一存储单元,如图9所示,包括以下单元:
确定单元901,用于确定每个数据矩形的ID。
其中数据矩形的ID为二进制编码,并且数据矩形的ID与每个数据维度相关。
组合单元902,用于分别针对每个数据矩形,将数据矩形的ID分别与数据矩形对应的统计结果集合中各个统计结果对应的词典编码组合,得到每个统计结果对应的键。
其中,统计结果对应的词典编码指代其所属的各个数据维度下的类别的词典编码。
第一存储子单元903,用于分别将每个统计结果作为值,与其对应的键组合为键值对,并存储至数据库中。
可选地,本申请另一实施例提供的业务数据的处理装置中,还可以进一步包括以下单元:
第二存储单元,用于将业务数据存储至过渡数据库中。
数据传输单元,用于定时导出过渡数据库中全量的业务数据的SCV文件,并SCV文件导入数据仓库中,覆盖数据仓库中的数据。
可选地,本申请另一实施例提供的业务数据的处理装置中,还可以进一步包括以下单元:
查询单元,用于当接收到报表***发送的查询请求时,从数据库中查询出相关的统计结果。
其中,报表***通过提供的数据库连接直接发送查询请求。
生成单元,用于利用统计结果生成查询请求所请求的目标数据,并将目标数据作为查询结果反馈给报表***进行处理并展示。
需要说明的是,本申请上述实施例提供的各个单元的具体工作过程可相应地参考上述方法实施例中的相应的步骤的具体实施方式,此处不再赘述。
本申请提供的一种业务数据的处理装置,通过获取单元获取业务***产生的业务数据,然后计算单元基于创建的数据模型,分别在数据模型中定义的多个数据维度组成的多个数据维度组合下,对业务数据进行统计计算,得到每个数据维度对应的统计结果集合,从而实现对业务数据在多个数据维度组合下的预计算。最后,第一存储单元将每个数据维度组合对应的统计结果集合存储至数据库中,供后续在接收到查询请求时,生成查询结果。从而通过对业务数据的预计算,不仅减少了数据量,并且可以免除或减少了查询时的计算过程,有效地提高了数据的查询效率。
本申请另一实施例提供了一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,用于实现如上述任意一个实施例提供的深度图像的生成方法。
其中,具体的实现过程可相应地参考上述方法实施例中的各个步骤的具体实施过程,此处不再赘述。
计算机存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (8)

1.一种业务数据的处理方法,其特征在于,包括:
获取业务***产生的业务数据;
将所述业务数据存储至过渡数据库中;其中,所述过渡数据库的增删改查性能优于所述数据仓库;
定时导出所述过渡数据库中全量的所述业务数据的CSV文件,并将所述CSV文件导入数据仓库中;
基于创建的数据模型,分别在多个数据维度组合下对所述业务数据进行统计计算,得到每个所述数据维度组合对应的统计结果集合;其中,所述数据模型中定义有多个数据维度;每一个所述数据维度组合均由至少一个所述数据维度组成;所述多个数据维度组合包括基础数据维度组合和基础数据维度组合的上一级数据维度组合;
将每个所述数据维度组合对应的统计结果集合存储至数据库中;其中,所述统计结果集合用于在接收到查询请求时,生成与所述查询请求对应的查询结果,其中,所述查询结果是通过对与所述查询请求相关的统计结果做进一步运算而得到的结果。
2.根据权利要求1所述的方法,其特征在于,所述基于创建的数据模型,分别在多个数据维度组合下对所述业务数据进行统计计算,得到每个所述数据维度组合对应的统计结果集合,包括:
基于创建的所述数据模型,创建一张宽表;其中,所述宽表中包括所述多个数据维度以及所述业务数据;
对所述宽表中的所述多个数据维度进行去重;
在基础数据维度组合下,对所述宽表中的所述业务数据进行统计,得到最低级的数据矩形对应的统计结果集合;其中,所述基础数据维度组合指代所有所述数据维度组成的数据维度组合;一个所述数据矩形对应一个所述数据维度组合;
依次基于下一级的数据矩形对应的统计结果集合,计算得到上一级的数据矩形对应的统计结果集合;其中,下一级的数据矩形对应的数据维度组合的数据维度的数量,比上一级的数据矩形对应的数据维度组合的数据维度的数量多。
3.根据权利要求2所述的方法,其特征在于,所述将每个所述数据维度组合对应的统计结果集合存储至数据库中,包括:
确定每个所述数据矩形的ID;其中,所述数据矩形的ID为二进制编码,并且所述数据矩形的ID与每个所述数据维度相关;
分别针对每个所述数据矩形,将所述数据矩形的ID分别与所述数据矩形对应的统计结果集合中各个统计结果对应的词典编码组合,得到每个所述统计结果对应的键;其中,所述统计结果对应的词典编码指代其所属的各个所述数据维度下的类别的词典编码;
分别将每个所述统计结果作为值,与其对应的键组合为键值对,并存储至数据库中。
4.根据权利要求1所述的方法,其特征在于,所述将每个所述数据维度组合对应的统计结果集合存储至数据库中之后,还包括:
当接收到报表***发送的查询请求时,从所述数据库中查询出相关的统计结果;其中,所述报表***通过数据库连接直接发送所述查询请求;
利用所述统计结果生成所述查询请求所请求的目标数据,并将所述目标数据作为查询结果反馈给所述报表***进行处理并展示。
5.一种业务数据的处理装置,其特征在于,包括:
获取单元,用于获取业务***产生的业务数据;
计算单元,用于基于创建的数据模型,分别在多个数据维度组合下对所述业务数据进行统计计算,得到每个所述数据维度组合对应的统计结果集合;其中,所述数据模型中定义有多个数据维度;每一个所述数据维度组合均由至少一个所述数据维度组成;所述多个数据维度组合包括基础数据维度组合和基础数据维度组合的上一级数据维度组合;
第一存储单元,用于将每个所述数据维度组合对应的统计结果集合存储至数据库中;其中,所述统计结果集合中包含的统计结果用于在接收到查询请求时,生成与所述查询请求对应的查询结果,其中,所述查询结果是通过对与所述查询请求相关的统计结果做进一步运算而得到的结果;
第二存储单元,用于将所述业务数据存储至过渡数据库中;
数据传输单元,用于定时导出所述过渡数据库中全量的所述业务数据的CSV文件,并所述CSV文件导入数据仓库中,覆盖所述数据仓库中的数据。
6.根据权利要求5所述的装置,其特征在于,所述计算单元,包括:
创建单元,用于基于创建的所述数据模型,创建一张宽表;其中,所述宽表中包括所述多个数据维度以及所述业务数据;
去重单元,用于对所述宽表中的所述多个数据维度进行去重;
第一计算单元,用于在基础数据维度组合下,对所述宽表中的所述业务数据进行统计,得到最低级的数据矩形对应的统计结果集合;其中,所述基础数据维度组合指代所有所述数据维度组成的数据维度组合;一个所述数据矩形对应一个所述数据维度组合;
第二计算单元,用于依次基于下一级的数据矩形对应的统计结果集合,计算得到上一级的数据矩形对应的统计结果集合;其中,下一级的数据矩形对应的数据维度组合的数据维度的数量,比上一级的数据矩形对应的数据维度组合的数据维度的数量多。
7.根据权利要求6所述的装置,其特征在于,所述第一存储单元,包括:
确定单元,用于确定每个所述数据矩形的ID;其中,所述数据矩形的ID为二进制编码,并且所述数据矩形的ID与每个所述数据维度相关;
组合单元,用于分别针对每个所述数据矩形,将所述数据矩形的ID分别与所述数据矩形对应的统计结果集合中各个统计结果对应的词典编码组合,得到每个所述统计结果对应的键;其中,所述统计结果对应的词典编码指代其所属的各个所述数据维度下的类别的词典编码;
第一存储子单元,用于分别将每个所述统计结果作为值,与其对应的键组合为键值对,并存储至数据库中。
8.一种计算机存储介质,其特征在于,用于存储计算机程序,所述计算机程序被执行时,用于实现如权利要求1至4任意一项所述的业务数据的处理方法。
CN202110378394.4A 2021-04-08 2021-04-08 业务数据的处理方法及装置、计算机存储介质 Active CN113094409B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110378394.4A CN113094409B (zh) 2021-04-08 2021-04-08 业务数据的处理方法及装置、计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110378394.4A CN113094409B (zh) 2021-04-08 2021-04-08 业务数据的处理方法及装置、计算机存储介质

Publications (2)

Publication Number Publication Date
CN113094409A CN113094409A (zh) 2021-07-09
CN113094409B true CN113094409B (zh) 2024-07-12

Family

ID=76675303

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110378394.4A Active CN113094409B (zh) 2021-04-08 2021-04-08 业务数据的处理方法及装置、计算机存储介质

Country Status (1)

Country Link
CN (1) CN113094409B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106484875A (zh) * 2016-10-13 2017-03-08 广州视源电子科技股份有限公司 基于molap的数据处理方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106997386B (zh) * 2017-03-28 2019-12-27 上海跬智信息技术有限公司 一种olap预计算模型、自动建模方法及自动建模***
CN110222029A (zh) * 2019-05-09 2019-09-10 国网上海市电力公司 一种大数据多维分析计算效率提升方法及***
CN111475509A (zh) * 2020-04-03 2020-07-31 李俊宏 一种基于大数据的用户画像和多维分析***

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106484875A (zh) * 2016-10-13 2017-03-08 广州视源电子科技股份有限公司 基于molap的数据处理方法及装置

Also Published As

Publication number Publication date
CN113094409A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
CN109902071B (zh) 业务日志存储方法、***、装置及设备
US10242116B2 (en) Grid-based geofence data indexing
CN106528787B (zh) 一种基于海量数据多维分析的查询方法及装置
TW201800967A (zh) 分布式流式資料處理的方法和裝置
CN111061758B (zh) 数据存储方法、装置及存储介质
CN111813840B (zh) 一种数据处理方法、设备及存储介质
CN112214472A (zh) 气象格点数据的存储及查询方法、装置及存储介质
WO2024153011A1 (zh) 无损压缩方法、电子设备及存储介质
CN106844288B (zh) 一种随机字符串生成方法及装置
CN109800278A (zh) 数据资产图谱使用方法、装置、计算机设备和存储介质
CN108205571B (zh) 键值数据表的连接方法及装置
CN114925041A (zh) 一种数据查询方法及装置
CN113094409B (zh) 业务数据的处理方法及装置、计算机存储介质
CN112162951A (zh) 一种信息检索方法、服务器及存储介质
CN110851758B (zh) 一种网页访客数量统计方法及装置
CN115496044A (zh) 一种在线表格数据生成方法、设备及介质
CN115455111A (zh) 一种异构空间数据库数据同步方法、装置及电子设备
CN109086309B (zh) 一种指标维度关系定义方法、服务器及存储介质
CN104216919A (zh) 用于完善电子地图数据的方法及***
CN113836169A (zh) 一种基于Clickhouse的数据处理方法、设备及介质
CN103544305A (zh) 基于双哈希结构二维动态联系人查询列表查询方法及***
CN113763099A (zh) 一种数据查找方法、装置、设备和存储介质
CN112685557A (zh) 可视化信息资源管理方法及装置
CN112667859A (zh) 基于内存的数据处理方法及装置
CN110990394A (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
CB02 Change of applicant information

Country or region after: China

Address after: No. 308 Guang'anmen Inner Street, Xicheng District, Beijing, 100053

Applicant after: State Grid Digital Technology Holdings Co.,Ltd.

Applicant after: State Grid E-Commerce Technology Co.,Ltd.

Address before: 311 guanganmennei street, Xicheng District, Beijing 100053

Applicant before: STATE GRID ELECTRONIC COMMERCE Co.,Ltd.

Country or region before: China

Applicant before: State Grid E-Commerce Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant