gpt4 book ai didi

apache-spark - 如何在不加载整个文件的情况下读取前 n 行?

转载 作者:行者123 更新时间:2023-12-04 13:21:36 26 4
gpt4 key购买 nike

有一些超过 2 GB 的 XML 和常规文本文件。每次我想在 Spark 中尝试一些东西时,将整个文件加载到内存中在我的机器上花费的时间太长。

有没有办法只读取文件的一部分(类似于对大表运行 SQL 命令,只获取几行而不会永远读取)?

最佳答案

您可以在读取文件时使用 limit(n) 将行数限制为 n。

对于 csv 文件,可以这样做:

spark.read.csv("/path/to/file/").limit(n)

和文本文件为:

spark.read.text("/path/to/file/").limit(n)

在获取的数据帧上运行 explain 显示并没有加载整个文件,这里是在 csv 文件上使用 n=3:

== Physical Plan ==
CollectLimit 3
...

关于apache-spark - 如何在不加载整个文件的情况下读取前 n 行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51429001/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com