La diferencia entre la función de paralelización y la función makeRDD en Spark
La función makeRDD puede proporcionar información de ubicación de los datos, mientras que la función de paralelización solo puede proporcionar cinco información de ubicación.
2. Código para que la función makeRDD proporcione información de ubicación
scala> val iteblog1 = sc.parallelize(List(1,2,3))
iteblog1: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[10] en paralelizar en
scala> val iteblog2 = sc.makeRDD(List(1,2,3 ))
iteblog2: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[11] en makeRDD en
scala> val seq = List( (1 , Lista("iteblog. "sparkhost1.com", "sparkhost2.com")),
| (2, Lista("iteblog.com", "sparkhost2.com")))
secuencia: Lista[(Int, Lista[Cadena])] = Lista((1, Lista(iteblog.com, sparkhost1.com, sparkhost2.com)),
(2 ,Lista (iteblog.com, sparkhost2.com)))
scala> val iteblog3 = sc. makeRDD(seq)
iteblog3: org.apache.spark.rdd.RDD[ Int] = ParallelCollectionRDD[12] en makeRDD en
scala> iteblog3.preferredLocations(iteblog3. También estará en "iteblog3.preferredLocations(iteblog3.partitions(1))
res26: Seq[String] = List(iteblog.com, sparkhost2.com)
scala>.iteblog3.preferredLocations(iteblog3.partitions(0))
res27: Sec[Cadena] = Lista(iteblog.com, sparkhost1.com, sparkhost2.com)
scala> iteblog1.preferredLocations(iteblog1.partitions(0))
res28: Sec[ Cadena] = Lista()