CN104252535A - 一种基于hbase的数据散列处理方法及装置 - Google Patents

一种基于hbase的数据散列处理方法及装置 Download PDF

Info

Publication number
CN104252535A
CN104252535A CN201410471421.2A CN201410471421A CN104252535A CN 104252535 A CN104252535 A CN 104252535A CN 201410471421 A CN201410471421 A CN 201410471421A CN 104252535 A CN104252535 A CN 104252535A
Authority
CN
China
Prior art keywords
hbase
data
key field
random seed
interface document
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201410471421.2A
Other languages
English (en)
Inventor
朱爱军
叶潇
陈威
林菓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FUJIAN NEW LAND SOFTWARE ENGINEERING Co Ltd
Original Assignee
FUJIAN NEW LAND SOFTWARE ENGINEERING Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by FUJIAN NEW LAND SOFTWARE ENGINEERING Co Ltd filed Critical FUJIAN NEW LAND SOFTWARE ENGINEERING Co Ltd
Priority to CN201410471421.2A priority Critical patent/CN104252535A/zh
Publication of CN104252535A publication Critical patent/CN104252535A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种基于hbase的数据散列处理方法,包括步骤:将hbase的接口文件加载到HDFS分布式文件存储或装置中;将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;根据每个KEY字段分别生成随机种子,并以hbase的物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。本发明还公开一种基于hbase的数据散列处理装置。本发明能均衡各节点的负载,提高节点访问效率。

Description

一种基于hbase的数据散列处理方法及装置
技术领域
本发明涉及大数据处理领域,特别是涉及一种基于hbase的数据散列处理方法及装置。
背景技术
移动互联网时代,移动通信行业的用户行为数据量激增,数据分析领域采用先进的大数据技术进行数据分析和数据访问工作,如hbase。但在实际应用过程中往往会存在并行访问某批数据访问的问题,这主要是因为hbase在数据写入时使用了单调递增或者时序的key将访问热度高的数据聚集在一个region(物理节点)上,造成访问集中在该region上,无法发挥集群性能的目标。
对于HBASE的查询实现有两种方式:一种是按指定RowKey获取唯一一条记录的get方法,另一种是按照指定的条件获取一批记录的Scan方法。其中实现条件查询功能使用的是Scan方法,通过rowkey设计使批量获取记录集合在一起,可以提高条件查询的效率。但对于rowkey设计保证访问热度高的数据集合分散在集群节点中,避免集中访问的问题一直没有有效的方法。
目前,在大数据领域中,已经有hbase相关查询优化的方法,现有的hbase的查询优化方法存在如下缺陷:访问热度较高的数据集合存储能提高访问效率,但方法中没有涉及到访问热度高数据如何提高访问效率的方法,若访问热度高的数据集合在一个节点中,造成该节点的负载很高,降低了访问效率。
发明内容
本发明所要解决的技术问题是:提供一种基于hbase的数据散列处理方法及装置,能有效解决现有技术中访问热度高的数据集合在一个节点中,节点的负载高,访问效率低的问题。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于hbase的数据散列处理方法,包括步骤:将(hbase的)接口文件加载到HDFS分布式文件存储或装置中;将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;根据每个KEY字段分别生成随机种子,并以(hbase的)物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。
为解决上述技术问题,本发明提供的另一技术方案为:
一种基于hbase的数据散列处理装置,包括第一加载模块、转换模块、取模模块和第二加载模块;所述第一加载模块用于将(hbase的)接口文件加载到HDFS分布式文件存储或装置中;所述转换模块用于将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;所述取模模块用于根据每个KEY字段分别生成随机种子,并以(hbase的)物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;所述第二加载模块用于分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。
本发明的有益效果在于:区别于现有技术中访问热度高的数据集合在一个节点中,节点的负载高,访问效率低,本发明通过将接口文件转换成HFILE存储格式(规范化处理),以各数据的KEY字段生成随机种子,并对所述随机种子进行取模,根据取模的结果将所述各数据分散至各节点进行存储,因此将所述各数据均匀的分配至集群各节点上,均衡了各节点的访问压力,提高了节点访问效率。
附图说明
图1为本发明一实施方式基于hbase的数据分布装置的功能框图;
图2为本发明一实施方式一种基于hbase的数据散列处理方法流程图;
图3为本发明一实施方式一种基于hbase的数据散列处理装置的功能框图;
图4为本发明一实施方式一条接口数据加载和访问hbase场景的方法运行步骤流程图;
图5为本发明一实施方式基于hbase的数据散列处理方法步骤的详细示意图。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:通过各数据的KEY字段生成随机种子,对随机种子取模,根据取模结果将数据分散至不同的节点,均摊访问压力,提高访问效率。
请参阅图1,为基于hbase的数据分布装置的功能框架图,流式计算数据分布装置各层具体说明如下:
获取层:负责将接口数据装载到HDFS(HADOOP分布式文件存储)中,并进行HFILE(HBase中KeyValue数据的存储格式)规范化;
处理层:负责HBASE表数据块的定义、接口数据的加载指引(落到HBASE哪个数据块中)、以及接口加载HBASE工作;
针对预估的数据大小和HADOOP节点情况来预先分配REGION的个数用于每个数据块的存放,提取手机号码字段(数据分布主键)用于数据分布的计算依据,通过手机号码计算唯一的随机种子,然后结合流式计算集群中的物理节点数量取模,取模的值作为物理节点编号,也就是输入数据通过数据分布装置输出的目的地。
功能层:负责hbase数据的处理、查询等对外服务工作。
请参照图2,本发明的技术方案为:一种基于hbase的数据散列处理方法,包括步骤:
S1、将hbase的接口文件加载到HDFS分布式文件存储或装置中;其中,所述接口文件就是需要进行处理的数据文件,包括手机上网日志数据;
S2、将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;
S3、根据每个KEY字段分别生成随机种子,并以(hbase的)物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;
S4、分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。
从上述描述可知,本发明的有益效果在于:本发明通过将接口文件转换至HFILE存储格式(规范化处理),根据接口文件中各数据的KEY字段生成随机种子,并对所述随机种子取模,在本发明取模的除数定义为节点的总数量,这样对随机种子取模后的值会确定在节点总数内,根据取模的结果将各数据分散存储至各节点,从而使所述各数据均匀的分配至各节点进行存储,均衡各节点的访问负载,提高了节点访问效率。
进一步的,所述生成随机种子的方法为平方取中法。
进一步的,所述生成随机种子的方法为线性取余法。
其中,所述线性取余法为将种子设为X0,用一个算法X(n+1)=(a*X(n)+b)mod c产生X(n+1),一般将c取得很大,即可产生0到c-1之间的伪随机数。
进一步的,所述接口文件为手机上网日志数据。
进一步的,所述数据的KEY字段为手机号码字段。
请参照图3,本发明的另一技术方案为:一种基于hbase的数据散列处理装置,包括第一加载模块、转换模块、取模模块和第二加载模块;
所述第一加载模块用于将(hbase的)接口文件加载到HDFS分布式文件存储或装置中;
所述转换模块用于将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;
所述取模模块用于根据每个KEY字段分别生成随机种子,并以(hbase的)物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;
所述第二加载模块用于分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。
从上述描述可知,本发明的有益效果在于:本发明通过将接口文件转换至HFILE存储格式(规范化处理),根据接口文件中各数据的KEY字段生成随机种子,并对所述随机种子取模,在本发明取模的除数定义为节点的总数量,这样对随机种子取模后的值会确定在节点总数内,根据取模的结果将各数据分散2000存储至各节点,从而使所述各数据均匀的分配至各节点进行存储,均衡各节点的访问负载,提高了节点访问效率。
进一步的,所述取模模块根据每个KEY字段生成随机种子的方法为平方取中法。
进一步的,所述取模模块根据每个KEY字段生成随机种子的方法为线性取余法。
进一步的,所述接口文件为手机上网日志数据。
进一步的,所述数据的KEY字段为手机号码字段。
请参照图4,本发明的实施例一为:为了更好的理解本发明,以下通过以一条接口数据加载和访问hbase场景的方法运作步骤做出详细阐述:
步骤1:数据装载HDFS,通过JAVA程序将接口文件加载到HDFS分布式文件存储;
步骤2:HFILE规范化,HFILE是HBase中KeyValue数据的存储格式,是属于HDFS分布式文件系统中的文件,应用程序将在HDFS上的接口文件进行HFILE的格式化,便于后续加载数据加载到HBASE;
步骤3:获取数据中的KEY字段作为数据分布的键值;
步骤4:根据KEY取随机种子,取随机种子的算法可以有多种,如平方取中法、线性取余法。生成出来的随机种子作为初始条件用于后面取模所用,一个KEY通过一种随机数算法只会生产一个唯一的随机种子;
步骤5:随机种子取模,在取模算法中,除数定义为REGION总数量,这样随机种子REGION总数量的值会确定在一个范围内,这个范围就是REGION个数;
步骤6:根据随机种子和region总数量取摸,在取模算法中,除数定义为REGION总数量,这样随机种子REGION总数量的值会确定在一个范围内,这个范围就是REGION个数,取模后的值可做为该条数据所属的REGION节点编号,是指引数据流向的关键信息;
步骤7:得到基于取模值的REGION编号,通过RIGION编号指引数据加载到对应的REGION中去。
请参阅图5,是对上述步骤5、6、7的详细图示说明。
综上所述,本发明提供的基于hbase的数据散列处理方法及装置通过对接口数据的各数据(块)进行规范化处理,根据各数据(块)的KEY字段生成随机种子,并对各随机种子进行取模,根据取模的结果将各数据(块)分配给编号与取模结果相应的节点中,使数据(块)均匀的存储至各集群节点中,均摊各节点的访问压力,提高节点访问效率。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种基于hbase的数据散列处理方法,其特征在于,包括步骤:
将hbase的接口文件加载到HDFS分布式文件存储或装置中;
将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;
根据每个KEY字段分别生成随机种子,并以hbase的物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;
分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。
2.根据权利要求1所述的基于hbase的数据散列处理方法,其特征在于,所述生成随机种子的方法为平方取中法。
3.根据权利要求1所述的基于hbase的数据散列处理方法,其特征在于,所述生成随机种子的方法为线性取余法。
4.根据权利要求2或3所述的基于hbase的数据散列处理方法,其特征在于,所述接口文件为手机上网日志数据。
5.根据权利要求4所述的基于hbase的数据散列处理方法,其特征在于,所述数据的KEY字段为手机号码字段。
6.一种基于hbase的数据散列处理装置,其特征在于,包括第一加载模块、转换模块、取模模块和第二加载模块;
所述第一加载模块用于将hbase的接口文件加载到HDFS分布式文件存储或装置中;
所述转换模块用于将所述接口文件转换成HFILE存储格式;获取规范化处理后的接口文件中的各数据的KEY字段;
所述取模模块用于根据每个KEY字段分别生成随机种子,并以hbase的物理存储节点的总数为除数对每个随机种子进行取模,获得节点编号;
所述第二加载模块用于分别将每个KEY字段所对应的数据加载至节点编号所对应的物理存储节点。
7.根据权利要求6所述的基于hbase的数据散列处理装置,其特征在于,所述取模模块根据每个KEY字段生成随机种子的方法为平方取中法。
8.根据权利要求6所述的基于hbase的数据散列处理装置,其特征在于,所述取模模块根据每个KEY字段生成随机种子的方法为线性取余法。
9.根据权利要求7或8所述的基于hbase的数据散列处理装置,其特征在于,所述接口文件为手机上网日志数据。
10.根据权利要求9所述的基于hbase的数据散列处理装置,其特征在于,所述数据的KEY字段为手机号码字段。
CN201410471421.2A 2014-09-16 2014-09-16 一种基于hbase的数据散列处理方法及装置 Pending CN104252535A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410471421.2A CN104252535A (zh) 2014-09-16 2014-09-16 一种基于hbase的数据散列处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410471421.2A CN104252535A (zh) 2014-09-16 2014-09-16 一种基于hbase的数据散列处理方法及装置

Publications (1)

Publication Number Publication Date
CN104252535A true CN104252535A (zh) 2014-12-31

Family

ID=52187425

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410471421.2A Pending CN104252535A (zh) 2014-09-16 2014-09-16 一种基于hbase的数据散列处理方法及装置

Country Status (1)

Country Link
CN (1) CN104252535A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105704173A (zh) * 2014-11-25 2016-06-22 中国移动通信集团福建有限公司 一种集群系统数据分布方法及服务器
CN108255966A (zh) * 2017-12-25 2018-07-06 太极计算机股份有限公司 一种数据迁移方法及存储介质
CN112818047A (zh) * 2021-01-25 2021-05-18 中国铁塔股份有限公司 基于分布式数据库的数据存储方法、装置及电子设备
CN113590703A (zh) * 2021-08-10 2021-11-02 平安银行股份有限公司 Es数据导入方法、装置、电子设备及可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100235606A1 (en) * 2009-03-11 2010-09-16 Oracle America, Inc. Composite hash and list partitioning of database tables
CN102521405A (zh) * 2011-12-26 2012-06-27 中国科学院计算技术研究所 支持高速加载的海量结构化数据存储、查询方法和系统
CN102542071A (zh) * 2012-01-17 2012-07-04 深圳市同洲视讯传媒有限公司 一种分布式处理数据的系统及方法
CN103186651A (zh) * 2011-12-31 2013-07-03 中国移动通信集团公司 一种分布式关系数据库及其建立、查询方法和装置
CN103617211A (zh) * 2013-11-20 2014-03-05 浪潮电子信息产业股份有限公司 一种HBase加载数据的导入方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100235606A1 (en) * 2009-03-11 2010-09-16 Oracle America, Inc. Composite hash and list partitioning of database tables
CN102521405A (zh) * 2011-12-26 2012-06-27 中国科学院计算技术研究所 支持高速加载的海量结构化数据存储、查询方法和系统
CN103186651A (zh) * 2011-12-31 2013-07-03 中国移动通信集团公司 一种分布式关系数据库及其建立、查询方法和装置
CN102542071A (zh) * 2012-01-17 2012-07-04 深圳市同洲视讯传媒有限公司 一种分布式处理数据的系统及方法
CN103617211A (zh) * 2013-11-20 2014-03-05 浪潮电子信息产业股份有限公司 一种HBase加载数据的导入方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
周泓 等: "《生产系统建模与仿真》", 30 September 2012 *
邢屹: ""大规模键值分布式存储系统的设计与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105704173A (zh) * 2014-11-25 2016-06-22 中国移动通信集团福建有限公司 一种集群系统数据分布方法及服务器
CN105704173B (zh) * 2014-11-25 2019-06-21 中国移动通信集团福建有限公司 一种集群系统数据分布方法及服务器
CN108255966A (zh) * 2017-12-25 2018-07-06 太极计算机股份有限公司 一种数据迁移方法及存储介质
CN112818047A (zh) * 2021-01-25 2021-05-18 中国铁塔股份有限公司 基于分布式数据库的数据存储方法、装置及电子设备
CN113590703A (zh) * 2021-08-10 2021-11-02 平安银行股份有限公司 Es数据导入方法、装置、电子设备及可读存储介质
CN113590703B (zh) * 2021-08-10 2023-11-07 平安银行股份有限公司 Es数据导入方法、装置、电子设备及可读存储介质

Similar Documents

Publication Publication Date Title
KR102284972B1 (ko) 데이터 처리 방법 및 디바이스
CN104348679B (zh) 一种分桶测试的方法、装置和系统
CN106407207B (zh) 一种实时新增数据更新方法和装置
CN106970929B (zh) 数据导入方法及装置
CN104252535A (zh) 一种基于hbase的数据散列处理方法及装置
Wang et al. Management of big data in the internet of things in agriculture based on cloud computing
WO2014082198A1 (en) Multiple fields parallel query method and corresponding storage organization
CN103559229A (zh) 基于MapFile的小文件管理服务SFMS系统及其使用方法
CN104424331A (zh) 数据抽样方法及装置
CN107203532A (zh) 索引系统的构建方法、搜索的实现方法及装置
CN104376109A (zh) 一种基于数据分布库的多维度数据分布方法
CN112035531A (zh) 敏感数据处理方法、装置、设备及介质
US20200159594A1 (en) Systems and methods for dynamic partitioning in distributed environments
WO2014098662A1 (en) Exposing data to query generating applications using usage profiles
Kim et al. A study on utilization of spatial information in heterogeneous system based on apache nifi
US20170371892A1 (en) Systems and methods for dynamic partitioning in distributed environments
CN110019205A (zh) 一种数据存储、还原方法、装置及计算机设备
CN103605770A (zh) 网页模板生成方法和服务器
CN106648839A (zh) 数据处理的方法和装置
Xie et al. On massive spatial data retrieval based on spark
CN106776255A (zh) 智能电视系统的日志提取方法及装置
Lee et al. SearchaStore: Fast and secure searchable cloud services
CN106446039B (zh) 聚合式大数据查询方法及装置
Perozzi et al. Scalable graph clustering with parallel approximate PageRank
CN105488056B (zh) 一种对象处理方法与设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20141231

RJ01 Rejection of invention patent application after publication