1
我在閱讀大量文本文件時由Spark創建的任務數量有點困惑。火花如何確定任務數量?
下面是代碼:
val files = List["path/to/files/a/23",
"path/to/files/b/",
"path/to/files/c/0"]
val ds = spark.sqlContext.read.textFile(files :_*)
ds.count()
每個文件夾a, b, c
的包含24個文件,以便有因爲完整b
文件夾中共有26個文件被讀出。現在,如果我執行一個動作,例如.count()
,則Spark UI會顯示我有24個任務。但是,我認爲有26個任務,如每個分區1個任務和每個文件1個分區。
如果有人能夠讓我更深入地瞭解實際發生的事情,那將會很棒。
什麼是你正在使用作業核心的總數是多少?你有沒有設置任何配置? –
爲了便於理解。你可以發佈你的代碼和你的spark ui細節。 –
@SimonSchiff我使用了8個內核,而且我沒有配置我知道的任何東西。但是,這似乎是正確的方向。我試着在一個更大的機器上執行代碼,它有預期的26個任務。 –