首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >由过滤器生成的PySpark DataFrame -它存储在哪里?

由过滤器生成的PySpark DataFrame -它存储在哪里?
EN

Stack Overflow用户
提问于 2018-03-19 16:59:33
回答 1查看 237关注 0票数 0

对于任何软件架构师来说,这可能是一个基本的问题,但我很难理解这个概念。

假设我在hdfs上存储了一个大的Spark。我现在执行如下过滤操作:

代码语言:javascript
复制
df_new = my_big_hdfs_df.where("my_column='testvalue'")
print(type(df_new))

class‘>类pyspk.sql.dataframe.DataFrame’>

df_new究竟存储在哪里?如果这是一条普通的蟒蛇,我会猜在记忆中的某个地方。但对于PySpark来说也是这样吗?还是只是某种参考?它是否保存在hdfs的某个磁盘上?

EN

回答 1

Stack Overflow用户

发布于 2018-03-19 17:05:53

df_new是在where函数中应用条件后对my_big_hdfs_df的一种转换。

换句话说,df_new是一个逻辑计划,一旦调用action,就会对数据执行该计划。

在调用show()count() foreach()等操作之前,不会触及数据。

一旦调用了一个操作,数据就会被转换,所有的转换都存储在内存中。有时,当调用persist()时,它们会溢出到磁盘中。并在调用要保存的操作时保存到磁盘。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49368475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档