这篇文章给大家分享的是有关Hbase如何实现性能测试的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
之前测试过HBASE的参数对性能影响,今天的测试主要针对写吞吐量,通过对比不同客户端的数量,以及插入量,来看看HBASE写的情况下,大概有多少每秒插入。
测试硬件:8vcore, 32G内存 , 8台机器, 5个nodemanager/region server ,大家可能知道每个map,reduce 默认1个 vcores,1G内存 很显然,我一共40个vcores, 所以最多也只有39个map, reduce。
测试命令:
time hbase org.apache.hadoop.hbase.PerformanceEvaluation --rows=1000000 sequentialWrite 50
客户端 | 数据量 | 执行时间 | 写吞吐量 |
1 | 1000000 | 54s | 18000条/s |
1 | 10000000 | 2m56s | 58800条/s |
1 | 100000000 | 3m20s | 78000条/s |
10 | 100000/client | 1m24.625s | 11904条/s |
10 | 1000000/client | 4m2.163s | 41000条/s |
10 | 10000000/client | 14m33.584s | 113000条/s |
50 | 10000/client | 3m29.969s | 3292条/s |
50 | 100000/client | 3m9.325s | 26315条/s |
50 | 1000000/client | 13m50.013s | 60240条/s |
先说明一下,上面测试数据其实是不准确的,主要硬件限制,PerformanceEvaluation 默认每个客户端为10个MAP,50个并发的话就是500个MAP,每次只能跑39个MAP,很显然很多MAP处于pending状态,如果有足够好的硬件,结果会好很多。另外,PerformanceEvaluation 是先随机生成数据,再通过reduce来插入,所以整个时间还包含map的时候,并不单纯是插入时间。
所以从上述结果来看,看不出来太多问题,但是也有惊喜,10个客户端的情况下达到11W条/秒, 如果有足够好的CPU,我相信即使并发增加,HBASE的写性能还是非常不错的。
感谢各位的阅读!关于“Hbase如何实现性能测试”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。