Apache spark 如何检查PySpark中的空RDD
我试图用python的方式检查流数据中的计数值或空RDD,hardy查找方法,还尝试了下面链接中的示例。 : 当且仅当RDD不包含任何元素时返回trueApache spark 如何检查PySpark中的空RDD,apache-spark,pyspark,spark-streaming,rdd,Apache Spark,Pyspark,Spark Streaming,Rdd,我试图用python的方式检查流数据中的计数值或空RDD,hardy查找方法,还尝试了下面链接中的示例。 : 当且仅当RDD不包含任何元素时返回true sc.range(0,0).isEmpty() True sc.range(0,1).isEmpty() False 尝试使用以下代码片段 tweetStream.foreachRDD((rdd, time) => { val count = rdd.count() if (count > 0) { var f
sc.range(0,0).isEmpty()
True
sc.range(0,1).isEmpty()
False
尝试使用以下代码片段
tweetStream.foreachRDD((rdd, time) => {
val count = rdd.count()
if (count > 0) {
var fileName = outputDirectory + "/tweets_" + time.milliseconds.toString
val outputRDD = rdd.repartition(partitionsEachInterval)
outputRDD.saveAsTextFile(fileName)
}
您只需按照用户6910411的建议使用:
def process_rdd(rdd):
print rdd.count()
print("$$$$$$$$$$$$$$$$$$$$$$")
streamrdd_to_df(rdd)
def empty_rdd():
print "###The current RDD is empty. Wait for the next complete RDD ###"
clean.foreachRDD(lambda rdd: empty_rdd() if rdd.count() == 0 else process_rdd(rdd))
它返回布尔值。请格式化您的答案,以提高质量。。特别是添加代码块。这里的“干净”是什么?
df.rdd.isEmpty()