一种基于HBase的税收统计报表存储与计算的方法

文档序号:6634656阅读:152来源:国知局
一种基于HBase的税收统计报表存储与计算的方法
【专利摘要】本发明公开了一种基于HBase的税收统计报表存储与计算的方法,包括以下步骤:1)构建基于HBase的税收统计报表;2)基于HBase的税收统计报表的动态扩展;3)基于HBase的税收统计报表的税收统计数据读取类型分类及相应税收元统计计算操作构建;4)基于HBase的税收统计报表的税收元统计计算操作。本发明方法充分利用HBase读写性能高效、节约存储空间以及动态扩展方便的性能特征,实现对税收数据在一定周期内的税收统计结果的有效存储与计算分析。
【专利说明】一种基于HBase的税收统计报表存储与计算的方法

【技术领域】
[0001] 本发明属于税收数据处理【技术领域】,具体涉及一种基于HBase的税收统计报表存 储与计算的方法。

【背景技术】
[0002] 税收种类繁多,类目庞杂,在征收及统计过程中会产生大量税收数据。不同税目有 不同的征收标准及征收办法,则产生税收数据的频率各不相同,存储单元的读取频率也不 同,存储结构上是稀疏矩阵,因此该类数据的存储和计算成为值得研究的问题。
[0003] 现有技术中,针对税收数据如何有效的存储和计算,以下专利和论文提供了不同 的技术方案:
[0004] 文献1 :一种基于云计算的税控系统,申请号为201110090511. 3的中国专利,公开 了一种基于云计算的税控系统,主要包括三部分:云端服务器、客户端税控器以及税控管理 系统。其所述云端服务器对税控器进行管理,税控器可以通过通信网络与其进行数据交换。 税控管理系统通过通信网络与税控器通信,验证和存储税控器发送的消息,并管理后台消 息。这样形成了一种基于云计算的税控系统。
[0005] 文献 2 :Hongmei Wang, Zhen Yuan, Yanxia Li, et, al. The Design of the Data Warehouse fRO the National and LCOal Tax InfROmation Comparison[C] :CMCE,2010:309-311。该文献提出一种用于国家和地方税务信息比较的数 据库设计方法,包括数据源,ETL,信息同步,主题数据库以及多维数据库五个部分。通过主 题决策、概念模型、逻辑模型和物理模型的设计以及税收系统税种税目粒度的控制,实现税 收过程中欺诈行为及异常数据的识别。该系统基于传统数据库SQL Server实现。
[0006] 上述现有技术的方法存在以下问题:文献1提出一种基于云平台的税控系统,只 提出大概的系统框架以及管理思路,并没有具体分析税收数据和存储结构之间的关联及适 应程度,也没有指出具体存储数据的媒介。其主旨在于税控系统的构建,而并未着眼于数据 存储及读取的技术细节,和本文所述有很大区别。文献2提出一种应用于国家和地方税收 的数据库设计方法,但是基于传统的数据库实现,在数据的处理以及数据库的管理上具有 传统数据库的局限性。


【发明内容】

[0007] 为了克服上述现有技术存在的缺陷,本发明的目的在于提供一种基于HBase的税 收统计报表存储与计算的方法,该方法充分利用HBase读写性能高效、节约存储空间以及 动态扩展方便的性能特征,实现对税收数据在一定周期内的税收统计结果的有效存储与计 算分析。
[0008] 本发明是通过以下技术方案来实现:
[0009] 一种基于HBase的税收统计报表存储与计算的方法,包括以下步骤:
[0010] 1)构建基于HBase的税收统计报表
[0011] 建立税收统计报表与HBase表的结构映射关系,并构建基于HBase的税收统计报 表;
[0012] 所述税收统计报表指对不同企业在一定时间段内所产生的不同税种、不同税目、 可动态扩展、支持多种数据分析及处理粒度、增量的税收统计数据所建立的报表;
[0013] 2)基于HBase的税收统计报表的动态扩展
[0014] 当产生新增税目时,对步骤1)中所构建的基于HBase的税收统计报表进行动态扩 展,对基于HBase的税收统计报表中所存储的所有税目进行列名判断:若基于HBase的税收 统计报表中存在与新增税目相对应的列,则不扩展税收统计报表;反之,则扩展基于HBase 的税收统计报表的列,并将该新增列的列名命名为新增税目的税目名;
[0015] 3)基于HBase的税收统计报表的税收统计数据读取类型分类及相应税收元统计 计算操作构建
[0016] 基于HBase的税收统计报表中,税收统计数据存储方式分为三类:按行存储、按列 存储以及行列同时存储;将税收统计报表中所存储的税收统计数据的读取方式分为按行读 取、按列读取和行列同时读取,并分别针对三类不同的税收统计数据读取方式构建相应的 税收元统计计算操作;
[0017] 4)基于HBase的税收统计报表的税收元统计计算操作
[0018] 设定HBase过滤器及扫描器的参数范围,过滤器包括比较过滤器、行过滤器、列过 滤器和时间戳过滤器,应用过滤器及扫描器读取基于HBase的税收统计报表中的税收统计 数据,对税收统计数据进行税收元统计计算操作分类,然后进行相应税收元统计计算操作, 分析表中存储的税收统计数据。
[0019] 所述基于HBase的税收统计报表与税务统计报表的条目之间的映射关系如下:
[0020]

【权利要求】
1. 一种基于HBase的税收统计报表存储与计算的方法,其特征在于,包括以下步骤: 1) 构建基于HBase的税收统计报表 建立税收统计报表与HBase表的结构映射关系,并构建基于HBase的税收统计报表; 所述税收统计报表指对不同企业在一定时间段内所产生的不同税种、不同税目、可动 态扩展、支持多种数据分析及处理粒度、增量的税收统计数据所建立的报表; 2) 基于HBase的税收统计报表的动态扩展 当产生新增税目时,对步骤1)中所构建的基于HBase的税收统计报表进行动态扩展, 对基于HBase的税收统计报表中所存储的所有税目进行列名判断:若基于HBase的税收统 计报表中存在与新增税目相对应的列,则不扩展税收统计报表;反之,则扩展基于HBase的 税收统计报表的列,并将该新增列的列名命名为新增税目的税目名; 3) 基于HBase的税收统计报表的税收统计数据读取类型分类及相应税收元统计计算 操作构建 基于HBase的税收统计报表中,税收统计数据存储方式分为三类:按行存储、按列存储 以及行列同时存储;将税收统计报表中所存储的税收统计数据的读取方式分为按行读取、 按列读取和行列同时读取,并分别针对三类不同的税收统计数据读取方式构建相应的税收 元统计计算操作; 4) 基于HBase的税收统计报表的税收元统计计算操作 设定HBase过滤器及扫描器的参数范围,过滤器包括比较过滤器、行过滤器、列过滤 器和时间戳过滤器,应用过滤器及扫描器读取基于HBase的税收统计报表中的税收统计数 据,对税收统计数据进行税收元统计计算操作分类,然后进行相应税收元统计计算操作,分 析表中存储的税收统计数据。
2. 根据权利要求1所述的基于HBase的税收统计报表存储与计算的方法,其特征在于, 所述基于HBase的税收统计报表与税务统计报表的条目之间的映 射关系如下:
其中,行键是数据库中的行名称,具有唯一性特征,以企业的注册名作为行键;列是存 储数据的逻辑结构,以税目名作为列名,每一列存储同名税目的税收周期统计数据;列族是 若干列的集合,以税种名作为列族名,税种是若干税目的集合;存储单元是行键和列所对应 的单元格,用来存储税收周期统计数据;时间戳是HBase存储的版本标识,每一个统计周期 内,HBase数据库系统对所存储的税收统计数据添加该统计周期的时间戳,以标识数据的有 效期。
3. 根据权利要求1所述的基于HBase的税收统计报表存储与计算的方法,其特征在于, 针对新增税目,步骤2)所述的基于HBase的税收统计报表的动态扩展具体方法如下: 对于新增税目I,遍历基于HBase的税收统计报表中的所有列族,判断是否存在该税目 所属列族F :如果F不存在,则新建该列族并命名为F,然后在该列族F下,新建与税目I同 名的列I,然后存储税目I的相关税收统计数据; 如果存在新增税目I所属的列族F,则遍历该列族下的所有列:如果存在与税目I同名 的列I,则在该列中存储税目I的相关税收统计数据;否则,在该税目所属列族F下新建与 税目I同名的列I,并在该列中存储税目I的税收统计数据。
4. 根据权利要求3所述的基于HBase的税收统计报表存储与计算的方法,其特征在于, 针对步骤3)所述的税收统计报表中所存储的税收统计数据的读取方式分为按行读取、按 列读取和行列同时读取三种方式,构建相应的税收元统计计算操作: 1) 按行税收元统计计算操作:针对税目I,在统计周期T内关于企业E的相关税收元统 计计算操作: ① 计算基于HBase的税收统计报表中,与企业E相对应的行E所存储的税收统计数据 的总和,其中E表示HBase表中的行键; ② 计算基于HBase的税收统计报表中,行E所存储的税收统计数据的平均值; ③ 计算基于HBase的税收统计报表中,行E所存储的税收统计数据的最大值或最小 值; ④ 计算基于HBase的税收统计报表中,与多个企业Ei?&相对应的行Ei?&所存储 的税收统计数据的总和,其中E i?&表示HBase表中多个行的集合; ⑤ 计算基于HBase的税收统计报表中,行Ei?&所存储的税收统计数据的平均值; ⑥ 计算基于HBase的税收统计报表中,行Ei?&所存储的税收统计数据的最大值或最 小值; 2) 按列税收元统计计算操作:针对企业E,在统计周期T内关于税目I的相关税收元统 计计算操作: ① 计算基于HBase的税收统计报表中,与税目I相对应的列I所存储的税收统计数据 的总和,其中I表示HBase表中的列名; ② 计算基于HBase的税收统计报表中,列I所存储的税收统计数据的平均值; ③ 计算基于HBase的税收统计报表中,列I所存储的税收统计数据的最大值及最小 值; ④ 计算基于HBase的税收统计报表中,与多个税目Im?In相对应的列Im?I n所存储 的税收统计数据的总和,其中Ini?In表示HBase表中多个列的集合; ⑤ 计算基于HBase的税收统计报表中,列Im?In所存储的税收统计数据的平均值; ⑥ 计算基于HBase的税收统计报表中,列Im?In所存储的税收统计数据的最大值或最 小值; 3) 行列同时税收元统计计算操作:针对多个税目Im?In及多个企业Ei?&,在统计 周期T内的相关税收元统计计算操作: ①计算基于HBase的税收统计报表中,与多个税目Im?In及多个企业Ei?E j分别对 应的,多个列Im?In及多个行Ei?&所存储的税收统计数据的总和,其中,E i?&表示 Hbase表中多个行的集合,Im?In表示HBase表中多个列的集合; ② 计算基于HBase的税收统计报表中,多个列Im?In及多个行Ei?&所存储的税收 统计数据的平均值; ③ 计算基于HBase的税收统计报表中,多个列Im?In及多个行Ei?&所存储的税收 统计数据的最大值或最小值。
5.根据权利要求4所述的基于HBase的税收统计报表存储与计算的方法,其特征在于, 行列同时税收元统计计算操作所述的针对多个税目Im?In及多个企业Ei?&,在统计周 期T内的税收元统计计算操作,包括以下步骤: Stepl :连接基于HBase的税收统计报表; Step2 :建立 HBase 扫描器 Scanner ; Step3 :建立HBase过滤器,包括行键过滤器RowFilter、列名过滤器QualifierFilter 及时间戳过滤器TimeStampFilter ; Step3. 1 :设置行键过滤器RowFilter的参数,为目标所需的行键Ei?Ej的范围,向行 键过滤器中添加比较过滤器CompareFilter,比较过滤器支持大于、小于、相等及排除比较 方法以及正则表达式匹配; Step3. 2 :设置列名过滤器QualifierFilter的参数,为目标所需的列名Im?In的范 围,向列名过滤器中添加比较过滤器CompareFilter,比较过滤器支持大于、小于、相等及排 除比较方法以及正则表达式匹配; Step3. 3 :根据给定的统计周期T,设置时间戳过滤器TimeStampFilter,具体方法为: 计算出该统计周期的时间上下限Tg?Th,并将此范围内的时间戳添加到时间戳过滤器中; Step4 :向扫描器Scanner添加上述三种过滤器,包括行键过滤器RowFiIter、列名过滤 器QualifierFilter及时间戳过滤器TimeStampFilter,运行扫描器,扫描基于HBase的税 收统计报表: 其中,RowFilter过滤基于HBase的税收统计报表,得到行键Ei?Ej及其所存储的税 收统计数据,其中Ei?Ej表示HBase表中多个行的集合;QualifierFilter过滤基于HBase 的税收统计报表,得到列名Im?In及其所存储的税收统计数据,其中Im?I n表示HBase表 中多个列的集合;TimeStampFilter过滤基于HBase的税收统计报表,得到时间戳T g?Th 所对应的税收统计数据,其中Tg?Th表示统计周期T的时间上下限; 将所得扫描结果数据保存为矩阵形式,可得税收矩阵数据集; Step5 :对税收矩阵数据集进行行列同时税收元统计计算操作; Step6 :关闭 HBase 扫描器 Scanner ; St印7 :关闭基于HBase的税收统计报表。
【文档编号】G06F17/30GK104391910SQ201410658492
【公开日】2015年3月4日 申请日期:2014年11月17日 优先权日:2014年11月17日
【发明者】郑庆华, 马天, 李冰, 贺欢, 阮建飞, 张镇潮, 施建生, 王培勇, 钱运辉 申请人:西安交通大学, 税友软件集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1