现在的位置: 首页 > 云计算 > 正文

hbase+hadoop运维的一点经验

2013年04月26日 云计算 ⁄ 共 598字 ⁄ 字号 评论关闭

目前系统上线,不断的有新问题,也不断的在总结一些经验,发在这里,做下mark,同时也为hbase使用者提供一些思路吧。

1、单条rowkey下虽然能支持百万列,但是建议不要这么做,因为真正一个rowkey下挂了这么多数据时会在两个地方出现问题,一是查询时单行记录数据量过大,client超时;第二个问题是regionserver做compact的过程有可能被单条rowkey的数据塞满内存造成OOM

2、datanode的handler的数量不要默认值,太少,要在100左右,另外regionserver的handler的数量在200左右比较合适

3、resultScannser使用完毕记得关闭

4、HTablePool可以管理HTable。查询结束后直接用HTablePool.put(HTable t)来回收,入库结束后记得table.flushCommit()后再回收

5、mapred.local.dir这个参数是mapreduce会在机器的硬盘上做临时文件的存放,如果挂载的多块盘请将每个盘都配上,提升总体性能

6、map阶段的输出可以配置LZO压缩,这样能有效节省map->reduce阶段的网络带宽,不过会提高cpu的占用率

7、多网卡绑定能有效提高hadoop体系的网络带宽

8、bulkload目前测试的性能在单节点51GB/小时左右,希望其他有做过的同学能交流一下bulkload方面的问题。

【上篇】
【下篇】

抱歉!评论已关闭.