`
kabike
  • 浏览: 608560 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

hbase MemStore避免内存碎片

 
阅读更多
CMS是比较常用的一种gc方法,但是默认情况下CMS不进行compact,因此往往出现内存碎片.
而hbase中由于region数据的非集中分布,更容易导致内存碎片.此时在内存还有很大可用空间的时候,也不能创建对象,导致了stop the world


hbase可以使用MSLAB(MemStore-Local Allocation Buffer),使得一个region的对象集中在一起,避免了内存碎片
http://blog.cloudera.com/blog/2011/02/avoiding-full-gcs-in-hbase-with-memstore-local-allocation-buffers-part-1/
http://blog.cloudera.com/blog/2011/02/avoiding-full-gcs-in-hbase-with-memstore-local-allocation-buffers-part-2/
http://blog.cloudera.com/blog/2011/03/avoiding-full-gcs-in-hbase-with-memstore-local-allocation-buffers-part-3/
分享到:
评论

相关推荐

    HBase堆外内存测试

    对于主机B,通过合理的配置使得堆内和堆外内存结合使用,既能充分利用内存资源,又能避免频繁的GC操作对性能的影响。 ##### 配置参数示例 - 主机A的配置: - `hfile.block.cache.size = 0.39` - 主机B的配置: - ...

    生产环境里的堆外内存HBase读路径——阿里巴巴的故事

    Yu Li explains how Alibaba met the challenge of tens of millions requests per second to its Alibaba-Search HBase cluster on 2016 Singles' Day. With read-path off-heaping, Alibaba improved the ...

    HbaseTemplate 操作hbase

    在IT行业中,尤其是在大数据处理领域,HBase是一个广泛使用的分布式、高性能、列式存储的NoSQL数据库。HBase是建立在Hadoop文件系统(HDFS)之上,为处理大规模数据提供了一个高效的数据存储解决方案。而Spring Data...

    hbase资料_hbase-default.xml.zip

    3. **内存管理**:`hbase.regionserver.global.memstore.upperLimit`和`hbase.regionserver.global.memstore.lowerLimit`分别设置了全局MemStore占用RegionServer内存的最大和最小比例,以防止数据溢出到磁盘。...

    HBase参数修改 PDF 下载

    7. `hbase.regionserver.global.memstore.lowerLimit` 和 `hbase.regionserver.global.memstore.upperLimit`: 控制MemStore占用区域服务器总内存的比例,防止内存溢出。 8. `hbase.hregion.majorcompaction.interval...

    HBase源代码 hbase-0.98.23

    例如,`org.apache.hadoop.hbase.regionserver.HStore`类实现了MemStore和BlockCache,它们分别缓存内存中的新写入数据和硬盘上的热数据,提高读写效率。同时,HBase还支持Compaction操作,通过`org.apache.hadoop....

    HBase性能深度分析

    伴随数据写入,内存中的数据达到由“hbase.hregion.memstore.flush.size”参数控制的阈值(默认64MB)时,会被写入到region文件中。当region文件大小达到由“hbase.hregion.max.filesize”参数决定的上限(默认256MB...

    HBase性能优化方法总结

    2. **内存配置**:合理分配HBase的堆内存,确保足够的空间用于BlockCache和MemStore,降低磁盘访问频率。 3. **网络优化**:使用高速网络如InfiniBand,提高节点间通信速度。 二、配置优化 1. **Region大小调整**:...

    HBase配置项说明及调优建议.zip

    `hbase.regionserver.global.memstore.upperLimit`和`hbase.regionserver.global.memstore.lowerLimit`分别设置了全局MemStore的最大和最小占用比例,防止内存溢出。`hbase.hregion.memstore.flush.size`定义了触发...

    大数据HBASE考题材料

    - HLog:HBase通过维护WAL(Write Ahead Log)来防止MemStore中的数据丢失,确保即使在系统崩溃的情况下也能恢复数据。 10. **HBase的主要操作** - Get:获取特定rowkey的数据。 - Put:插入或更新数据。 - ...

    Hbase 安装与基本使用

    如果是单机模式,可以使用`start-hbase.sh --nonInteractive`避免交互式确认。 2. **检查状态**:通过`hbase zkcli -server localhost:2181`连接ZooKeeper,然后用`ls /hbase`命令查看HBase是否正常启动。 3. **停止...

    hbase-0.94.27.tar.gz

    写入时,数据首先写入内存的MemStore,达到一定阈值后会刷入到HDFS。读取时,数据可以从内存或HDFS中获取,根据配置实现快速响应。 6. **Zookeeper**:HBase依赖Zookeeper进行协调和管理,包括Master选举、...

    hbase-2.2.3-bin.tar.gz

    1. **硬件规划**:HBase需要足够的内存和CPU资源,尤其是Region Server。硬盘方面,SSD通常能提供更好的性能。 2. **负载均衡**:合理地划分和分配Region,避免热点现象,保证数据分布均匀。 3. **监控与调优**:...

    HBase.docx

    - 每个Region由多个Store组成,每个Store包含一个HFile存储数据和一个MemStore存储内存数据。 4. **HDFS上的目录结构** - HBase在HDFS上的目录结构有特定的命名规则,用于存放Region数据。 5. **整体结构** - ...

    hbase的rowkey设计与hbase的协处理器运用.docx

    HBase RowKey 设计与协处理器运用 HBase 是一个基于 HDFS 的分布式、面向列的 NoSQL 数据库,具有高性能、可靠性和扩展性等特点。本文将详细介绍 HBase 的 RowKey 设计和协处理器运用。 HBase 的介绍 HBase 是一...

    HBase配置文件若干配置.zip

    `hbase.hregion.memstore.flush.size`决定了每个Region内存缓冲区的刷新阈值,当达到此大小时,Region会触发flush操作,将数据写入磁盘。 `hbase.regionserver.handler.count`是RegionServer处理请求的线程数,增加...

    hbase1.0.3_part2

    6. **HBase的监控与调优**:HBase内置了丰富的监控指标,如RegionServer状态、内存使用、请求数量等,可以通过JMX、HBase Web UI或Ambari等工具进行监控。根据这些指标,可以进行性能调优,比如调整Region大小、增加...

    Hbase权威指南(HBase: The Definitive Guide)

    - **高性能**:即使面对大量数据,HBase也能够保持快速的读写操作,这是因为其采用了一种特殊的内存缓存机制和高效的磁盘存储结构。 - **容错性**:通过数据复制和故障恢复机制,HBase能够在节点故障的情况下保证...

    《Hbase权威指南》原版

    - **缓存机制**:HBase利用内存缓存来加速读取操作,包括MemStore(内存中存储未刷新到磁盘的数据)和BlockCache(缓存经常访问的数据块)。 #### 四、HBase的应用场景 - **实时数据分析**:由于HBase提供了低延迟...

Global site tag (gtag.js) - Google Analytics