Что такое "почтовые" методы в Scala и Spark? - PullRequest
0 голосов
/ 17 мая 2018

В Scala, Spark и многих других "больших данных" фреймворках, языках, библиотеках я вижу методы с именем "zip*".Например, в Scala типам List присущ метод zipWithIndex, который вы можете использовать следующим образом:

val listOfNames : List[String] = getSomehow()
for((name,i) <- listOfNames.zipWithIndex) {
  println(s"Names #${i+1}: ${name}")
}

Аналогично Spark имеет RDD методов, таких как zip, zipPartitions и т. Д.

Но имя метода "zip" меня полностью отбрасывает.Это концепция в вычислительной технике или дискретная математика ?!Какова мотивация для всех этих методов с " zip " в их именах?

1 Ответ

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

Они названы zip, потому что вы архивируете два набора данных, как молнию.

Чтобы визуализировать это, возьмите два набора данных:

x = [1,2,3,4,5,6]
y = [a,b,c,d,e,f]

и затем объедините их вместе, чтобы получить

   1 a
   2 b
   3 c
  4   d
 5     e
6       f

Я ставлю дополнительный интервал, просто создавая иллюзию молнии при движении вниз по набору данных:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...