一种基于HBase的卡口数据处理方法

文档序号:6550629阅读:163来源:国知局
一种基于HBase的卡口数据处理方法
【专利摘要】本发明涉及一种基于HBase的卡口数据处理方法,包括获取待存储的数据记录,判断数据量大小,如果是少量临时性数据,将少量临时性数据通过关系数据库SQL?server进行存储;如果是海量数据,判断海量数据的结构状态,如果为结构化数据,通过分布式数据库Hbase进行存储,如果为非结构化数据,通过文件系统HDFS进行存储。相对现有技术,本发明可以快速访问数据,提升数据处理效率,解决海量数据处理难题。
【专利说明】—种基于HBase的卡口数据处理方法

【技术领域】
[0001]本发明涉及计算机领域,特别涉及一种基于HBase的卡口数据处理方法。

【背景技术】
[0002]最近几年随着公安加大卡口系统(设置在交通要道等有防守和检查设施的出入口的监控系统)的建设,针对卡口系统的大范围联网和综合应用变的越来越重要。车辆通过卡口点位时系统需要提取并记录卡点信息、通过时间、车牌、车速、车牌颜色等详细信息。在传统的关系型数据库中,通常以车辆通行记录编号(唯一标识卡口点位的车辆经过记录)为主键、以车辆通行记录的各个属性为列,创建车辆通行记录信息表。但是随着卡口系统建设的数量的增加,卡口车辆信息的数据量也快速增长,已经达到了数十亿条记录的级另O,传统的关系型数据库已经无法满足系统的需求,必须采用新的技术手段来进行海量数据的快速处理。


【发明内容】

[0003]本发明所要解决的技术问题是提供一种快速访问数据,提升数据处理效率,解决海量数据处理难题的基于HBase的卡口数据处理方法。
[0004]本发明解决上述技术问题的技术方案如下:一种基于HBase的卡口数据处理方法,包括以下步骤:
[0005]步骤1:获取待存储的数据记录;
[0006]步骤2:判断数据量大小,如果是少量临时性数据(数据记录小于一亿条的数据),则执行步骤3 ;如果是海量数据(数据记录大于或等于一亿条的数据),则执行步骤4 ;
[0007]步骤3:将少量临时性数据通过关系数据库SQL server进行存储;
[0008]步骤4:判断海量数据的结构状态,如果为结构化数据(即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据),通过分布式数据库Hbase进行存储;如果为非结构化数据(不方便用数据库二维逻辑表来表现的数据),通过文件系统HDFS (HadoopDistributed File System,是一个分布式文件系统,HDFS有着高容错性的特点,并且设计用来部署在低廉的硬件上)进行存储。
[0009]本发明的有益效果是:通过对卡口数据的分类处理,提升了卡口的数据处理效率,解决了目前卡口系统中海量数据处理的难题。
[0010]在上述技术方案的基础上,本发明还可以做如下改进。
[0011]进一步技术方案,所述分布式数据库HBase (Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群)表结构的Row Key (Row key是分布式数据库HBase —系列二维数组的集合结构中的主键)采用36进制编码,36进制的I到4位表示相机对应的组织机构编号,36进制5到6位表不相机所在组织机构中对应卡点编号,36进制的第7位表不相机所在卡点中对应镜头编号,36进制的8到10位表示卡口车辆通行日期,36进制的11到14位表示卡口车辆通行时间,36进制的15到22位表示卡口车辆车牌号码,36进制的23到24位表示卡口车辆的速度、36进制的第25位表示车牌种类、36进制的第26位表示车牌号颜色,36进制的第27位表示车身颜色,36进制的28到29位表示汽车标志、36进制的第30位表示加密标识信息。
[0012]采用上述进一步方案的有益效果是:方便数据查找,可以使得新写入的数据在查找的时候被快速找到。
[0013]所述分布式数据库HBase表结构的Row Key同时存储到多个Region server (域服务器)。
[0014]采用上述进一步方案的有益效果是:通过多个Region server来分散多用户请求的压力。
[0015]所述通行日期和时间使用逆序的时间戳(一个字符序列,唯一的标识某一刻的时间)进行二进制存储。
[0016]采用上述进一步方案的有益效果是:每个卡口点相机抓拍数据中最新的数据存储在最前面,最新的数据的应用价值最大,也是大部分用户比较感兴趣的数据,通过这种方式可以大大加快了访问数据的速度。

【专利附图】

【附图说明】
[0017]图1为本发明一种基于HBase的卡口数据处理方法的流程图。

【具体实施方式】
[0018]以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
[0019]如图1所示,一种基于HBase的卡口数据处理方法,包括以下步骤:
[0020]步骤1:获取待存储的数据记录;
[0021]步骤2:判断数据量大小,如果是少量临时性数据,则执行步骤3 ;如果是海量数据,则执行步骤4;
[0022]步骤3:将少量临时性数据通过关系数据库SQL server进行存储;
[0023]步骤4:判断海量数据的结构状态,如果为结构化数据,通过分布式数据库Hbase进行存储;如果为非结构化数据,通过分布式文件系统HDFS进行存储。
[0024]所述分布式数据库HBase表结构的Row Key采用36进制编码,36进制的I到4位表示相机对应的组织机构编号,36进制5到6位表示相机所在组织机构中对应卡点编号,36进制的第7位表示相机所在卡点中对应镜头编号,36进制的8到10位表示卡口车辆通行日期,36进制的11到14位表示卡口车辆通行时间,36进制的15到22位表示卡口车辆车牌号码,36进制的23到24位表示卡口车辆的速度、36进制的第25位表示车牌种类、36进制的第26位表示车牌号颜色,36进制的第27位表示车身颜色,36进制的28到29位表示汽车标志、36进制的第30位表示加密标识信息。
[0025]所述分布式数据库HBase表结构的Row Key同时存储到多个Region server。
[0026]所述通行日期和时间使用逆序的时间戳进行二进制存储。
[0027]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种基于HBase的卡口数据处理方法,其特征在于:包括以下步骤: 步骤1:获取待存储的数据记录; 步骤2:判断数据量大小,如果是少量临时性数据,则执行步骤3 ;如果是海量数据,则执行步骤4 ; 步骤3:将少量临时性数据通过关系数据库SQL server进行存储; 步骤4:判断海量数据的结构状态,如果为结构化数据,通过分布式数据库Hbase进行存储;如果为非结构化数据,通过文件系统HDFS进行存储。
2.根据权利要求1所述一种基于HBase的卡口数据处理方法,其特征在于:所述分布式数据库HBase表结构的Row Key采用36进制编码,36进制的I到4位表示相机对应的组织机构编号,36进制5到6位表不相机所在组织机构中对应卡点编号,36进制的第7位表示相机所在卡点中对应镜头编号,36进制的8到10位表示卡口车辆通行日期,36进制的11到14位表示卡口车辆通行时间,36进制的15到22位表示卡口车辆车牌号码,36进制的23到24位表示卡口车辆的速度、36进制的第25位表示车牌种类、36进制的第26位表示车牌号颜色,36进制的第27位表示车身颜色,36进制的28到29位表示汽车标志、36进制的第30位表示加密标识信息。
3.根据权利要求1或2所述一种基于HBase的卡口数据处理方法,其特征在于:所述分布式数据库HBase表结构的Row Key同时存储到多个Reg1n server。
4.根据权利要求1或2所述一种基于HBase的卡口数据处理方法,其特征在于:所述通行日期和时间使用逆序的时间戳进行二进制存储。
【文档编号】G06F17/30GK104050271SQ201410284598
【公开日】2014年9月17日 申请日期:2014年6月23日 优先权日:2014年6月23日
【发明者】周海波, 郑兆妙, 蔡懿博 申请人:桂林长海科技有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1