我使用databricks中的spark-xml库来解析xml文件(550 MB)。
Dataset books= spark.sqlContext().read()
.format("com.databricks.spark.xml")
.option("rootTag", "books")
.option("rowTag", "book")
.option("treatEmptyValuesAsNulls", "true")
.load("path");
Spark第一次使用许多任务/分区解析文件。
然后,当我调用此代码时:
books.select("code").count()
Spark开始新的解析。
这是一个避免解析文件每个函数调用数据集的解决方案吗?