sc.sequenceFile
читает Файлы последовательности Hadoop , которые представляют собой плоские файлы, хранящие пары ключ-значение (см. https://wiki.apache.org/hadoop/SequenceFile).. Он создает RDD[(Long, String)]
- СДР, где каждая запись является ключом-значением pair (типа Tuple2[Long, String]
). Затем отображение просто сопоставляет каждую пару только с значением (используя Tuple2._2
).
Полученный jsonString
является RDD[String]
.
Операция сопоставления может быть заменена несколькими эквивалентными вызовами, которые могут быть или не быть более понятными:
// Using the implicit PairRDDFunctions.values:
val jsonString = sc.sequenceFile[Long,String](paths).values
// Using map with anonymous argument:
val rdd = sc.parallelize(Seq((1, 2))).map(_._2)
// Using map with pattern matching:
val rdd = sc.parallelize(Seq((1, 2))).map {
case (key, value) => value
}