欢迎来到天天文库
浏览记录
ID:430879
大小:239.43 KB
页数:27页
时间:2017-08-01
《小米hadoop&hbase微实践》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、DTCC2013小米hadoop&hbase微实践谢良DTCC2013个人简介•小米科技软件工程师•目前在存储组做HBase研发工作•之前也负责维护过一段时间MySQL线上集群•weibo.com/bestxieliangDTCC2013Agenda•选型依据•upstream重要issue•集群checklist•若干案例解析•一些微改进点与社区回馈DTCC2013Agenda•选型依据•upstream重要issue•集群checklist•若干案例解析•一些微改进点与社区回馈DTCC2013•类似业务
2、场景下Facebook在前面趟雷成功•国内阿里等的实践也增强了我们的信心DTCC2013Agenda•选型依据•upstream重要issue•集群checklist•若干案例解析•一些微改进点与社区回馈DTCC2013HDFS层面•SupporthsyncHDFS-744(2.0.2-alpha)类fsync语义,关系数据安全性DTCC2013HDFS层面•namenodeHAFB用的AvatarNode方案,我们没跟进,因为:HAframeworkHDFS-1623(2.0.0-alpha)Autofa
3、iloverforHAHDFS-3042(2.0.2-alpha)QJMHDFS-3077(2.0.3-alpha)DTCC2013HDFS层面•ShortcutalocalclientreadsHDFS-2246(0.23.1,1.0.0,0.22.1)HDFS-347(截止目前尚未merge进trunk)•parallelwriteandHflush/syncHDFS-895(0.20-append,0.20.205.0,0.22.0)DTCC2013HDFS层面•concurrentreadersan
4、dwriterHDFS-1907(0.23.0)•betterhandlingofvolumefailureindatanodestorage坏少于配置上限数量的磁盘后,不需要关闭datanode实例,这样上层hbase不会丢失本地性HDFS-457(0.20.203.0,0.21.0)DTCC2013HBase层面•同行写入的原子性HBASE-2856(0.94.0)•onlineschemaupdateHBASE-1730/4213•distributedlogsplittingHBASE-1364(0
5、.92.0)•业务低谷期做激进压缩HBASE-4463(0.94.0)DTCC2013HBase层面•timerangehintsHBASE-5010(0.94.0)•lazyseekHBASE-4465(0.94.0)•HFilev2HBASE-3857(0.92.0)•datablockencodingHBASE-4218HBASE-4676DTCC2013Agenda•选型依据•upstream重要issue•集群checklist•若干案例解析•一些微改进点与社区回馈DTCC2013•硬件主要关注磁
6、盘和网卡、控制节点的RAID•OS:2.6.32ulimitext4微调mount参数,noatime,tune2fs-m1ntp服务THPDTCC2013•JVM:使用较新的版本1.6.0_37调整VM选项参数DTCC2013•zookeeper:3.4.4+的版本注意事务日志落地盘autopurge.snapRetainCountautopurge.purgeIntervalDTCC2013Agenda•选型依据•upstream重要issue•集群checklist•若干案例解析•一些微改进点与社区回
7、馈DTCC2013•现象:测试集群节点随机OOM•日志:OutOfMemoryError:unabletocreatenewnativethread•取threaddump•Centos6上ulimit设置和5不一样,常见坑!•心得:基础软件checklist要做完善!DTCC2013•现象:测试集群RegionServer偶发挂掉•日志显示有30多秒的长暂停,大于集群配置的zk检测超时30s;通过GC日志显示app确实被stop了30多秒,但之前木有打印堆相关信息(我们配置了参数会打印),结合PrintS
8、afepointStatistics的输出,定位可能与VM偏特锁相关,尝试禁掉,再未发生•心得:对VM要有敬畏之心DTCC2013•现象:某台RS的RPC队列堵塞•jstack确认是锁相关,很快可以对应到代码zkw.saslLatch.await()通过查社区svn提交历史,找到相应changebackport到内部代码库,发布,解决•这坨代码之前就是workaround,被坑了...DTCC2013•现象:RS
此文档下载收益归作者所有