如何在pySpark中加载大文件然后高效处理?

时间:2021-05-27 05:36:22

标签: apache-spark pyspark databricks spark-structured-streaming

我存储了一个大文件。我想在 Databricks (pyspark) 中加载和处理这个文件。但由于文件较大,一次性加载整个文件再进行处理效率不高。所以我想分部分加载这个文件,然后在加载下一部分时同时处理它。那么我怎样才能部分读取这个文件呢? 我想到的一个想法是使用结构化流媒体。但在这方面,整个文件也是单批加载的。那么如何将其加载到多个批次中?

1 个答案:

答案 0 :(得分:2)

如果所有数据都位于单个文件中,您就不能让 Spark 避免扫描整个数据。

在读取数据时,Spark 会根据配置 <script src="https://unpkg.com/vue@next"></script> <div id="app"> <input type="text" v-model="searchText"> <ul> <li v-for="data in filteredList()" :key="data"> {{ data }} </li> </ul> </div> 将数据拆分为分区,默认为 128MB。根据产生的分区数量以及 Spark 集群中可用的核心数量,数据将被并行处理。