基于 Spark 处理存储在 SSD 上的数据

Spark based processing of data stored on SSD

我们目前正在使用基于 Spark 2.1 的应用程序,该应用程序分析和处理大量记录以生成一些用于报告生成的统计信息。现在我们使用 150 个执行器,每个执行器 2 个内核,每个执行器 10 GB 用于我们的 spark 作业,数据大小约为 3TB,以 parquet 格式存储。处理 12 个月的数据需要大约 15 分钟的时间。

现在为了提高性能,我们想尝试基于全 SSD 的节点将数据存储在 HDFS 中。那么问题来了,SSD有什么特别的configuration/optimisation吗?是否针对基于 SSD 的 HDFS 与基于 HDD 的 HDFS 上的 Spark 处理性能进行了研究?

http://spark.apache.org/docs/latest/hardware-provisioning.html#local-disks

SPARK_LOCAL_DIRS 是您需要更改的配置。

https://www.slideshare.net/databricks/optimizing-apache-spark-throughput-using-intel-optane-and-intel-memory-drive-technology-with-ravikanth-durgavajhala

用例是 K 表示算法但会有所帮助。