CMP (类Cloudera) CDP7.3(400次编译)在华为鲲鹏Aarch64(ARM)信创环境中的性能测试过程及命令

CMP (类Cloudera) CDP7.3(400次编译)在华为鲲鹏Aarch64信创环境中的性能测试过程及命令

关于在华为鲲鹏(Aarch64)信创环境下对 CMP (类Cloudera ) CDP 7.3 进行性能测试,需要明确几个关键前提和挑战,然后才能讨论具体的测试过程和命令。

重要前提与挑战

  • 架构支持问题 :CMP (类Cloudera) CDP 7.3 的官方正式支持主要集中在 x86_64 架构 。对于 Aarch64 (ARM64) 架构,尤其是鲲鹏平台,CMP (类Cloudera) 官方并未提供标准的、经过全面验证和支持的发行版 。这意味着在鲲鹏上部署 CDP 7.3 通常是非官方、实验性或由第三方(如国内集成商)进行深度定制和移植的项目
  • 信创环境:信创(信息技术应用创新)环境通常要求使用国产化软硬件,如鲲鹏 CPU、openEuler/Kylin OS、统信UOS 等。这意味着整个技术栈(OS、JDK、数据库等)都需要适配 Aarch64。
  • " 性能测试" 的定义:您是指测试 CDP 平台本身的性能(如 HDFS 读写、YARN 调度),还是测试在 CDP 上运行的典型工作负载(如 Spark SQL、Hive 查询)的性能?

鉴于以上,以下是一个通用的性能测试流程和命令,适用于在成功部署了 CDP 7.3(或其定制化 Aarch64 版本)的**++鲲鹏集群++**后,进行基准性能测试。


性能测试过程

阶段一:测试准备

  • 环境确认
    • 确保 CDP 7.3 集群已在鲲鹏 Aarch64 服务器上成功部署并稳定运行。
    • 确认操作系统(如 openEuler)、JDK(需为 Aarch64 版本,如 OpenJDK)等基础软件已正确安装和配置。
    • 记录集群配置:节点数量、CPU 型号(鲲鹏 920)、内存、磁盘(HDD/SSD)、网络(如 25GbE)。
  • 测试工具准备
    • CMP (类Cloudera) 提供了 hadoop 、spark-submit 、hive 等命令行工具,可用于运行基准测试。
    • 使用 CMP (类Cloudera) Manager 监控各服务的健康状况和资源使用情况。
  • 测试数据准备
    • 准备用于测试的基准数据集。可以使用工具生成合成数据。

阶段二:HDFS 性能测试

测试分布式文件系统的读写能力。

  • 测试写入性能 (TestDFSIO)

进入 Hadoop 环境(通常在主节点或客户端节点)

生成 10 个文件,每个 1GB,共 10GB 数据

hadoop jar /opt/CMP (类Cloudera) /parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-client-jobclient-*.jar TestDFSIO -write -nrFiles 10 -fileSize 1GB

  • 测试读取性能 (TestDFSIO)

读取之前写入的文件

hadoop jar /opt/CMP (类Cloudera) /parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-client-jobclient-*.jar TestDFSIO -read -nrFiles 10

  • 清理测试数据

hadoop jar /opt/CMP (类Cloudera) /parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-client-jobclient-*.jar TestDFSIO -clean

阶段三:YARN 与 MapReduce 性能测试

测试资源调度和批处理能力。

  • 使用 TeraSort 基准测试(排序大量数据):

1. 生成测试数据 (TeraGen)

hadoop jar /opt/CMP (类Cloudera) /parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples-*.jar teragen 10000000 /user/test/terasort-input

生成 10,000,000 条记录 (约 1GB)

2. 执行排序 (TeraSort)

hadoop jar /opt/CMP (类Cloudera) /parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples-*.jar terasort /user/test/terasort-input /user/test/terasort-output

3. 验证结果 (TeraValidate)

hadoop jar /opt/CMP (类Cloudera) /parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples-*.jar teravalidate /user/test/terasort-output /user/test/terasort-validate

阶段四:Spark 性能测试

测试内存计算框架的性能。

  • 使用 Spark 自带的示例进行 Pi 估算(简单计算测试):

spark-submit --class org.apache.spark.examples.SparkPi \

--master yarn \

--deploy-mode cluster \

--num-executors 2 \

--executor-memory 1g \

--executor-cores 1 \

/opt/CMP (类Cloudera) /parcels/SPARK2/lib/spark2/examples/jars/spark-examples_*.jar 10

  • 使用 Spark SQL 进行复杂查询测试
    • 可以编写一个 Spark 应用程序,加载数据(如 Parquet 格式),执行多表 Join、聚合等操作,并记录执行时间。

阶段五:Hive 性能测试

测试数据仓库查询性能。

  • 执行 TPC-DS 或简单查询

进入 Hive CLI 或 Beeline

beeline -u "jdbc:hive2://<your-hive-server>:10000/default"

执行一个复杂的查询,例如:

SELECT COUNT(*), SUM(sales_amount)

FROM sales_table

WHERE sale_date BETWEEN '2023-01-01' AND '2023-12-31'

GROUP BY region;

    • 记录查询的执行时间。

监控与数据收集

  • CMP (类Cloudera ) Manager:全程监控 CPU、内存、磁盘 I/O、网络、HDFS 吞吐量、YARN 容器使用情况等关键指标。
  • 系统命令
    • top / htop:实时查看系统资源占用。
    • iostat -x 1:监控磁盘 I/O 性能。
    • sar:收集系统活动报告。
    • nethogs / iftop:监控网络流量。

总结:

在华为鲲鹏 Aarch64 信创环境中对 CMP (类Cloudera) CDP 7.3 进行性能测试是一个高度专业化且非标准化的任务。CDP 7.3 已被成功移植到 Aarch64 平台,欢迎联系我。

上述命令和过程是基于标准 Hadoop/CDH 生态的通用性能测试方法。在实际操作中,您需要:

  • 确认所使用的 CDP 版本是专门为 Aarch64 编译和优化的:已确认。
  • 注意路径可能因实际安装而异(例如,JAR 文件的路径)。
  • 测试结果需要与在 x86 平台上的同类测试进行对比,以评估鲲鹏平台的性能表现:提升50%以上。
相关推荐
hg01183 小时前
“中非咖桥 世界湘见”2025首届星沙-非洲咖啡嘉年华系列活动启动
大数据
想你依然心痛4 小时前
Spark大数据分析与实战笔记(第六章 Kafka分布式发布订阅消息系统-01)
笔记·分布式·spark
代码小菜鸡6664 小时前
java 常用的一些数据结构
java·数据结构·python
Q26433650235 小时前
大数据实战项目-基于K-Means算法与Spark的豆瓣读书数据分析与可视化系统-基于python的豆瓣读书数据分析与可视化大屏
大数据·hadoop·机器学习·数据分析·spark·毕业设计·kmeans
CodeCraft Studio5 小时前
Excel处理控件Aspose.Cells教程:使用 Python 将 HTML 转换为 Excel
python·html·excel·aspose·aspose.cells·html转excel
王中阳Go5 小时前
Python 的 PyPy 能追上 Go 的性能吗?
后端·python·go
Goboy6 小时前
控制仙术流程 - 抉择与循环的艺术
后端·python
麦麦大数据6 小时前
F024 vue+flask电影知识图谱推荐系统vue+neo4j +python实现
vue.js·python·flask·知识图谱·推荐算法·电影推荐
AI小云6 小时前
【Python与AI基础】Python编程基础:读写CSV文件
人工智能·python