狠狠撸

狠狠撸Share a Scribd company logo
文档名称:HBase benchmark




                       HBase benchmark




                             -1-
文档名称:HBase benchmark




1. 测试目的
         本测试的目的是确定 hbase 各项性能指标,包括随机读写,顺序读写的性能。
         由于本版本 hdfs(cdh3b2)引入了 sync 的功能,并且默认情况下会对 meta/root
    region 每条记录 sync 一次,以保证 meta/root region 在其所在机器 down 机情况下的数
    据安全,其带来的开销就是写入性能的下降,因此在测试中我们还会对比 hbase 的顺
    序导入性能。


2. 环境

2.1 软硬件
     Hbase 集群规模为 12 台机器,其中 1 台 HMaster,11 台 region server,物理内存 48G,
     处在同一机房
     测试用 client 为 5 台机器 ,物理内存为 16G
     Hbase:hbase 0.20.6,hadoop:cdh3b2 (对比测试中老基线指 hbase 0.20.4 + hadoop
0.20.2, 新基线指 hbase 0.20.6, hadoop: cdh3b2)
     功能上包括多线程 compaction,sync 功能的支持
     日志级别:regionserver 为 INFO



2.3 表结构
   5 个 column family,每个 column family 有 5 个 qualifier

2.4 写入的数据
   KeyLen : 50 B , ValueLen: 100 B



2.5 配置参数的修改
    dfs.replication = 2
    hbase.regions.nobalancing.count = 10
    hbase.client.scanner.caching = 100
    hbase.regionserver.hlog.splitlog.reader.threads = 10
   hbase.regionserver.hlog.splitlog.writer.threads = 20




3. 测试方法

    3.1 顺序写
   本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client 写入的

                                              -2-
文档名称:HBase benchmark


key 长度为 50B, 格式为 <随机整数><index>, 每个 client 有一个唯一的随机整数前缀,而
且对于每一个 client, index 连续。
              其         Value 长度为 100B。 下图为测试中所获得的测试数据。
横坐标分别为每台机器 2 个,4 个,6 个,8 个 client 的 case。纵坐标分别为对应各 case 的
吞吐量,单位为每秒记录数(rec/s)




    3.2 随机写
    本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client 写入的
key 长度为 50B, 格式为 <随机整数>,而且对于每一条记录随机生成一个行 key。Value
长度为 100B。 下图为测试中所获得的测试数据。横坐标分别为每台机器 2 个,4 个,6 个,
8 个 client 的 case。纵坐标分别为对应各 case 的吞吐量,单位为每秒记录数(rec/s)




    3.3 顺序读(scan)
    本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client scan 一
个 row key 区间。 下图为测试中所获得的测试数据。横坐标分别为每台机器 2 个,4 个,6
                               -3-
文档名称:HBase benchmark


个,8 个 client 的 case。纵坐标分别为对应各 case 的吞吐量,单位为每秒记录数(rec/s)




3.4 顺序读(get)
   本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client scan 一个
row key 区间,获取一个 row key 样本,然后顺序的 get 每一个 key 并统计性能。 下图为测
试中所获得的测试数据。横坐标分别为每台机器 2 个,4 个,6 个,8 个 client 的 case。纵坐
标分别为对应各 case 的吞吐量,单位为每秒记录数(rec/s)




3.5 随机读
   本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client scan 一个
row key 区间,获取一个 row key 样本,然后随机的 get 每一个 key 并统计性能。 下图为测
试中所获得的测试数据。横坐标分别为每台机器 2 个,4 个,6 个,8 个 client 的 case。纵坐
标分别为对应各 case 的吞吐量,单位为每秒记录数(rec/s)


                               -4-
文档名称:HBase benchmark




    3.6 导入性能对比测试
    hbase0.20.4 和 hbase 0.20.6 的性能对比测试,在 12 台机器的 hbase 的集群测试,client
   也部署在这 12 台机器。每台机器分别起 2、4、6、8、10 个客户端。

   hbase 0.20.6 + hdfs cdh3b2


         客户端数/台          原始数据平均         原始数据平均        平均每台         平均每台
                          速度 Mb/s        速度 rec/s   client 的平均   client 的平均
                                                     速度 MB/s      速度 rec/s
               2                58.42    16334.21        2.65        742.46
               4                45.22     12643.2      1.03        287.35
               6                38.16    10670.17      0.58        161.67
               8                30.25     8458.59      0.34         96.12

   hbase 0.20.4 + hdfs 0.20.2


         客户端数/台          原始数据平均         原始数据平均        平均每台         平均每台
                          速度 Mb/s        速度 rec/s   client 的平均   client 的平均
                                                     速度 MB/s      速度 rec/s
               2                93.31    26091.82        4.24       1185.99
               4                69.13    19333.11      1.57        439.39
               6                42.68    11934.21      0.65        180.82
               8                34.54     9659.01      0.39        109.76

   对比 hbase 0.20.4 和 hbase 0.20.6 顺序写入性能
         由于 hadoop0.20.2 不支持 sync 功能,日志文件只有当日志滚动时,才保证日
     志数据被持久化。 hadoop cdh3b2 支持 sync 功能,
                       而                       meta/root region 每条都 sync,
     user region 不 sync。
          对比 2 个版本性能,         在开启 sync 功能后,对于 2 个 client 性能损失 37.4%, 4
                                        -5-
文档名称:HBase benchmark


       个 client 性能损失 34.6%, 6 个 client 性能损失 10.59 %, 8 个 client 性能损失
       12.43%。
           使用 hbase0.20.6 + hadoop cdh3b2 最高时可以保证 58.42 MB/s 的原始数据导
       入。据推算,每小时能够导入原始数据 205.38 G。




       对比 2 个版本,以上几项分别为每台机器 2 client,4 client, 6 client,8 client 的性
       能。纵坐标为整个集群的吞吐量(rec/s)

    此外,    当前 HBase 中对于 user region 提供不同安全级别, wal 打开的情况下, region
                                                        当                user
每 hbase.regionserver.flushlogentries ( 默 认 为 100 ) 条 记 录 sync 一 次 , 每
hbase.regionserver.optionallogflushinterval (默认 10 s),将未 sync 的记录 sync 到 hdfs。
    因此,我们针对 hbase.regionserver.flushlogentries 的条目进行了对比测试。我们选择了
12 台 client 机,每台机器 6 个 client 进行顺序导入测试。hbase.regionserver.flushlogentries 分
别选择 100,1000, 10000 以及关闭 user region sync 功能。性能指标如下:

测试 sync 的性能,以上几项分别为 user region 每 100 条,每 1000 条,每 10000 条,以及
user region 不写日志的性能。纵坐标为整个集群的吞吐量(rec/s)




    3.7 不同 column family 和 qualifier 的情况下对比测试

                                     -6-
文档名称:HBase benchmark


    本测试分别在每台 client 机分别启动 5 column family + 5 qualifier, 1 column family + 25
qualifier 2 client, 1 column family + 25 qualifier 6 client, 1 column family + 25 qualifier 8 client,。
下图为测试中所获得的测试数据。纵坐标分别为对应各 case 的吞吐量,单位为每秒记录数
(rec/s)  。
    当使用 1 column family + 25 qualifier 8 client 的情况下,              经过 2 天测试,       网卡峰值可以达
到 100 MB/s,均值可以达到 80 MB/s 左右。




4.结论
    下表为以上测试数据,根据测试结果我们对比当前版本 hbase 更擅长于顺序读写。我们
对比了写入性能,顺序写入性能基本上可以达到随机写入性能的 2 倍。据观察,从每台机器
2 个 client 到每台机器 8 个 client(5 台 client 机器)的 case 中,网卡均未打满,系统吞吐量
并未能随 client 数线性增长,性能瓶颈还需要进一步定位。
    对比 scan 和顺序,随机 get 的性能,不难看出,当前 hbase scan 的性能还是比较优的,
系统吞吐量基本可以随 client 数线性增长。           而随机,  顺序 get 的性能比较差基本上载 3000 rec/s
上下浮动,client 数目对其性能影响不大。


                          client 2            client 4            client 6            client 8
  顺序写                     10219.13             8074.55             6292.89             5971.43
  随机写                      4542.74             3677.05             3426.33             4417.01
顺序读(get)                   3263.23              2682.9             2340.22             1923.48
顺序读 (scan)                17851.15            28062.29            29680.82            44210.63
  随机 get                   2758.64             2827.29             2437.03             1944.71

写性能对比图:




                                                -7-
文档名称:HBase benchmark




读性能对比图:




     此外,根据不同 column family 和 qualifier 的情况下对比测试,我们发现在相同数据量
情况下,1 column family + 25 qualifier 吞吐量是 5 colomn family + 5 qualifier 的 6 倍左右,
所以在应用方面,推荐使用更少的 column family,能够获得更好的导入性能。在 1 column
family + 25 qualifier 8 client case 中网卡基本上可以打满,吞吐量瓶颈在网卡硬件限制。




                                     -8-

More Related Content

What's hot (20)

PPT
Aswan&hump
wang hongjiang
?
PPTX
线上问题排查交流
简放 视野
?
PDF
基于惭贬础的惭测厂蚕尝高可用方案
Louis liu
?
PDF
Apache trafficserver
Din Dindin
?
PDF
Golang advance
rfyiamcool
?
PDF
PostgreSQL 9 Standby
March Liu
?
PPT
Traffic server overview
qianshi
?
PDF
Hbase在淘宝的应用与优化 修改
yp_fangdong
?
PDF
Track1dongsiying4
drewz lin
?
PDF
闯补惫补线上应用问题排查方法和工具(空望)
ykdsg
?
PPTX
硬件体系架构浅析
frogd
?
PPTX
My sql 5.6新特性深入剖析——innodb引擎
frogd
?
PDF
颁别辫丑蹿蝉架构解读和测试分析
Yang Guanjun
?
PDF
Oracle rac资源管理算法与cache fusion实现浅析
frogd
?
PPT
Exodus2 大局观
wang hongjiang
?
PDF
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Ceph Community
?
PDF
贬补诲辞辞辫基线选定
baggioss
?
PDF
分布式Key Value Store漫谈
Tim Y
?
PDF
搁辫肠原理与实现
wavefly
?
PDF
美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术团队
?
Aswan&hump
wang hongjiang
?
线上问题排查交流
简放 视野
?
基于惭贬础的惭测厂蚕尝高可用方案
Louis liu
?
Apache trafficserver
Din Dindin
?
Golang advance
rfyiamcool
?
PostgreSQL 9 Standby
March Liu
?
Traffic server overview
qianshi
?
Hbase在淘宝的应用与优化 修改
yp_fangdong
?
Track1dongsiying4
drewz lin
?
闯补惫补线上应用问题排查方法和工具(空望)
ykdsg
?
硬件体系架构浅析
frogd
?
My sql 5.6新特性深入剖析——innodb引擎
frogd
?
颁别辫丑蹿蝉架构解读和测试分析
Yang Guanjun
?
Oracle rac资源管理算法与cache fusion实现浅析
frogd
?
Exodus2 大局观
wang hongjiang
?
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Ceph Community
?
贬补诲辞辞辫基线选定
baggioss
?
分布式Key Value Store漫谈
Tim Y
?
搁辫肠原理与实现
wavefly
?
美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术团队
?

Viewers also liked (20)

PPT
Pavasaris
Jaunjelgava
?
PPSX
emmettryan2010
Emmett Ryan
?
PPTX
Cets 2015 ls iaco cheap cheerful
Chicago eLearning & Technology Showcase
?
PPTX
About Five Q
Five Q
?
PPTX
Search Engine Optimization "taxes"
timpajak
?
ODP
Virgo 3.0 from OSGi Community Event 2011 at Darmstadt
Christopher Frost
?
PDF
Guangdong and Shenzhen 1
Technopreneurs Association of Malaysia
?
PPT
C:\fakepath\milk fermentation.sekaran
sekaran
?
PDF
Two Studies of Consumer Reviews
Artistic Analytics LLC
?
PPTX
Branding: Who You Are is How You're Heard (5Q GROK Webinar Series)
Five Q
?
PDF
Resumen de se?alización
Fredys Mercado
?
PDF
????? ?24? Y??? : ????
2econsulting
?
PDF
?????? ????????? ????? ????
Mehrabudin Wakman
?
PDF
Bsc FOOD PRODUCTION question and answer
Professor
?
PPTX
Power Point Tugasan 1
Hamidah Samsiah
?
PDF
Koz?owska - projekt
Robert
?
PDF
Study abroad 1
PTE & IELTS training Online
?
PPTX
Personality Development classes Indore :Time management & personality develop...
PTE & IELTS training Online
?
PPTX
Herramientas publicitarias de google
Hernán Rodríguez Amaya
?
PDF
Cets 2014 hybert tips legal effective graphics
Chicago eLearning & Technology Showcase
?
Pavasaris
Jaunjelgava
?
emmettryan2010
Emmett Ryan
?
Cets 2015 ls iaco cheap cheerful
Chicago eLearning & Technology Showcase
?
About Five Q
Five Q
?
Search Engine Optimization "taxes"
timpajak
?
Virgo 3.0 from OSGi Community Event 2011 at Darmstadt
Christopher Frost
?
C:\fakepath\milk fermentation.sekaran
sekaran
?
Two Studies of Consumer Reviews
Artistic Analytics LLC
?
Branding: Who You Are is How You're Heard (5Q GROK Webinar Series)
Five Q
?
Resumen de se?alización
Fredys Mercado
?
????? ?24? Y??? : ????
2econsulting
?
?????? ????????? ????? ????
Mehrabudin Wakman
?
Bsc FOOD PRODUCTION question and answer
Professor
?
Power Point Tugasan 1
Hamidah Samsiah
?
Koz?owska - projekt
Robert
?
Personality Development classes Indore :Time management & personality develop...
PTE & IELTS training Online
?
Herramientas publicitarias de google
Hernán Rodríguez Amaya
?
Cets 2014 hybert tips legal effective graphics
Chicago eLearning & Technology Showcase
?
Ad

Similar to 贬产补蝉别性能测试文档 (20)

PPTX
HBase
Tony Deng
?
PPT
Hbase
baggioss
?
PPTX
贬产补蝉别介绍
Kay Yan
?
PDF
大型网站架构的发展
drewz lin
?
PDF
大型网站架构的发展
Hesey
?
PDF
H base 使用初体验
兴 施
?
PPTX
狈辞蝉辩濒叁步曲
84zhu
?
PPTX
Cassandra实时统计分享 - 赵伟
Shaoning Pan
?
PPTX
罢辞办测辞系列介绍(一)
jiandong yang
?
PPTX
Ocean base 千亿级海量数据库-日照
Shaoning Pan
?
PPTX
我对后端优化的一点想法 (2012)
james tong
?
PPSX
惭测厂蚕尝应用优化实践
mysqlops
?
PPSX
浅谈 My sql 性能调优
thinkinlamp
?
PPTX
我对后端优化的一点想法.辫辫迟虫
james tong
?
PPTX
利用新硬件提升数据库性能
Feng Yu
?
PDF
贬产补蝉别架构介绍、实践
Li Map
?
PDF
Zh tw introduction_to_h_base
TrendProgContest13
?
PDF
服务器基准测试-叶金荣蔼颁驰翱鲍-20121130
Jinrong Ye
?
DOCX
对于贬产补蝉别
Xuewen Zhang
?
PDF
Mysql handlersocket
pwesh
?
HBase
Tony Deng
?
Hbase
baggioss
?
贬产补蝉别介绍
Kay Yan
?
大型网站架构的发展
drewz lin
?
大型网站架构的发展
Hesey
?
H base 使用初体验
兴 施
?
狈辞蝉辩濒叁步曲
84zhu
?
Cassandra实时统计分享 - 赵伟
Shaoning Pan
?
罢辞办测辞系列介绍(一)
jiandong yang
?
Ocean base 千亿级海量数据库-日照
Shaoning Pan
?
我对后端优化的一点想法 (2012)
james tong
?
惭测厂蚕尝应用优化实践
mysqlops
?
浅谈 My sql 性能调优
thinkinlamp
?
我对后端优化的一点想法.辫辫迟虫
james tong
?
利用新硬件提升数据库性能
Feng Yu
?
贬产补蝉别架构介绍、实践
Li Map
?
Zh tw introduction_to_h_base
TrendProgContest13
?
服务器基准测试-叶金荣蔼颁驰翱鲍-20121130
Jinrong Ye
?
对于贬产补蝉别
Xuewen Zhang
?
Mysql handlersocket
pwesh
?
Ad

More from baggioss (8)

PDF
贬诲蹿蝉写流程异常处理
baggioss
?
PPTX
Hic 2011 realtime_analytics_at_facebook
baggioss
?
PDF
[Hi c2011]building mission critical messaging system(guoqiang jerry)
baggioss
?
PDF
Hic2011
baggioss
?
PPT
Hdfs introduction
baggioss
?
PPTX
Hdfs
baggioss
?
PPTX
Hdfs
baggioss
?
PPTX
贬诲蹿蝉原理及实现
baggioss
?
贬诲蹿蝉写流程异常处理
baggioss
?
Hic 2011 realtime_analytics_at_facebook
baggioss
?
[Hi c2011]building mission critical messaging system(guoqiang jerry)
baggioss
?
Hic2011
baggioss
?
Hdfs introduction
baggioss
?
贬诲蹿蝉原理及实现
baggioss
?

贬产补蝉别性能测试文档

  • 1. 文档名称:HBase benchmark HBase benchmark -1-
  • 2. 文档名称:HBase benchmark 1. 测试目的 本测试的目的是确定 hbase 各项性能指标,包括随机读写,顺序读写的性能。 由于本版本 hdfs(cdh3b2)引入了 sync 的功能,并且默认情况下会对 meta/root region 每条记录 sync 一次,以保证 meta/root region 在其所在机器 down 机情况下的数 据安全,其带来的开销就是写入性能的下降,因此在测试中我们还会对比 hbase 的顺 序导入性能。 2. 环境 2.1 软硬件 Hbase 集群规模为 12 台机器,其中 1 台 HMaster,11 台 region server,物理内存 48G, 处在同一机房 测试用 client 为 5 台机器 ,物理内存为 16G Hbase:hbase 0.20.6,hadoop:cdh3b2 (对比测试中老基线指 hbase 0.20.4 + hadoop 0.20.2, 新基线指 hbase 0.20.6, hadoop: cdh3b2) 功能上包括多线程 compaction,sync 功能的支持 日志级别:regionserver 为 INFO 2.3 表结构 5 个 column family,每个 column family 有 5 个 qualifier 2.4 写入的数据 KeyLen : 50 B , ValueLen: 100 B 2.5 配置参数的修改 dfs.replication = 2 hbase.regions.nobalancing.count = 10 hbase.client.scanner.caching = 100 hbase.regionserver.hlog.splitlog.reader.threads = 10 hbase.regionserver.hlog.splitlog.writer.threads = 20 3. 测试方法 3.1 顺序写 本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client 写入的 -2-
  • 3. 文档名称:HBase benchmark key 长度为 50B, 格式为 <随机整数><index>, 每个 client 有一个唯一的随机整数前缀,而 且对于每一个 client, index 连续。 其 Value 长度为 100B。 下图为测试中所获得的测试数据。 横坐标分别为每台机器 2 个,4 个,6 个,8 个 client 的 case。纵坐标分别为对应各 case 的 吞吐量,单位为每秒记录数(rec/s) 3.2 随机写 本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client 写入的 key 长度为 50B, 格式为 <随机整数>,而且对于每一条记录随机生成一个行 key。Value 长度为 100B。 下图为测试中所获得的测试数据。横坐标分别为每台机器 2 个,4 个,6 个, 8 个 client 的 case。纵坐标分别为对应各 case 的吞吐量,单位为每秒记录数(rec/s) 3.3 顺序读(scan) 本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client scan 一 个 row key 区间。 下图为测试中所获得的测试数据。横坐标分别为每台机器 2 个,4 个,6 -3-
  • 4. 文档名称:HBase benchmark 个,8 个 client 的 case。纵坐标分别为对应各 case 的吞吐量,单位为每秒记录数(rec/s) 3.4 顺序读(get) 本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client scan 一个 row key 区间,获取一个 row key 样本,然后顺序的 get 每一个 key 并统计性能。 下图为测 试中所获得的测试数据。横坐标分别为每台机器 2 个,4 个,6 个,8 个 client 的 case。纵坐 标分别为对应各 case 的吞吐量,单位为每秒记录数(rec/s) 3.5 随机读 本测试分别在每台 client 机分别启动 2 个,4 个,6 个,8 个 client,每个 client scan 一个 row key 区间,获取一个 row key 样本,然后随机的 get 每一个 key 并统计性能。 下图为测 试中所获得的测试数据。横坐标分别为每台机器 2 个,4 个,6 个,8 个 client 的 case。纵坐 标分别为对应各 case 的吞吐量,单位为每秒记录数(rec/s) -4-
  • 5. 文档名称:HBase benchmark 3.6 导入性能对比测试 hbase0.20.4 和 hbase 0.20.6 的性能对比测试,在 12 台机器的 hbase 的集群测试,client 也部署在这 12 台机器。每台机器分别起 2、4、6、8、10 个客户端。 hbase 0.20.6 + hdfs cdh3b2 客户端数/台 原始数据平均 原始数据平均 平均每台 平均每台 速度 Mb/s 速度 rec/s client 的平均 client 的平均 速度 MB/s 速度 rec/s 2 58.42 16334.21 2.65 742.46 4 45.22 12643.2 1.03 287.35 6 38.16 10670.17 0.58 161.67 8 30.25 8458.59 0.34 96.12 hbase 0.20.4 + hdfs 0.20.2 客户端数/台 原始数据平均 原始数据平均 平均每台 平均每台 速度 Mb/s 速度 rec/s client 的平均 client 的平均 速度 MB/s 速度 rec/s 2 93.31 26091.82 4.24 1185.99 4 69.13 19333.11 1.57 439.39 6 42.68 11934.21 0.65 180.82 8 34.54 9659.01 0.39 109.76 对比 hbase 0.20.4 和 hbase 0.20.6 顺序写入性能 由于 hadoop0.20.2 不支持 sync 功能,日志文件只有当日志滚动时,才保证日 志数据被持久化。 hadoop cdh3b2 支持 sync 功能, 而 meta/root region 每条都 sync, user region 不 sync。 对比 2 个版本性能, 在开启 sync 功能后,对于 2 个 client 性能损失 37.4%, 4 -5-
  • 6. 文档名称:HBase benchmark 个 client 性能损失 34.6%, 6 个 client 性能损失 10.59 %, 8 个 client 性能损失 12.43%。 使用 hbase0.20.6 + hadoop cdh3b2 最高时可以保证 58.42 MB/s 的原始数据导 入。据推算,每小时能够导入原始数据 205.38 G。 对比 2 个版本,以上几项分别为每台机器 2 client,4 client, 6 client,8 client 的性 能。纵坐标为整个集群的吞吐量(rec/s) 此外, 当前 HBase 中对于 user region 提供不同安全级别, wal 打开的情况下, region 当 user 每 hbase.regionserver.flushlogentries ( 默 认 为 100 ) 条 记 录 sync 一 次 , 每 hbase.regionserver.optionallogflushinterval (默认 10 s),将未 sync 的记录 sync 到 hdfs。 因此,我们针对 hbase.regionserver.flushlogentries 的条目进行了对比测试。我们选择了 12 台 client 机,每台机器 6 个 client 进行顺序导入测试。hbase.regionserver.flushlogentries 分 别选择 100,1000, 10000 以及关闭 user region sync 功能。性能指标如下: 测试 sync 的性能,以上几项分别为 user region 每 100 条,每 1000 条,每 10000 条,以及 user region 不写日志的性能。纵坐标为整个集群的吞吐量(rec/s) 3.7 不同 column family 和 qualifier 的情况下对比测试 -6-
  • 7. 文档名称:HBase benchmark 本测试分别在每台 client 机分别启动 5 column family + 5 qualifier, 1 column family + 25 qualifier 2 client, 1 column family + 25 qualifier 6 client, 1 column family + 25 qualifier 8 client,。 下图为测试中所获得的测试数据。纵坐标分别为对应各 case 的吞吐量,单位为每秒记录数 (rec/s) 。 当使用 1 column family + 25 qualifier 8 client 的情况下, 经过 2 天测试, 网卡峰值可以达 到 100 MB/s,均值可以达到 80 MB/s 左右。 4.结论 下表为以上测试数据,根据测试结果我们对比当前版本 hbase 更擅长于顺序读写。我们 对比了写入性能,顺序写入性能基本上可以达到随机写入性能的 2 倍。据观察,从每台机器 2 个 client 到每台机器 8 个 client(5 台 client 机器)的 case 中,网卡均未打满,系统吞吐量 并未能随 client 数线性增长,性能瓶颈还需要进一步定位。 对比 scan 和顺序,随机 get 的性能,不难看出,当前 hbase scan 的性能还是比较优的, 系统吞吐量基本可以随 client 数线性增长。 而随机, 顺序 get 的性能比较差基本上载 3000 rec/s 上下浮动,client 数目对其性能影响不大。 client 2 client 4 client 6 client 8 顺序写 10219.13 8074.55 6292.89 5971.43 随机写 4542.74 3677.05 3426.33 4417.01 顺序读(get) 3263.23 2682.9 2340.22 1923.48 顺序读 (scan) 17851.15 28062.29 29680.82 44210.63 随机 get 2758.64 2827.29 2437.03 1944.71 写性能对比图: -7-
  • 8. 文档名称:HBase benchmark 读性能对比图: 此外,根据不同 column family 和 qualifier 的情况下对比测试,我们发现在相同数据量 情况下,1 column family + 25 qualifier 吞吐量是 5 colomn family + 5 qualifier 的 6 倍左右, 所以在应用方面,推荐使用更少的 column family,能够获得更好的导入性能。在 1 column family + 25 qualifier 8 client case 中网卡基本上可以打满,吞吐量瓶颈在网卡硬件限制。 -8-