Foro Formación Hadoop
Apache Spark
Hola Miguel,
La función mapPartitions puede ser utilizada para cualquier tipo de fichero. Esta función lo que indica es que se va a procesar el RDD a nivel de partición.
En nuestro ejemplo son xml ya que es la manera de indicar que si tenemos ficheros xml que no llegan al tamaño del bloque, sabemos que este fichero va a corresponder con una única partición de nuestro RDD, por lo que vamos a procesarlo conjuntamente (si se se utilizara la función map, procesaríamos cada línea del xml por separado, por lo que no podríamos utilizar las funciones de lectura de xml).
Conclusión (independientemente del formato de fichero que vayamos a procesar):
Función map(f) -> Aplica la función f a cada uno de los registros del RDD.
Función mapPartitions(f) -> Aplica la función f a cada una de las particiones del RDD.
Espero que esto te aclara un poco las dudas.
Un saludo,
Social networks