繁体   English   中英

如何从Spark DataFrame中选择稳定的行子集?

[英]How can I select a stable subset of rows from a Spark DataFrame?

我已经将一个文件加载到Zeppelin笔记本中的DataFrame中,如下所示:

val df = spark.read.format("com.databricks.spark.csv").load("some_file").toDF("c1", "c2", "c3")

这个DataFrame有超过1000万行,我想开始只使用一部分行,所以我使用limit:

val df_small = df.limit(1000)

但是,现在当我尝试在其中一列的字符串值上过滤DataFrame时,每次运行以下操作时都会得到不同的结果

df_small.filter($"c1" LIKE "something").show()

如何为运行的每个过滤器获取一个保持稳定的df子集?

Spark作为一个延迟加载工作,所以只有在语句.show上面才会执行2个语句。 你可以把df_small写入一个文件,每次都可以单独阅读或者执行df_small.cache()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM