Что здесь происходит в Spark Code - PullRequest
0 голосов
/ 09 мая 2018
 val jsonString = sc.sequenceFile[Long,String](paths).map(x => {
      x._2
    })

Переменная paths содержит csv местоположений для некоторых текстовых файлов. Что именно здесь отображает код? некоторые могут объяснить мне, что здесь происходит. я немного растерялся.

1 Ответ

0 голосов
/ 09 мая 2018

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
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...