Spark如何读取文本格式文件



我在S3中有一个文本格式的数据集(.gz),我正在使用spark.read.csv将文件读取到Spark中。

这是大约 100GB 的数据,但它包含 150 列。我只使用了 5 列(所以我减少了数据的宽度),我只选择了 5 列。

对于这种情况,Spark 是扫描完整的 100GB 数据,还是智能地仅过滤这 5 列而不扫描所有列(如列格式)?

任何这方面的帮助将不胜感激。

imp_feed = spark.read.csv('s3://mys3-loc/input/', schema=impressionFeedSchema, sep='t').where(col('dayserial_numeric').between(start_date_imp,max_date_imp)).select("col1","col2","col3","col4")

将工作流的第 1 步设置为读取 CSV 文件并将其保存为快速压缩的 ORC 或镶木地板文件的过程。

然后去找创建这些文件的人并告诉他们停止它。至少,他们应该切换到Avro + Snappy,因为这更容易拆分初始解析和迁移到列格式。

相关内容

  • 没有找到相关文章

最新更新