我有一个中等大小的xml文件(200MB,bz2),我在AWS emr集群上使用spark-xml加载,该集群有1个主节点和2个核心节点,每个节点有8cpus和32GB RAM。
import org.apache.spark.sql.SQLContext
import com.databricks.spark.xml._
val sqlContext = new SQLContext(sc)
val experiment = sqlContext.read
.format("com.databricks.spark.xml")
.option("rowTag", "EXPERIMENT")
.load("s3n://bucket/path/meta_experiment_set.xml.bz2")
这个加载需要相当长的时间,而我所知道的只有一个分区。是否有可能告诉spark在加载时对文件进行分区以更好地使用计算资源?我知道我可以在加载后进行分区。