Я новичок в Spark. Рассмотрим следующий код:
val rdd = sc
.objectFile[(Int, Int)]("path")
.partitionBy(new HashPartitioner(sc.defaultParallelism))
.persist()
rdd.count()
Читается ли каждый кортеж из файла, напрямую отправляемого в его раздел, указанный разделителем ha sh? Или же весь файл сначала читается в память без учета разделителя, а затем распределяется в соответствии с разделителем. На мой взгляд, первый может быть более эффективным, поскольку данные перетасовываются один раз, в то время как второму нужны два тасования.