本次测试采用3种不同的测试场景,针对开源自建的Hadoop+Spark集群与阿里云云原生数据湖分析DLA Spark在执行Terasort基准测试的性能做了对比分析。本文档主要介绍了3种不同测试场景下的测试环境配置要求。

环境配置要求

测试环境总体要求:
  • 自建Hadoop+Spark集群的网络环境为VPC网络。
  • 自建Hadoop+Spark集群和DLA Spark在同一个地域。
  • 自建Spark集群请使用Spark 2.4.5版本,自建Hadoop请使用2.7.3版本。
3种不同测试场景下的测试环境配置要求:
  • 场景一:1 TB测试数据下DLA Spark+OSS与自建Hadoop+Spark集群性能对比

    场景说明:每天跑一次Terasort 1 TB基准测试,连续运行一个月,自建Hadoop+Spark集群用包年包月来进行计费,DLA Spark+OSS按量来进行计费。对比自建Hadoop+Spark集群和DLA Spark+OSS的费用价格,以及它们运行完Terasort基准测试的耗时,来进行性能对比分析。

    DLA Spark+OSS配置如下:
    配置名称 规格要求 数量
    Driver medium(2核8 GB) 1个
    Executor medium(2核8 GB) 19个
    OSS 2 TB的存储空间
    自建Hadoop+Spark集群配置如下:
    配置名称 规格要求 数量
    Master 4核16 GB(机型为ecs.g5.xlarge) 2个
    Slave 8核32 GB,4个500 GB的高效云盘(机型为ecs.g6.2xlarge) 5个
    说明
    • 进行TeraSort基准测试预计需要使用:输入1 TB+shuffle大约1 TB+输出1 TB。
    • 自建Hadoop+Spark集群的存储采用一个总容量为5 TB的典型配置。磁盘大小为 4*500 GB*5=10 TB,其中高效云盘采用双备份的HDFS配置,因此可用大小为5 TB。一般情况下集群磁盘使用率不能太高,一般建议不要超过80%,否则系统可能会因为空间不足,引发各类稳定性问题。
    • DLA Spark按需使用存储空间和计算资源。其中shuffle不占用OSS存储空间,输入和输出各占用1 TB,共需要占用2 TB的OSS存储空间。
  • 场景二:10 TB测试数据下DLA Spark+OSS与自建Hadoop+Spark性能对比

    场景说明:每天跑一次Terasort 1 TB基准测试,连续运行一个月,自建Hadoop+Spark集群用包年包月来进行计费,DLA Spark+OSS按量来进行计费。对比自建Hadoop+Spark集群和DLA Spark+OSS的费用价格,以及它们运行完Terasort基准测试的耗时,来进行性能对比分析。

    DLA Spark+OSS配置如下:
    配置名称 规格要求 数量
    Driver medium(2核8 GB) 1个
    Executor medium(2核8 GB),200 GB的ESSD数据盘 39个
    OSS 30 TB的存储空间
    自建Hadoop+Spark集群配置如下:
    配置名称 规格要求 数量
    Master 4核16 GB(机型为ecs.g5.xlarge) 2个
    Slave 16核64 GB,8个5.5 TB的本地盘(机型为ecs.d1ne.4xlarge) 5个
    说明
    • 进行TeraSort基准测试预计需要使用:输入10 TB+shuffle大约 10 TB+输出10 TB。
    • 自建Hadoop+Spark集群的存储采用的是大数据量场景下的典型配置,采用本地盘D1机型,成本相对于云盘更便宜。由于本地盘机型要求的空间比较大,16核64 GB只能配置44 TB的本地盘,一般本地盘采用3备份的HDFS配置,所以可用的存储空间为5.5 TB*8*5/3=73 TB。
    • DLA给每个Executor配置了一个200 G的ESSD盘,用于存放Executor shuffle的数据,从而不占用OSS的存储空间。
    • 本测试环境需要的OSS实际存储空间为20 TB,但由于考虑到Hadoop集群的本地盘通常不能占满,为了与自建Hadoop进行对比测试,采用的OSS存储空间为30 TB。
  • 场景三:1 TB测试数据下DLA Spark+用户自建Hadoop集群与自建Hadoop+Spark性能对比

    场景说明:使用自建Spark和DLA Spark分别访问自建Hadoop集群,运行Terasort 1 TB基准测试,对它们的耗时进行对比分析。

    DLA Spark+OSS配置如下:
    配置名称 规格要求 数量
    Driver medium(2核8 GB) 1个
    Executor medium(2核8 GB) 39个
    自建Hadoop+Spark集群配置如下:
    配置名称 规格要求 数量
    Master 4核8 GB 2个
    Slave 8核32 GB,4个500 GB的高效云盘 5个
    说明
    • DLA Spark可以和自建Hadoop配合使用,实现为用户的Hadoop集群加弹性的目的。
    • 本测试中用户自建的Spark集群和DLA Spark都采用40核160 GB的配置。