
rainbowzhou
2022/09/05阅读:28主题:默认主题
【rainbowzhou 面试9/101】技术提问--常见的大数据基准测试工具有哪些未命名文章
公众号面试系列 【rainbowzhou 面试9/101】技术提问--常见的大数据基准测试工具有哪些?
大家好,我是rainbowzhou。 在【rainbowzhou 面试8/101】技术提问--如何进行大数据基准测试? 中,我介绍了如何进行大数据基准测试。本篇来说说常见的一些大数据基准测试工具,希望对大家有所帮助。
常见的基准测试工具
目前,大数据基准测试工具种类丰富,大致可以划分为3类:微型负载专用工具、综合类测试工具和端到端的测试工具。下表列举了这3类常用基准测试工具。
分类 | 工具名称 | 测试场景 | 备注 |
---|---|---|---|
微型负载专用工具 | TeraSort | 文本数据排序 | Hadoop自带的工具 |
微型负载专用工具 | Gridmix | Hadoop集群性能 | Hadoop自带的工具 |
微型负载专用工具 | TestDFSIO | HDFS基准性能测试 | Hadoop自带的工具 |
微型负载专用工具 | PerformanceEvaluation | HBase性能测试 | Hadoop自带的工具 |
微型负载专用工具 | NNBench | NameNode硬件加载过程 | Hadoop自带的工具 |
微型负载专用工具 | MRBench | MapReduce小型作业的快速响应能力 | Hadoop自带的工具 |
微型负载专用工具 | YCSB | NoSQL数据库性能 | Yahoo |
微型负载专用工具 | sysbench | MySQL基准测试工具 | 开源工具 |
综合类测试工具 | HiBench | 微型负载搜索业务、机器学习和分析请求 | 英特尔 |
综合类测试工具 | CloudBM | 云数据管理系统基准测试 | CloudBM Web Solution |
综合类测试工具 | TPCx-HS kit | 在MapReduce或Spark流基础上的实时分析 | TPC |
端到端的测试工具 | BigBench | 大数据离线分析 | TPC |
-
微型负载专用工具只测试大数据平台的某个特定组建和应用,包括TeraSort(针对文本数据排序)、YCSB(对比NoSQL数据库性能)等。 -
对于综合类测试工具,模拟几类典型应用,覆盖大数据平台的多个功能组件。例如HiBench,它是一款针对Hadoop和Hive平台的基准测试工具,其负载按照业务可以分为微型负载、搜索业务、机器学习和分析请求。 -
端到端的测试工具可应用到具体领域。例如BigBench,它应用于大数据离线分析场景。
以上三类基准测试工具优缺点如下表:
分类 | 优点 | 缺点 |
---|---|---|
微型负载专用工具 | 效率高、成本低 | 应用场景单一,无法衡量大数据平台性能 |
综合类测试工具 | 覆盖面较广,通用性好 | 无特定业务场景 |
端到端的测试工具 | 与企业的应用场景结合紧密 | 暂无 |
Hibench简介
Hibench是英特尔推出的一款大数据基准测试套件,有助于在速度、吞吐量和系统资源利用率方面评估不同的大数据框架。它包含一组Hadoop、Spark和流媒体工作负载,包括Sort、WordCount、TeraSort、Repartition、Sleep、SQL、PageRank、Nutch索引、Bayes、Kmeans、NWeight和增强的DFSIO等。它还包含Spark Streaming、Flink、Storm和Gearpump的几个流媒体工作负载。它是一个非常好用的测试大数据平台工具。HiBench的使用非常简单,只需以下3步:
-
配置:配置要测试的数据量、大数据运行环境和路径信息等基本参数; -
初始化数据:生成准备计算的数据; -
执行测试:运行对应的大数据计算程序;
HiBench基准测试案例
测试环境:
服务器配置:
测试目标集群:AWS EMR 5.32.0 多主集群: master 3个节点,配置 m5.xlarge 4核16G,64G ssd通用存储 code 2个节点,配置 m5.xlarge 4核16G,64G ssd通用存储
集群软件配置:
集群安装软件: Hive 2.3.7, Spark 2.4.7, HBase 1.4.13, Flink 1.11.2, ZooKeeper 3.4.14, Sqoop 1.4.7,Hadoop 发行版:Amazon 2.10.1
Core节点用于存储数据,运行数据。 Master 用于namenode等程序调度。
Yarn集群配置:<memory:18252, vCores:8>
测试工具
hibeach依赖: hibeach 7.1.1 scala: 2.11.12 apache-maven-3.8.1
集群初始参数配置:
YARN:
mapreduce.map.java.opts -Xmx2458m
mapreduce.reduce.java.opts -Xmx4916m
mapreduce.map.memory.mb 3072
mapreduce.reduce.memory.mb 6144
yarn.app.mapreduce.am.resource.mb 6144
yarn.scheduler.minimum-allocation-mb 32
yarn.scheduler.maximum-allocation-mb 6144
yarn.nodemanager.resource.memory-mb 6144
HADOOP:
YARN_RESOURCEMANAGER_HEAPSIZE 2416
YARN_PROXYSERVER_HEAPSIZE 2416
YARN_NODEMANAGER_HEAPSIZE 2048
HADOOP_JOB_HISTORYSERVER_HEAPSIZE 2416
HADOOP_NAMENODE_HEAPSIZE 1843
HADOOP_DATANODE_HEAPSIZE 778
以上对常见的大数据基准测试工具进行了介绍,并且进行了案例介绍:使用Hibench基准测试工具,对EMR进行了部分基准测试。
参考资源:
看完今天的分享对你是不是有所启发呢,有任何想法都欢迎大家后台私信我,一起探讨交流。 如果文章对你有帮助,记得在看、点赞、转发、加关注哦!
作者介绍
