一种基于Hbase数据库的数据统计方法与系统技术方案

技术编号:15391633 阅读:113 留言:0更新日期:2017-05-19 04:51
本申请公开了一种基于Hbase数据库的数据统计方法与系统,根据接收到的数据创建数据的存储格式,该存储格式中行键RowKey由统计粒度与数据的固定统计类型构成,列Column由可配的统计类型名称与统计值拼接构成,根据第一统计粒度与存储格式将数据存入Hbase,当用户指定的第二统计粒度与第一统计粒度不一致时,则根据第二统计粒度与存储格式确定合并格式,并根据合并格式对存入到Hbase中的数据进行合并统计,减少了数据统计过程中对具体的统计粒度与统计类型的依赖,并提高了数据统计结果的实时性。

A data statistic method and system based on Hbase database

The invention discloses a method and system for statistical data based on Hbase database, create a data storage format according to the received data, the storage format of bank bond RowKey by fixed size and type of statistical data statistics, Column statistics by column types can be matched with the statistical value name is put together, according to the statistics of grain size and the first the storage format of the data stored in Hbase, when the second statistical user specified granularity and the first statistical grain size is uniform, according to second statistics to determine the combined size and storage format format, and according to the format of the merger into the Hbase in the data with statistics, to reduce the dependence on the size and type of specific statistical statistical data statistical process, and improve the real-time data.

【技术实现步骤摘要】
一种基于Hbase数据库的数据统计方法与系统
本专利技术涉及
,特别涉及一种基于Hbase数据库的数据统计方法,同时还特别涉及一种基于Hbase的数据统计系统。
技术介绍
当前是数据的时代,各种各样的数据堆积成山,如何在这些杂乱无章的数据中找出有规律的、基于某些维度的统计数据显得越来越重要。统计数据能够为决策、研究、分析等提供重要依据。所以一种快速、高效、实时、智能的统计方案能够带来重要的价值。HBase是一个分布式的、面向列的开源数据库,为一个结构化数据的分布式存储系统,。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库,另外,HBase基于列的而不是基于行的模式。现有的基于Hbase数据库的数据存储方法流程为:先从历史数据中按各个时间段查询出所有数据,然后每条数据根据表1中格式存入临时表Table1中,以过车数据存储为例,构建表Table1。表1其中,tollgate_code为卡口编码,lane_index为通道代码,vehicle_type为车辆类型,timestamp为时间戳,vehicle_speed为车辆车速。基于上述的临时表,当用户需要按照小时统计报表时,则在上述时间的划分过程中按照小时为时间段进行划分,然后将临时表Table1中的数据进行一小时一小时的汇总,然后存入到表Table2中,Table2如下:表2Table1和Table2的区别在于Table1的timestamp是直接用每条数据的过车时间,value是用每条数据的车辆速度;而Table2的timestamp是整小时的时间点,value是这一小时内的所有过车数据速度的平均值和过车数据的总数量的组合值。在实际的应用中,如果当用户需要统计日报、周报、月报、年报等,就需要再重新建表,然后把上一张表的数据进行汇总再存入到对应的表中,流程需要重新开发,运行时对系统的开销大。上述整个统计流程除了卡口编码以及通道代码,此外只能对车辆类型的数据进行统计。如果还需要对车辆颜色、违章类型等进行统计,就需要将上述流程重新走一遍,表也要新建,开发量大。专利技术人在实现本专利技术的过程中发现了现有技术中的以下几个问题:(1)可扩展性差,仍以上述的车辆信息为例,不管是时间维度上的时报、日报、周报、月报、年报等,还是统计类型维度上的车辆类型、车辆颜色、违章类型等,都是需要重新建表,重启进程或线程去做,这对这对系统的计算和内存的开销都比较大。而且不管是时间维度还是统计类型维度,都做不到可配,增加一个新的时间周期或者统计类型,都需要重新开发,工作量极大;(2)实时性差,由于现有技术中类似于上述方案的存储方法是从大量历史数据中查询出需要的时间段的数据,然后先存入临时表,再从临时表将数据汇总到需要的报表,数据来源为历史数据决定了这种方案的实时性不高。(3)开销大,上述的数据存储过程中是基于时间维度的统计粒度进行的,实际应用中如果在时间维度的统计粒度和统计类型维度上的统计类型都比较多时,由于这个流程会做大量的重复工作,所以对系统的开销会比较大。因此,如何减少对具体的统计粒度与统计类型的依赖已经成为本领域技术人员亟待解决的问题。
技术实现思路
本申请提供了一种基于Hbase数据库的数据统计方法与系统,旨在减少对具体的统计粒度与统计类型的依赖,并提高数据统计结果的实时性。本申请实施例提出了一种基于Hbase数据库的数据统计方法,所述方法包括:创建接收到的数据的存储格式,所述存储格式中行键RowKey由第一统计粒度与所述数据的固定统计类型拼接构成,所述存储格式中列Column由所述数据的可配置统计类型的名称和统计值拼接构成,其中,所述第一统计粒度为所述数据对应的最小统计粒度;根据所述第一统计粒度与所述存储格式将所述数据存入所述Hbase;当用户指定的第二统计粒度与所述第一统计粒度不一致时,则根据所述第二统计粒度与所述存储格式确定合并格式,并根据所述合并格式对存入到所述Hbase中的数据进行合并统计。优选的,还包括:所述存储格式中的value值包括所述数据统计结果的数量;确定所述数据中各数据单元所在的时间段,所述时间段与所述第一统计粒度对应;根据所述时间段为所述数据单元添加时间戳。优选的,根据所述存储格式将所述数据存入所述Hbase,具体包括:根据所述数据单元的时间戳将所述数据单元按照所述时间戳存入所述Hbase中对应的时间段;对所述时间段存入的各数据单元依次添加序列号进行区分。优选的,则根据所述第二统计粒度与所述存储格式确定合并格式,所述合并格式具体为:将所述RowKey中的第一统计粒度修改为所述第二统计粒度,对所述value值进行累加和求平均值后获取第二value值。优选的,根据所述合并格式对存入到所述Hbase中的数据进行合并统计,具体为:根据所述第二统计粒度对所述数据进行分组,将所述第二统计粒度对应的时间段的起始时间作为所述数据组的第二时间戳;根据所述第二统计粒度对应的时间段与所述合并格式获取与所述第二统计粒度对应的第二数据;根据所述第二时间戳将所述第二数据插入Hbase中。相应的,基于与上述相同的技术思路,本专利技术实施例还提出了一种基于于Hbase数据库的数据统计系统,所述系统包括:生成模块,创建接收到的数据的存储格式,所述存储格式中行键RowKey由第一统计粒度与所述数据的固定统计类型拼接构成,所述存储格式中列Column由所述数据的可配置统计类型的名称和统计值拼接构成,其中,所述第一统计粒度为所述数据对应的最小统计粒度;存储模块,根据所述第一统计粒度与所述存储格式将所述数据存入所述Hbase;合并模块,当用户指定的第二统计粒度与所述第一统计粒度不一致时,则根据所述第二统计粒度与所述存储格式确定合并格式,并根据所述合并格式对存入到所述Hbase中的数据进行合并统计。优选的,还包括:所述存储格式中的所述value值包括所述数据统计结果的数量;确定所述数据中各数据单元所在的时间段,所述时间段与所述第一统计粒度对应;根据所述时间段为所述数据单元添加时间戳。优选的,所述存储模块具体用于:根据所述数据单元的时间戳将所述数据单元按照所述时间戳存入所述Hbase中对应的时间段;对所述时间段存入的各数据单元依次添加序列号进行区分。优选的,所述合并格式具体为:将所述RowKey中的第一统计粒度修改为所述第二统计粒度,对所述value值进行累加和求平均值后获取第二value值。优选的,所述合并模块具体用于:根据所述第二统计粒度对所述数据进行分组,将所述第二统计粒度对应的时间段的起始时间作为所述数据组的第二时间戳;根据所述第二统计粒度对应的时间段与所述合并格式获取与所述第二统计粒度对应的第二数据;根据所述第二时间戳将所述第二数据插入Hbase中。本申请公开了一种基于Hbase数据库的数据统计方法与系统,根据接收到的数据的创建数据的存储格式,该存储格式中行键RowKey由统计粒度与数据的固定统计类型构成,列Column由可配的统计类型名称与统计值拼接构成,根据第一统计粒度与存储格式将数据存入Hbase,当用户指定的第二统计粒度与第一统计粒度不一致时,则根据第二统计粒度与存储格式确定合并格式,并根据合并格式对存入到Hbase中的数据进行合并统计,减少了数据统计本文档来自技高网
...
一种基于Hbase数据库的数据统计方法与系统

【技术保护点】
一种基于Hbase数据库的数据统计方法,其特征在于,所述方法包括:创建接收到的数据的存储格式,所述存储格式中行键RowKey由第一统计粒度与所述数据的固定统计类型拼接构成,所述存储格式中列Column由所述数据的可配置统计类型的名称和统计值拼接构成,其中,所述第一统计粒度为所述数据对应的最小统计粒度;根据所述第一统计粒度与所述存储格式将所述数据存入所述Hbase;当用户指定的第二统计粒度与所述第一统计粒度不一致时,则根据所述第二统计粒度与所述存储格式确定合并格式,并根据所述合并格式对存入到所述Hbase中的数据进行合并统计。

【技术特征摘要】
1.一种基于Hbase数据库的数据统计方法,其特征在于,所述方法包括:创建接收到的数据的存储格式,所述存储格式中行键RowKey由第一统计粒度与所述数据的固定统计类型拼接构成,所述存储格式中列Column由所述数据的可配置统计类型的名称和统计值拼接构成,其中,所述第一统计粒度为所述数据对应的最小统计粒度;根据所述第一统计粒度与所述存储格式将所述数据存入所述Hbase;当用户指定的第二统计粒度与所述第一统计粒度不一致时,则根据所述第二统计粒度与所述存储格式确定合并格式,并根据所述合并格式对存入到所述Hbase中的数据进行合并统计。2.如权利要求1所述的方法,其特征在于,还包括:所述存储格式中的value值包括所述数据统计结果的数量;确定所述数据中各数据单元所在的时间段,所述时间段与所述第一统计粒度对应;根据所述时间段为所述数据单元添加时间戳。3.如权利要求2所述的方法,其特征在于,根据所述存储格式将所述数据存入所述Hbase,具体包括:根据所述数据单元的时间戳将所述数据单元按照所述时间戳存入所述Hbase中对应的时间段;对所述时间段存入的各数据单元依次添加序列号进行区分。4.如权利要求3所述的方法,其特征在于,则根据所述第二统计粒度与所述存储格式确定合并格式,所述合并格式具体为:将所述RowKey中的第一统计粒度修改为所述第二统计粒度,对所述value值进行累加和求平均值后获取第二value值。5.如权利要求4所述的方法,其特征在于,根据所述合并格式对存入到所述Hbase中的数据进行合并统计,具体为:根据所述第二统计粒度对所述数据进行分组,将所述第二统计粒度对应的时间段的起始时间作为所述数据组的第二时间戳;根据所述第二统计粒度对应的时间段与所述合并格式获取与所述第二统计粒度对应的第二数据;根...

【专利技术属性】
技术研发人员:袁艳黄群
申请(专利权)人:浙江宇视科技有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1