Spark SQL TPC-H Cookbook

本文档详述了使用Apache Spark 3.1.1在Standalone模式下执行TPC-H测试的全过程,包括环境配置、HDFS集群搭建、Spark集群启动、TPC-H数据准备以及性能测试的执行。测试依赖于hadoop、spark和hdfs,使用Parquet格式存储TPC-H数据,并利用spark-sql-perl执行测试框架。
摘要由CSDN通过智能技术生成

版本号

•Apache Spark 3.1.1 / 2.4.7•Apache Hadoop 2.7.7•TiSpark 2.3.13

环境

内网 3 台机器,每台 40 核 189 GB 内存 NVMe 3TB 磁盘,相互之间已配置好网络连接。

测试逻辑

Standalone 部署的 Spark SQL 读取 HDFS 上以 Parquet 格式存储的 TPC-H 100 数据,随后执行 Query 并计算 Query 耗时。弱依赖 TiSpark 完成数据导入,也可采用其他数据导入方式。强依赖 spark-sql-perl[1] 提供的执行框架。

测试步骤

搭建 HDFS 集群

下载 Hadoop 2.7.7 压缩包并解压,随后在启动脚本中设置环境变量,配置完成后重新进入 Shell 或通过 source 命令使其生效。

export HADOOP_HOME=/path/to/hadoop-2.7.7
export PATH=$PATH:$HADOOP_HOME/bin

这个操作需要在三台机器上都执行,不确定是否需要同一个路径,但是同一个路径是工作的。

配置 $HADOOP_HOME/etc/hadoop 目录下的 core-site.xmlhdfs-site.xml 和 slaves 文件,本次性能测试不依赖 YARN 及 MapReduce 组件。

对于 core-site.xml 添加以下配置,根据具体环境相应调整 hostname 和文件路径。

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://h59:9000</value>
  </property>
  <property>
      <name>hadoop.tmp.dir</name>
      <value>file:///root/tison/data/hadoop/tmp</value>
   </property>
</configuration>

对于 hdfs-site.xml 添加以下配置,同样根据具体环境微调配置值。

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:///root/tison/data/hadoop/hd
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值