《一种基于HBASE的数据散列处理方法及装置.pdf》由会员分享,可在线阅读,更多相关《一种基于HBASE的数据散列处理方法及装置.pdf(10页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104252535A43申请公布日20141231CN104252535A21申请号201410471421222申请日20140916G06F17/3020060171申请人福建新大陆软件工程有限公司地址350000福建省福州市马尾区儒江西路1号新大陆科技园72发明人朱爱军叶潇陈威林菓74专利代理机构福州市鼓楼区博深专利代理事务所普通合伙35214代理人林志峥54发明名称一种基于HBASE的数据散列处理方法及装置57摘要本发明公开一种基于HBASE的数据散列处理方法,包括步骤将HBASE的接口文件加载到HDFS分布式文件存储或装置中;将所述接口文件转换成HFILE存储格式;。
2、获取规范化处理后的接口文件中的各数据的KEY字段;根据每个KEY字段分别生成随机种子,并以HBASE的物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。本发明还公开一种基于HBASE的数据散列处理装置。本发明能均衡各节点的负载,提高节点访问效率。51INTCL权利要求书1页说明书4页附图4页19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书4页附图4页10申请公布号CN104252535ACN104252535A1/1页21一种基于HBASE的数据散列处理方法,其特征在于,包括步骤将HBASE的接。
3、口文件加载到HDFS分布式文件存储或装置中;将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;根据每个KEY字段分别生成随机种子,并以HBASE的物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。2根据权利要求1所述的基于HBASE的数据散列处理方法,其特征在于,所述生成随机种子的方法为平方取中法。3根据权利要求1所述的基于HBASE的数据散列处理方法,其特征在于,所述生成随机种子的方法为线性取余法。4根据权利要求2或3所述的基于HBASE的数据散列处理方法,其特征在于,所述。
4、接口文件为手机上网日志数据。5根据权利要求4所述的基于HBASE的数据散列处理方法,其特征在于,所述数据的KEY字段为手机号码字段。6一种基于HBASE的数据散列处理装置,其特征在于,包括第一加载模块、转换模块、取模模块和第二加载模块;所述第一加载模块用于将HBASE的接口文件加载到HDFS分布式文件存储或装置中;所述转换模块用于将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;所述取模模块用于根据每个KEY字段分别生成随机种子,并以HBASE的物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;所述第二加载模块用于分别将每个KEY字段所对应的。
5、数据加载至节点编号所对应的物理存储节点。7根据权利要求6所述的基于HBASE的数据散列处理装置,其特征在于,所述取模模块根据每个KEY字段生成随机种子的方法为平方取中法。8根据权利要求6所述的基于HBASE的数据散列处理装置,其特征在于,所述取模模块根据每个KEY字段生成随机种子的方法为线性取余法。9根据权利要求7或8所述的基于HBASE的数据散列处理装置,其特征在于,所述接口文件为手机上网日志数据。10根据权利要求9所述的基于HBASE的数据散列处理装置,其特征在于,所述数据的KEY字段为手机号码字段。权利要求书CN104252535A1/4页3一种基于HBASE的数据散列处理方法及装置技术。
6、领域0001本发明涉及大数据处理领域,特别是涉及一种基于HBASE的数据散列处理方法及装置。背景技术0002移动互联网时代,移动通信行业的用户行为数据量激增,数据分析领域采用先进的大数据技术进行数据分析和数据访问工作,如HBASE。但在实际应用过程中往往会存在并行访问某批数据访问的问题,这主要是因为HBASE在数据写入时使用了单调递增或者时序的KEY将访问热度高的数据聚集在一个REGION物理节点上,造成访问集中在该REGION上,无法发挥集群性能的目标。0003对于HBASE的查询实现有两种方式一种是按指定ROWKEY获取唯一一条记录的GET方法,另一种是按照指定的条件获取一批记录的SCAN。
7、方法。其中实现条件查询功能使用的是SCAN方法,通过ROWKEY设计使批量获取记录集合在一起,可以提高条件查询的效率。但对于ROWKEY设计保证访问热度高的数据集合分散在集群节点中,避免集中访问的问题一直没有有效的方法。0004目前,在大数据领域中,已经有HBASE相关查询优化的方法,现有的HBASE的查询优化方法存在如下缺陷访问热度较高的数据集合存储能提高访问效率,但方法中没有涉及到访问热度高数据如何提高访问效率的方法,若访问热度高的数据集合在一个节点中,造成该节点的负载很高,降低了访问效率。发明内容0005本发明所要解决的技术问题是提供一种基于HBASE的数据散列处理方法及装置,能有效解决。
8、现有技术中访问热度高的数据集合在一个节点中,节点的负载高,访问效率低的问题。0006为了解决上述技术问题,本发明采用的技术方案为0007一种基于HBASE的数据散列处理方法,包括步骤将HBASE的接口文件加载到HDFS分布式文件存储或装置中;将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;根据每个KEY字段分别生成随机种子,并以HBASE的物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。0008为解决上述技术问题,本发明提供的另一技术方案为0009一种基于HBASE的数据。
9、散列处理装置,包括第一加载模块、转换模块、取模模块和第二加载模块;所述第一加载模块用于将HBASE的接口文件加载到HDFS分布式文件存储或装置中;所述转换模块用于将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;所述取模模块用于根据每个KEY字段分别生成随机种子,并以HBASE的物理存储节点的总数为除数对每个随机种子进行取模,获得节点编说明书CN104252535A2/4页4号;所述第二加载模块用于分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。0010本发明的有益效果在于区别于现有技术中访问热度高的数据集合在一个节点中,节点的负载高。
10、,访问效率低,本发明通过将接口文件转换成HFILE存储格式规范化处理,以各数据的KEY字段生成随机种子,并对所述随机种子进行取模,根据取模的结果将所述各数据分散至各节点进行存储,因此将所述各数据均匀的分配至集群各节点上,均衡了各节点的访问压力,提高了节点访问效率。附图说明0011图1为本发明一实施方式基于HBASE的数据分布装置的功能框图;0012图2为本发明一实施方式一种基于HBASE的数据散列处理方法流程图;0013图3为本发明一实施方式一种基于HBASE的数据散列处理装置的功能框图;0014图4为本发明一实施方式一条接口数据加载和访问HBASE场景的方法运行步骤流程图;0015图5为本发。
11、明一实施方式基于HBASE的数据散列处理方法步骤的详细示意图。具体实施方式0016为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。0017本发明最关键的构思在于通过各数据的KEY字段生成随机种子,对随机种子取模,根据取模结果将数据分散至不同的节点,均摊访问压力,提高访问效率。0018请参阅图1,为基于HBASE的数据分布装置的功能框架图,流式计算数据分布装置各层具体说明如下0019获取层负责将接口数据装载到HDFSHADOOP分布式文件存储中,并进行HFILEHBASE中KEYVALUE数据的存储格式规范化;0020处理层负责HBASE表数据块的定义、接口数据。
12、的加载指引落到HBASE哪个数据块中、以及接口加载HBASE工作;0021针对预估的数据大小和HADOOP节点情况来预先分配REGION的个数用于每个数据块的存放,提取手机号码字段数据分布主键用于数据分布的计算依据,通过手机号码计算唯一的随机种子,然后结合流式计算集群中的物理节点数量取模,取模的值作为物理节点编号,也就是输入数据通过数据分布装置输出的目的地。0022功能层负责HBASE数据的处理、查询等对外服务工作。0023请参照图2,本发明的技术方案为一种基于HBASE的数据散列处理方法,包括步骤0024S1、将HBASE的接口文件加载到HDFS分布式文件存储或装置中;其中,所述接口文件就是。
13、需要进行处理的数据文件,包括手机上网日志数据;0025S2、将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;0026S3、根据每个KEY字段分别生成随机种子,并以HBASE的物理存储节点的总数说明书CN104252535A3/4页5为除数对每个随机种子进行取模,获得节点编号;0027S4、分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。0028从上述描述可知,本发明的有益效果在于本发明通过将接口文件转换至HFILE存储格式规范化处理,根据接口文件中各数据的KEY字段生成随机种子,并对所述随机种子取模,在本发明取模的除数定义为节点的总。
14、数量,这样对随机种子取模后的值会确定在节点总数内,根据取模的结果将各数据分散存储至各节点,从而使所述各数据均匀的分配至各节点进行存储,均衡各节点的访问负载,提高了节点访问效率。0029进一步的,所述生成随机种子的方法为平方取中法。0030进一步的,所述生成随机种子的方法为线性取余法。0031其中,所述线性取余法为将种子设为X0,用一个算法XN1AXNBMODC产生XN1,一般将C取得很大,即可产生0到C1之间的伪随机数。0032进一步的,所述接口文件为手机上网日志数据。0033进一步的,所述数据的KEY字段为手机号码字段。0034请参照图3,本发明的另一技术方案为一种基于HBASE的数据散列处。
15、理装置,包括第一加载模块、转换模块、取模模块和第二加载模块;0035所述第一加载模块用于将HBASE的接口文件加载到HDFS分布式文件存储或装置中;0036所述转换模块用于将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;0037所述取模模块用于根据每个KEY字段分别生成随机种子,并以HBASE的物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;0038所述第二加载模块用于分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。0039从上述描述可知,本发明的有益效果在于本发明通过将接口文件转换至HFILE存储格式规范化处理,根据。
16、接口文件中各数据的KEY字段生成随机种子,并对所述随机种子取模,在本发明取模的除数定义为节点的总数量,这样对随机种子取模后的值会确定在节点总数内,根据取模的结果将各数据分散2000存储至各节点,从而使所述各数据均匀的分配至各节点进行存储,均衡各节点的访问负载,提高了节点访问效率。0040进一步的,所述取模模块根据每个KEY字段生成随机种子的方法为平方取中法。0041进一步的,所述取模模块根据每个KEY字段生成随机种子的方法为线性取余法。0042进一步的,所述接口文件为手机上网日志数据。0043进一步的,所述数据的KEY字段为手机号码字段。0044请参照图4,本发明的实施例一为为了更好的理解本发。
17、明,以下通过以一条接口数据加载和访问HBASE场景的方法运作步骤做出详细阐述0045步骤1数据装载HDFS,通过JAVA程序将接口文件加载到HDFS分布式文件存储;0046步骤2HFILE规范化,HFILE是HBASE中KEYVALUE数据的存储格式,是属于HDFS分布式文件系统中的文件,应用程序将在HDFS上的接口文件进行HFILE的格式化,便于后续加载数据加载到HBASE;0047步骤3获取数据中的KEY字段作为数据分布的键值;说明书CN104252535A4/4页60048步骤4根据KEY取随机种子,取随机种子的算法可以有多种,如平方取中法、线性取余法。生成出来的随机种子作为初始条件用于。
18、后面取模所用,一个KEY通过一种随机数算法只会生产一个唯一的随机种子;0049步骤5随机种子取模,在取模算法中,除数定义为REGION总数量,这样随机种子REGION总数量的值会确定在一个范围内,这个范围就是REGION个数;0050步骤6根据随机种子和REGION总数量取摸,在取模算法中,除数定义为REGION总数量,这样随机种子REGION总数量的值会确定在一个范围内,这个范围就是REGION个数,取模后的值可做为该条数据所属的REGION节点编号,是指引数据流向的关键信息;0051步骤7得到基于取模值的REGION编号,通过RIGION编号指引数据加载到对应的REGION中去。0052请。
19、参阅图5,是对上述步骤5、6、7的详细图示说明。0053综上所述,本发明提供的基于HBASE的数据散列处理方法及装置通过对接口数据的各数据块进行规范化处理,根据各数据块的KEY字段生成随机种子,并对各随机种子进行取模,根据取模的结果将各数据块分配给编号与取模结果相应的节点中,使数据块均匀的存储至各集群节点中,均摊各节点的访问压力,提高节点访问效率。0054以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。说明书CN104252535A1/4页7图1图2说明书附图CN104252535A2/4页8图3说明书附图CN104252535A3/4页9图4说明书附图CN104252535A4/4页10图5说明书附图CN104252535A10。