多数のテキスト ファイルを読み取るときに、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 個のタスクがあることが示されます。ただし、パーティションごとに 1 つのタスク、ファイルごとに 1 つのパーティションのように、26 のタスクがあると思っていたでしょう。
実際に何が起こっているのかについて、誰かが私にもう少し洞察を与えることができれば、それは素晴らしいことです.