Apache spark Spark函数用于在内存中加载拼花地板文件

Apache spark Spark函数用于在内存中加载拼花地板文件,apache-spark,pyspark,hdfs,rdd,Apache Spark,Pyspark,Hdfs,Rdd,我使用SparkSQL从拼花文件加载了rdd data\u rdd=sqlContext.read.parquet(文件名).rdd 我注意到,一旦有一些聚合函数触发spark作业,就会执行从文件操作的实际读取 我需要测量作业的计算时间,而不需要从文件中读取数据。(即与输入rdd(数据帧)相同,因为它是从sparkSQL创建的) 是否有任何函数触发在执行器内存上加载文件 我已经尝试了.cache(),但似乎它仍在触发读取操作作为其工作的一部分。Spark很懒惰,只会执行它需要的计算。 您可以.c

我使用SparkSQL从拼花文件加载了rdd

data\u rdd=sqlContext.read.parquet(文件名).rdd

我注意到,一旦有一些聚合函数触发spark作业,就会执行从文件操作的实际读取

我需要测量作业的计算时间,而不需要从文件中读取数据。(即与输入rdd(数据帧)相同,因为它是从sparkSQL创建的)

是否有任何函数触发在执行器内存上加载文件


我已经尝试了
.cache()
,但似乎它仍在触发读取操作作为其工作的一部分。

Spark很懒惰,只会执行它需要的计算。 您可以
.cache()
然后
.count()
所有行:

data\u rdd=sqlContext.read.parquet(文件名).rdd
数据缓存()
数据计数()

接下来的任何一组计算都将从缓存状态
data\u rdd
开始,因为我们使用
count()
和do
count=data\u rdd.count()
之后使用data\u rdd的任何操作都不会从文件中读取数据???
count()
强制spark执行所有挂起的计算。然后可以将该对象视为已加载,并且您随后进行的所有计算都将使用缓存状态。