欢迎来到天天文库
浏览记录
ID:9212874
大小:2.37 MB
页数:40页
时间:2018-04-22
《hbase在小米中的应用实践》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、HBASEATXIAOMI小米科技基础平台开发组大纲HBase原理简介HBase在小米的现状HBase在小米业务的应用小米对于HBase的重要改进结构化数据存储服务将来的工作HBase原理简介数据模型Column,Rowkey,TableHBase原理简介HBase架构Region&RegionServer(RowKey,CF:Qualifier,Timestamp)=>ValueHBase原理简介HBase架构HBase在小米的现状集群与业务(截止2014.03.24)15个HB
2、ase集群:9个在线集群、2个离线处理集群、4个测试集群服务十多个不同业务百台机器:每个数据节点24TB开发与贡献(截止2014.03.24)源于社区、回馈社区217个改进,125个被采用HBase在小米业务的应用服务十多个不同业务米聊消息全存储小米云服务(MiCloud)短信、通话记录小米推送服务选用HBase的原因水平扩展能力:MiCloud大数据场景高可用性:7*24小时服务灵活的Schema:业务不断发展也会有修改Schema需求多版本特性:追踪米聊消息状态写性能优化:
3、小米Push推送消息时高吞吐量写强一致性HBase在小米业务的应用配置控制节点,数据节点HBase在小米业务的应用Minos集群部署和监控系统https://github.com/xiaomi/Minosbootstrap/install/start/stop/restart/rolling_update…集群监控和展示小米对于HBase的重要改进写吞吐优化HLog旧写模型WriteHandlerWriteHandler…………WriteHandlerWALEditWALEditWALEdi
4、tLocalAppendBufferWriteHandler之间WriteHandler:WritetoHDFS抢锁恶性竞争WriteHandler:SyncHDFS小米对于HBase的重要改进写吞吐优化HLog新写模型WriteHandler:WriteHandler:…………WriteHandler:txid_0txid_1txid_nWALEditWALEditWALEditLocalAppendBufferAsyncWriter:WritetoHDFSNotifywithtxidWrite和Syn
5、cHdfs由单独NotifywithmaxTxid线程完成,无锁竞争AsyncFlusher:SyncHDFSNotifywithmaxTxidNotifywithmaxTxidAsyncNotifier:NotifyallWriteHanders小米对于HBase的重要改进写吞吐优化0.98:https://issues.apache.org/jira/browse/HBASE-8755trunk:https://issues.apache.org/jira/browse/HBASE-10156700
6、00600005000040000优化前30000优化后20000100000135102550100200反向扫描https://issues.apache.org/jira/browse/HBASE-4811性能:比正向scan差30%,与levelDB下降相当Max反向seek到上row:vrow:vrow:v一行行首111221331row1:v12row2:v22row3:v32row:vrow:vrow:v反向seek到当441551661前行首row4:v42row5:v52row6:v62
7、……………………MemStoreStoreFile_1StoreFile_n可控粒度的跨机房备份改进:per-peer可以配置从master集群replicate哪些数据(per-table/per-CF)使用:set_peer_tableCFshttps://issues.apache.org/jira/browse/HBASE-8751Master:T2:cf1Peer1T1/T2/T3/T4T1,T3,Peer2Region内跨行原子性现状:同一次batch操作的同region跨行写没有原子性保
8、证改进:同一次batch操作的同region的所有写在获得所有行的锁后一次落地确保按照rowkey顺序抢锁、避免死锁局部二级索引前缀分割策略:KeyDelimiterPrefixRegionSplitPolicy局部二级索引必须使用KeyDelimiterPrefixRegionSplitPolicy结构化数据存储服务现状目前HBase的使用方式是使用原生接口直接访问独占的HBase集
此文档下载收益归作者所有