SlideShare a Scribd company logo
HBase 使用初体验

  2011-05-18
 叔宝@搜索中心
Agenda
•   QCon NoSQL简介
•   HBase 介绍
•   HBase@搜索中心
•   遇到的问题
NoSQL@Qcon
• NoSQLs : Key/Value
  – Facebook ,Twitter: HBase 线上每月25T消息
                             hbase + haystack
  – Sina : Mysql->Mysql + Redis 5w qps
  – 豆瓣 : BeansDB 记录为几K~几M之间
  – 淘宝 : tair
  – 百度 : bailingDB 千亿网页存储
  – 人人 : Nuclear Dynamo
  – QQ Mail : SimpleDB 支持业务的cache
  – 视觉中国 : MongoDB
HBase 介绍
•   Background
•   Data Model
•   Architecture
•   Features
•   Hbase API
Background
• BigTable
• Hadoop
Background
What is HBase
•   Column-oriented semi-structured data store
•   Distributed
•   Layered over HDFS
•   Tolerant of machine failure
•   Strong consistency
From facebook
Data Model
• Basic concept
  – Table
  – Row(全局有序)
  – Column = Family + qualifier(不固定)
  – Timestamp(version)
  – Cell
  – region
Data Model(cnt.)
Table : User-Friends
                          Info                        Friends

Row(Uid)   Name     Sex          Age   …   1      3         4      …


   1       John     M            23              Bf

   2       Smith

   3        Lily     F           22        Gf             Sister

   4       Lucy      F           22             Sister
Data Model(cnt.)
• Physical Storage
                            Info                        Friends

  Row(Uid)   Name     Sex          Age   …   1      3         4      …


     1       John     M            23              Bf

     2       Smith

     3        Lily     F           22        Gf             Sister

     4       Lucy      F           22             Sister
Architecture
Architecture(cnt)
• Client
   – Read/Write Data(RegionServer)
   – Schema Manager(Master)
• Zookeeper
   – Master选举和恢复
   – 定位Root region
   – RegionServer上下线感知
• Master
   – Region assign(balancer)
   – Metadata operation
• RegionServer
   – 用户IO请求
   – Split/Compact Region
Where is ipad@query table?
                                 query
• 3 级查找                .META1.
                                 ipad


              -ROOT-
             .META1.
 zookeeper   META2
Write

         MemStore

writer
         HLog
         Seq#1,Table13,Region11,…   StoreFile StoreFile
                                                  StoreFile   Small
         Seq#2,Table5,Region2,…

                                           Compaction
Features
•   Scalability
•   High performance
•   Reliability
•   Hbase API
Scalability
• 扩容
 – 传统方案:分库分表
 – HBase : 直接新增机器
 – RegionServer
   • Split
   • Load balance
 – HDFS
• Schema变化
 – 传统方案:停机维护
 – HBase : 动态增删列(族)
High performance
• 随机读
 – Key/Value
 – Cache(客户端cache+MemStore+Blocking)
 – 按列存储
 – Split/balance
 – BloomFilter
High performance(cnt.)
• 随机写
 – WAL
 – Cache(MemStore)
 – Compact/Split/balance
High performance(cnt.)
• 范围查询Scan
 – Row全局有序
Reliability(Fault-tolerance)
• Layered On HDFS
• WAL
• Automatic Failover
  – Region Server
  – Master
HBase API
•   HBase shell (like mysql/hive)
•   Java API
•   Thrift
•   REST
•   Jython,Scala,Groovy DSL, Cascading, Pig,
    Hive…
Java API
•   Get
•   Put
•   Delete
•   Scan
•   HBaseAdmin
•   MapReduce
HBase@搜索中心
• 一淘
 – 网页(文本信息+全网B2C商品)
 – 图片(缩略图+价格图)
 – 外网合作商家数据
• 主要操作:
 – 网页选取
 – 链接提取
 – 图片处理
 – Index Build(全量+增量)
HBase@搜索中心(cnt.)
• 数据平台
 – 卖家数据存储
  •   基本信息
  •   每天流量来源
  •   反作弊
  •   相关性
 – Query数据存储
HBase@搜索中心(cnt.)
• Dump中心
 – 宝贝数据
 – 用户数据
 –…
• 解决增量问题
遇到的问题/经验分享
• 表Schema设计
    – Key : 查找某个query某个类目id下的数据
    – Column Family
    – 每天一表or总共一张表
•   压缩
•   Region pre-sharding
•   机房数据迁移(bulk loader)
•   WAL的影响评估
相关学习资料
• Soure Code
• BigTable 论文
• Website Book
• Wiki
• 菜鸟看Hbase by 毕玄
• HBase @ Hadoop Day Seattle
• Facebook's New Realtime Analytics System:
  HBase to Process 20 Billion Events Per Day
• QCon北京 2011 总结

More Related Content

PPT
Introduction to Hbase
PDF
Level db
PDF
redis 适用场景与实现
PPTX
Ftn存储设计
PDF
NoSQL误用和常见陷阱分析
PDF
Google LevelDB Study Discuss
PPT
Hbase
PDF
Leveldb background
Introduction to Hbase
Level db
redis 适用场景与实现
Ftn存储设计
NoSQL误用和常见陷阱分析
Google LevelDB Study Discuss
Hbase
Leveldb background

What's hot (20)

DOCX
关于Hbase
PDF
百度系统部分布式系统介绍 马如悦 Sacc2010
PDF
Hbase架构简介、实践
PDF
1.4 go在数据存储上面的应用—毛剑
PPTX
MongoDB SHARE
PPT
Redis 常见使用模式分析
DOC
Koha 導論
PPTX
Redis介绍
PPTX
Mongo db 特性
PPTX
NoSQL-MongoDB
PDF
110412 kningsoft-mongo db-intro-usage-in-mercury
PPT
百度前端技术交流会--搜搜前端架构演变与优化
PPT
[Baidu web frontend_conference_2010]_[soso_frontend_architecture]
PDF
杂志式布局
PDF
Buffer pool implementaion inno db vs oracle
PDF
分布式存储的元数据设计
PDF
分布式Key Value Store漫谈
PDF
新浪微博Feed服务架构
PPT
Hadoop introduction
PDF
Redis介绍
关于Hbase
百度系统部分布式系统介绍 马如悦 Sacc2010
Hbase架构简介、实践
1.4 go在数据存储上面的应用—毛剑
MongoDB SHARE
Redis 常见使用模式分析
Koha 導論
Redis介绍
Mongo db 特性
NoSQL-MongoDB
110412 kningsoft-mongo db-intro-usage-in-mercury
百度前端技术交流会--搜搜前端架构演变与优化
[Baidu web frontend_conference_2010]_[soso_frontend_architecture]
杂志式布局
Buffer pool implementaion inno db vs oracle
分布式存储的元数据设计
分布式Key Value Store漫谈
新浪微博Feed服务架构
Hadoop introduction
Redis介绍
Ad

Similar to H base 使用初体验 (20)

PPTX
Hbase介绍
PDF
Nosql及其主要产品简介
PPTX
Nosql三步曲
PPTX
HBase
PDF
HBase杂谈
PPTX
The Evolution of Data Systems
PDF
Hbase简介
PDF
Mysql HandleSocket技术在SNS Feed存储中的应用
PPTX
開放原始碼 Ch2.4 app - oss - db (ver 1.0)
PDF
分布式存储与TDDL
PPT
H base云存储
PDF
Zh tw introduction_to_h_base
PPTX
1到100000000 - 分布式大型网站的架构设计
PPTX
海量数据计算架构实现
PDF
Sql or no sql, that is the question
PPTX
Ocean base 千亿级海量数据库-日照
PDF
大型网站架构的发展
PDF
大型网站架构的发展
PDF
Ibm solid db_基础
PDF
Big Data, NoSQL, and MongoDB
Hbase介绍
Nosql及其主要产品简介
Nosql三步曲
HBase
HBase杂谈
The Evolution of Data Systems
Hbase简介
Mysql HandleSocket技术在SNS Feed存储中的应用
開放原始碼 Ch2.4 app - oss - db (ver 1.0)
分布式存储与TDDL
H base云存储
Zh tw introduction_to_h_base
1到100000000 - 分布式大型网站的架构设计
海量数据计算架构实现
Sql or no sql, that is the question
Ocean base 千亿级海量数据库-日照
大型网站架构的发展
大型网站架构的发展
Ibm solid db_基础
Big Data, NoSQL, and MongoDB
Ad

H base 使用初体验

  • 1. HBase 使用初体验 2011-05-18 叔宝@搜索中心
  • 2. Agenda • QCon NoSQL简介 • HBase 介绍 • HBase@搜索中心 • 遇到的问题
  • 3. NoSQL@Qcon • NoSQLs : Key/Value – Facebook ,Twitter: HBase 线上每月25T消息 hbase + haystack – Sina : Mysql->Mysql + Redis 5w qps – 豆瓣 : BeansDB 记录为几K~几M之间 – 淘宝 : tair – 百度 : bailingDB 千亿网页存储 – 人人 : Nuclear Dynamo – QQ Mail : SimpleDB 支持业务的cache – 视觉中国 : MongoDB
  • 4. HBase 介绍 • Background • Data Model • Architecture • Features • Hbase API
  • 7. What is HBase • Column-oriented semi-structured data store • Distributed • Layered over HDFS • Tolerant of machine failure • Strong consistency
  • 9. Data Model • Basic concept – Table – Row(全局有序) – Column = Family + qualifier(不固定) – Timestamp(version) – Cell – region
  • 10. Data Model(cnt.) Table : User-Friends Info Friends Row(Uid) Name Sex Age … 1 3 4 … 1 John M 23 Bf 2 Smith 3 Lily F 22 Gf Sister 4 Lucy F 22 Sister
  • 11. Data Model(cnt.) • Physical Storage Info Friends Row(Uid) Name Sex Age … 1 3 4 … 1 John M 23 Bf 2 Smith 3 Lily F 22 Gf Sister 4 Lucy F 22 Sister
  • 13. Architecture(cnt) • Client – Read/Write Data(RegionServer) – Schema Manager(Master) • Zookeeper – Master选举和恢复 – 定位Root region – RegionServer上下线感知 • Master – Region assign(balancer) – Metadata operation • RegionServer – 用户IO请求 – Split/Compact Region
  • 14. Where is ipad@query table? query • 3 级查找 .META1. ipad -ROOT- .META1. zookeeper META2
  • 15. Write MemStore writer HLog Seq#1,Table13,Region11,… StoreFile StoreFile StoreFile Small Seq#2,Table5,Region2,… Compaction
  • 16. Features • Scalability • High performance • Reliability • Hbase API
  • 17. Scalability • 扩容 – 传统方案:分库分表 – HBase : 直接新增机器 – RegionServer • Split • Load balance – HDFS • Schema变化 – 传统方案:停机维护 – HBase : 动态增删列(族)
  • 18. High performance • 随机读 – Key/Value – Cache(客户端cache+MemStore+Blocking) – 按列存储 – Split/balance – BloomFilter
  • 19. High performance(cnt.) • 随机写 – WAL – Cache(MemStore) – Compact/Split/balance
  • 21. Reliability(Fault-tolerance) • Layered On HDFS • WAL • Automatic Failover – Region Server – Master
  • 22. HBase API • HBase shell (like mysql/hive) • Java API • Thrift • REST • Jython,Scala,Groovy DSL, Cascading, Pig, Hive…
  • 23. Java API • Get • Put • Delete • Scan • HBaseAdmin • MapReduce
  • 24. HBase@搜索中心 • 一淘 – 网页(文本信息+全网B2C商品) – 图片(缩略图+价格图) – 外网合作商家数据 • 主要操作: – 网页选取 – 链接提取 – 图片处理 – Index Build(全量+增量)
  • 25. HBase@搜索中心(cnt.) • 数据平台 – 卖家数据存储 • 基本信息 • 每天流量来源 • 反作弊 • 相关性 – Query数据存储
  • 26. HBase@搜索中心(cnt.) • Dump中心 – 宝贝数据 – 用户数据 –… • 解决增量问题
  • 27. 遇到的问题/经验分享 • 表Schema设计 – Key : 查找某个query某个类目id下的数据 – Column Family – 每天一表or总共一张表 • 压缩 • Region pre-sharding • 机房数据迁移(bulk loader) • WAL的影响评估
  • 28. 相关学习资料 • Soure Code • BigTable 论文 • Website Book • Wiki • 菜鸟看Hbase by 毕玄 • HBase @ Hadoop Day Seattle • Facebook's New Realtime Analytics System: HBase to Process 20 Billion Events Per Day • QCon北京 2011 总结