视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
"HBase_介绍和HBase云存储"分享总结
2020-11-09 13:20:57 责编:小采
文档


概述: 此分享包括:HBase_介绍和HBase云存储的汇总 ? 汇总点: HBASE基于HDFS存储;Hbase实时随机读写;Hbase是线性扩展,自动分表,支持MapReduceHbase Client使用HBase的RPC机制与Master和RegionServer进行通信,对于管理类操作,Client与Master进行RPC;

概述:

此分享包括:HBase_介绍和HBase云存储的汇总

?

汇总点:

HBASE基于HDFS存储;
Hbase实时随机读写;
Hbase是线性扩展,自动分表,支持MapReduce
Hbase Client使用HBase的RPC机制与Master和RegionServer进行通信,对于管理类操作,Client与Master进行RPC;对于数据读写类操作,Client与RegionServer进行RPC。
Client工作过程:从ZooKeeper上获取元数据和ROOT信息;在元数据中查找Region信息;与Region获取数据;缓存元数据相关信息;
Hbase的Master非单节点的,利用选举机制保证一个主Master;
Hbase的Master在功能上主要负责Table和Region的管理工作;
RegionServer主要负责响应用户I/O请求,向HDFS文件系统中读写数据同时向主服务器(Master Server)上报自己的状;
HRegion对应了Table中的一个Region,HRegion中由多个HStore组成。每个HStore对应了Table中的一个Column Family的存储;
HBase存储的核心Store由两部分组成:一部分是MemStore,另一部分是StoreFiles;
MemStore->StoreFile(Compact)->StoreFile->Region Split;
Master通过分发遗留HLog,然后RegionServer通过感知HLog并Replay HLog来保障数据不丢失;
Hbase的行的写操作是始终是“原子”的,只对一行上“锁”;
Hbase适用场景:储海量数据(TB级以上);对大数据集合进行高效的随机访问(主键查询);对于结构化和非结构化的数据存储同时不涉及jion操作;
Hbase的Cell为:Row,Column,Version和Value;
Hbase的操作:PUT,DELETE,GET和SCAN;
Region操作:Flush MemStore,Compact,Major Compact和split;
使用技巧:Column Family的数量最好为1;Key的设计避免单调递增,最小化;最小化Column;
MR操作时:Region数=Mapper数;Region数=Reducer数和Reducer写Hfile,再 BulkLoad;
Hbase开发调优:尽可能是使用Bulk Load;Put使用客户端Cache和Scan使用Cache/Batch;
HBASE部署中内存分配:RegionServer 12GB(MemStore <=40%,HFile DataIndex 和BlockCache <=20%),Master 4GB和ZooKeeper 1GB;
Region管理:预创建Region,Region的大小(hbase.hregion.max.filesize=256MB,1GB,4GB,手动Split,交错负载);
Region合并:hbase.hstore.compactionThreshold=3,hbase.hstore.blockingStoreFiles=7(阻塞,超时),hbase.hstore.compaction.max=10和hbase.hregion.majorcompaction=800,0;
MemStore Flush:hbase.regionserver.global.memstore.upperLimit和hbase.regionserver.global.memstore.lowerLimit;

?

运维调优:

Java GC:
JVM GC调整(ParNewGC+CMS)
Full GC-10s/GB
MemStore本地分配(2MB,减少碎片)
LZO压缩:
压缩单位为Block
提高性能
并发数调整:
hbase.regionserver.handler.count
Cache设置:
hfile.block.cache.size

?

更多详情参见附件



本文附件下载:
  • hbase.rar (4.4 MB)


  • 已有 0 人发表留言,猛击->> 这里<<-参与讨论


    ITeye推荐
  • —软件人才免语言低担保 赴美带薪读研!—



  • 下载本文
    显示全文
    专题