Hile 内部的数据是按key排序好的,但Hfile之间数据并不能保证key的排序,也就是说对于新生成的Hfile,其内部的key并不都比老的Hfile的大,因此每次检索时,都需要在所有的Hfile中检索一次,再将记过合并。虽然Hbase针对HFile这个设计了各种加速机制如BloomFilter,但是Hfile文件数目一多了还是比较吃力,因此就需要对Hfile做合并操作(compaction),分为minor和major合并操作。老的下限新的上线做查询用。

1)Minor操作只用来做部分文件的合并操作以及包括minVersion=0并且设置ttl的过期版本清理,不做任何删除数据、多版本数据的清理工作。

2)Major操作是对Region下的HStore下的所有StoreFile执行合并操作,最终的结果是整理合并出一个文件。

一般情况下都是做Minor合并,Major不少集群都是禁止,然后再集群负载较小时,进行手动Major合并,在我们数据立方这边,也是配置了一个<name>datacube.hregion.majorcompaction</name><value>0</value>,这是配置major的合并周期(默认为7天),很多集群配置成一天,如果配置成0即关闭Major合并。本文重点讨论的是minor合并,因此就不在此多说Major合并,只需要注意,既然Major合并是把所有HFile都合并成一个文件,可想对集群负载不可小觑。

最新文章

  1. Access restriction: The type &#39;FileURLConnection&#39; is not API
  2. Xml与DataTable相互转换方法
  3. [POJ2404]Jogging Trails(中国旅行商问题)(一般图的匹配——状压DP)
  4. Linux安装vim失败的解决办法
  5. GATK使用说明(一)
  6. C#调用百度地图API经验分享(一)
  7. windows 2008 r2 下面搭建 iis+sql server +php5.6 环境遇见的一些问题记录一下
  8. python3爬虫初探(五)之从爬取到保存
  9. jquery 回车切换 tab功能
  10. 20160723数据结构节alexandrali
  11. 老蜗牛写采集:一个漂亮的客户端-几个C#平台下的Winform 皮肤控件
  12. BZOJ 3343教主的魔法
  13. HTML5验证及日期显示
  14. BZOJ 1058 报表统计 (STL)
  15. poj 2363 Blocks(暴力)
  16. 动态得到WCF的代理类并生成代码
  17. APP的线程安全
  18. async generator promise异步方案实际运用
  19. 10-TypeScript中的接口
  20. elk中fliebeat的配置文件

热门文章

  1. 高性能代理缓存服务器—Squid
  2. spring boot过滤器FilterRegistrationBean
  3. &lt;Python基础&gt;集合的基本操作
  4. Spring MVC上传、下载 文件
  5. google浏览器插件开发
  6. 【期望DP】[zoj3329]One Person Game
  7. 关于set_multicycle_path的最后总结
  8. redis深入学习(一)-----CAP、redis数据类型
  9. Python ----键抠图
  10. 【51nod 1355】 斐波那契数的最小公倍数