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