我在 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")