[发明专利]一种HBase数据库存储上网记录的方法和系统在审
申请号: | 201410337176.6 | 申请日: | 2014-07-15 |
公开(公告)号: | CN104102711A | 公开(公告)日: | 2014-10-15 |
发明(设计)人: | 尹为强;罗云彬;彭佳;王伟华 | 申请(专利权)人: | 中国联合网络通信集团有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 王康;栗若木 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 hbase 数据库 存储 上网 记录 方法 系统 | ||
技术领域
本发明涉及HBase数据库对上网记录进行存储的方法和系统。
背景技术
移动终端通过无线上网每天能够产生数以亿计,占用存储空间TB量级的上网记录。目前采用分布式数据库HBase存储这些上网记录。基于查询的需要,目前分别以“公网IP地址+上网开始时间”以及“网页地址URL+上网开始时间”为行健存储上网记录,如表1、表2所示。
表1
表2
表1中公网IP地址为移动终端通过防火墙之后的公网IP地址,同一时刻使用该公网IP地址的移动终端允许多个,不同的移动终端之间建立的上网链路以不同的端口号进行区分,按表1的方式存储上网记录,后存储的上网记录会覆盖先存储的与之相同行健的上网记录,造成上网记录丢失,即实际得到的表1中仅能显示一条记录。若按表2的方式存储上网记录,由于不同移动终端存在同时访问相同网页的情况,因此相同网页地址、相同上网开始时间对应的上网记录不只一条,后存储的上网记录也会覆盖先存储的与之相同行健的上网记录,造成上网记录丢失。
为了避免丢失上网记录,目前有两种解决方法:一是利用HBase存储值Value的多版本特性,进行Value扩展存储上网记录;二是利用HBase列能够任意动态扩展的特点,进行Column列扩展存储上网记录。
利用Value的多版本特性进行存储以及进行Column列扩展进行存储包括:将上网记录单独存储在一个表格中,该表格称为内容表,其中,将与上网记录对应的通用唯一识别码(UUID)作为行健值,如表3所示;其中UUID的计算过程为现有技术,其在计算的过程中以当前主机网卡的MAC地址和主机当前为计算参数,现有的API接口可直接生成UUID。由于不同终端对应的MAC地址不同,因此不同终端产生的上网记录对应不同的UUID不同;对于相同终端,由于每条记录对应的上网开始时间不同,因此相同终端在不同时间段产生的上网记录对应的UUID也不同。
表3
对于多版本特性存储,还包括:建立索引表,该索引表中以“公网IP+上网开始时间”或“URL+上网开始时间”为行健值,以UUID为内容value,允许相同的行健值对应多个UUID,每个UUID对于一个版本号,不同的版本号用于标识HBase数据库记录上网记录的系统时间戳的大小,版本号越大对应的系统时间戳越大,说明记录的上网记录越新,如表4所示。现有的HBase数据库通常运行在linux系统上并且基于java语言实现,所述系统时间戳是java语言的固有参数,其记录了从1970年1月1日至linux系统当前时间的毫秒数。
表4
对于Column列扩展存储,还包括:建立索引表,该索引表中以“公网IP+上网开始时间”或“URL+上网开始时间”为行健值,以UUID为列名,由于HBase列能够任意动态扩展,允许相同的行健值对应多个列名。该索引表不需要使用“内容value”,如表5所示,其中,列名这一列中的标识“cf:”表示列簇。
表5
虽然利用Value多版本特性进行存储以及进行Column列扩展进行存储能够克服上网记录的丢失的问题,但由于索引表一个行健值对应的数据不唯一,当有新的上网记录需要存储进HBase数据库时,对于建立的索引表,不仅要按照行健值排序以合并相同的行健值对应的上网记录标识,而且还要进行“列名排序”(对应Column列扩展存储)或者进行“版本号排序”(对应多版本特性存储)以加快HBase数据库检索到上网记录的速度。
如现有的HBase数据中以多版本特性的方式存储上网记录,其内容表如表3所示,索引表如表4所示,当有一条新的上网记录“18511535972|2013-10-04:22:59:57|2013-10-04:23:00:10|10.8.237.244|114.242.248.110|42836|123.125.65.115|80|http://loc.map.baidu.com/sdk.php”需要存储进HBase数据库时,内容表进行更新,如表6所示;
表6
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国联合网络通信集团有限公司,未经中国联合网络通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410337176.6/2.html,转载请声明来源钻瓜专利网。