[发明专利]一种基于HBase的Lob数据的存储方法及装置有效
| 申请号: | 201510144162.7 | 申请日: | 2015-03-30 |
| 公开(公告)号: | CN104750815B | 公开(公告)日: | 2017-11-03 |
| 发明(设计)人: | 贾德星;徐正礼;魏金雷 | 申请(专利权)人: | 浪潮集团有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 李世喆 |
| 地址: | 250100 山东*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 hbase lob 数据 存储 方法 装置 | ||
1.一种基于HBase的Lob数据的存储方法,其特征在于,根据HTable对象扩展LobTable对象;设置用于识别Lob数据的Qualifier;设置HBase所对应的服务器向HDFS转存数据的转存机制,还包括:
客户端在向LobTable对象发送存储请求时,LobTable在确定所述存储请求中包括Qualifier时,确定所述存储请求携带Lob数据,则创建LobPut对象;
客户端将所述存储请求中携带的Lob数据写入LobPut对象提供的Lob输出流中;
LobPut对象接收写入了Lob数据的Lob输出流,并在每次接收到的满足第一阈值的数据块时,将满足该第一阈值的数据块生成相应的Put对象,其中,Put对象包括相应数据块在Lob数据中的块号;
将生成的Put对象提交至服务器端,以使服务器端根据提交的Put对象中所包括的块号的顺序,利用设置的转存机制,将各个Put对象对应的数据块依次转存至HDFS的Lob文件中。
2.根据权利要求1所述的方法,其特征在于,
进一步包括:客户端调用LobTable对象向服务器端提交scan请求,其中,查询请求用于查询服务器端的Lob数据,并接收服务器端针对查询请求返回的Result,Result包括查询请求所查询的Lob数据的Row Key;LobTable对象将Result封装为LobResult对象,LobResult对象根据所查询的Lob数据的Row Key生成LobGet对象,以使LobGet对象根据所查询的Lob数据所对应的每一块数据块在Lob数据中的起始地址向服务器端分块读取Lob数据。
3.一种基于HBase的大对象数据的存储方法,其特征在于,创建Lob Corprocessor,设置HBase所对应的服务器向HDFS转存数据的转存机制,还包括:
服务器端利用Lob Corprocessor分块接收客户端分块提交的各个Put对象,其中,每个Put对象包括相应数据块在其对应Lob数据中的块号;
根据首次接收到的Put对象所对应数据块,确定HDFS系统的Lob文件中当前是否包括与该数据块相关的数据,若是,利用设置的转存机制将首次接收到的Put对象所对应的数据块,对与其相关的数据进行更新;若否,利用设置的转存机制,将首次接收到的Put对象所对应的数据块,创建至Lob文件中;
并根据提交的Put对象中所包括的块号的顺序,利用设置的转存机制,将后续接收到的Put对象分别对应的数据块转存入Lob文件中,并根据每个数据块的块号将各个数据块组合为Lob数据。
4.根据权利要求3所述的方法,其特征在于,
进一步包括:通过调用PrePut对象抛出一个特定的Do Not Retry IO Exception的子类异常,以阻止Lob Corprocessor将各个Put对象所对应的数据块写入到HBase的操作。
5.根据权利要求3或4所述的方法,其特征在于,
进一步包括:创建读取数据的LobScanner对象;
进一步包括:接收客户端通过LobGet提交的Get对象,所述Get对象中包括所查询的Lob数据的Row Key;Lob Corprocessor打开LobScanner对象;LobScanner对象根据所述Get对象中的Row Key确定所查询的Lob数据的存储位置,并在确定的存储位置中分块读取Lob数据的各个数据块,并将各个数据块转换为KeyValue形式,使得服务器端将该KeyValue形式的各个数据块返回给客户端;
或,
进一步包括:LobStore进一步以HFile文件的形式和MemStore形式存储Lob数据;
进一步包括:遍历HDFS中的Lob文件,并将遍历到的小于第二阈值的多个Lob数据合并到HFile文件中;
进一步包括:将合并为HFile文件的多个Lob数据的删除信息存储至MemStore中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮集团有限公司,未经浪潮集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510144162.7/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





