我有超過15萬個.csv.gz文件,在具有相同前綴的幾個文件夾(在S3)舉辦。每個文件的大小約爲550KB。我的目標是將所有這些文件讀入一個DataFrame,總大小約爲80GB。星火2.0.0:看了很多的.gz文件
我正在使用EMR 5.0.0的體面的羣集:c4.8xlarge的3個實例 (36 vCPU,60 GiB內存,EBS存儲:100 GiB)。
我在路徑中使用通配符讀取文件:
sc.textFile("s3://bucket/directory/prefix*/*.csv.gz")
然後我做了一些地圖操作,我通過調用toDF("col1_name", "col2_name", "col3_name")
改造RDD成數據幀。然後,我會對UDF進行一些調用來創建新列。
當我打電話df.show()
操作採取長期和寫不完。
但不知爲何,進程正在很長的時間?
是讀取大量.csv.gz文件是什麼問題?