毕玄
   Taobao HBase规模   碰到的问题   建议
   基于0.90.3;   10个独立集群,大约300台机器;   机器配置     16 core,24G/48G,SATA 1T*12/SAS 300G *12;   大约200k ops/sec,70%写,30%读。
   region数越来越多,写TPS会疯狂下降     修改写操作时统计各region memstore的办法;     解决此问题。
   RegionServer OOM     太多版本;      ▪ rowKey设计问题;     通过setMaxFileSize设置了一个巨大的region文      件大小;     HBASE-3209 & 3290 p...
   Master OOM     region太多就会导致这个问题;     HBASE-3906。
   .meta.表空洞     我们碰到的原因      ▪ split失败,不仅造成了空洞,还造成了数据丢失;     HBASE-4562 & 4563 provided by TAOBAO
   .meta.表中出现了两个startKey/endKey相同    的region     HBASE-3946     不过我们打上patch后还是碰到了;     这个问题非常棘手...      ▪ 如何恢复?
   master split hlog阶段失败会造成数据丢失     master以128M为单位读.logs,写入      recovered.edits,最后一个128M读完,会先移      动.logs到.oldlogs,此时如...
   .meta.和-root-重复分配     HBASE-3914 & HBASE-4590
   如读取的数据量大,很容易造成写变慢     原因是目前HBASE的RPC机制     临时解决方案      ▪ 读写分开;      ▪ 对同一个region server也建多个连接。
   Jothan Gray(Facebook) said: “HBase is a pre-    1.0 DB”   适用场景     瞬间写入量很大,数据库不好支撑或需要很高      成本支撑的场景;     数据需要长久保存,...
   实践经验     合理设计rowKey,非常重要;     数据最好是可恢复的(Facebook也如此建议);     生产环境关闭split,region数不要太多(此建议     来自Facebook)。
HBase@taobao for 技术沙龙
Upcoming SlideShare
Loading in...5
×

HBase@taobao for 技术沙龙

2,699

Published on

介绍HBase在taobao的使用规模,使用过程中我们碰到的问题以及我们对使用HBase的建议。

Published in: Technology
0 Comments
13 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,699
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
174
Comments
0
Likes
13
Embeds 0
No embeds

No notes for slide

HBase@taobao for 技术沙龙

  1. 1. 毕玄
  2. 2.  Taobao HBase规模 碰到的问题 建议
  3. 3.  基于0.90.3; 10个独立集群,大约300台机器; 机器配置  16 core,24G/48G,SATA 1T*12/SAS 300G *12; 大约200k ops/sec,70%写,30%读。
  4. 4.  region数越来越多,写TPS会疯狂下降  修改写操作时统计各region memstore的办法;  解决此问题。
  5. 5.  RegionServer OOM  太多版本; ▪ rowKey设计问题;  通过setMaxFileSize设置了一个巨大的region文 件大小;  HBASE-3209 & 3290 provided by Facebook;
  6. 6.  Master OOM  region太多就会导致这个问题;  HBASE-3906。
  7. 7.  .meta.表空洞  我们碰到的原因 ▪ split失败,不仅造成了空洞,还造成了数据丢失;  HBASE-4562 & 4563 provided by TAOBAO
  8. 8.  .meta.表中出现了两个startKey/endKey相同 的region  HBASE-3946  不过我们打上patch后还是碰到了;  这个问题非常棘手... ▪ 如何恢复?
  9. 9.  master split hlog阶段失败会造成数据丢失  master以128M为单位读.logs,写入 recovered.edits,最后一个128M读完,会先移 动.logs到.oldlogs,此时如果写失败...  patch暂时未提交到官方;  Facebook也正在处理这个patch。
  10. 10.  .meta.和-root-重复分配  HBASE-3914 & HBASE-4590
  11. 11.  如读取的数据量大,很容易造成写变慢  原因是目前HBASE的RPC机制  临时解决方案 ▪ 读写分开; ▪ 对同一个region server也建多个连接。
  12. 12.  Jothan Gray(Facebook) said: “HBase is a pre- 1.0 DB” 适用场景  瞬间写入量很大,数据库不好支撑或需要很高 成本支撑的场景;  数据需要长久保存,且量会持续增长到比较大 的场景。
  13. 13.  实践经验  合理设计rowKey,非常重要;  数据最好是可恢复的(Facebook也如此建议);  生产环境关闭split,region数不要太多(此建议 来自Facebook)。
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×