La diferencia entre dependencia en sentido amplio y dependencia en sentido estricto
Para diferentes funciones de transformación, las dependencias entre RDD se dividen en dependencias estrechas y dependencias amplias (también llamadas dependencias aleatorias).
1.1 Dependencia estrecha
La dependencia estrecha significa que una partición RDD principal corresponde a una partición RDD secundaria. En otras palabras, una partición RDD principal corresponde a una partición RDD secundaria, o varias particiones RDD primarias corresponden a una partición RDD secundaria. Por lo tanto, la estrecha relación de dependencia se puede dividir en dos situaciones:
1 partición RDD secundaria corresponde a 1 partición RDD principal, como mapa, filtro, unión y otros operadores
1 RDD secundario Una partición corresponde a N particiones RDD principales, como la unión compartida
1.2 Dependencia generalizada
La dependencia generalizada se refiere a una partición RDD principal correspondiente a múltiples particiones RDD secundarias. Las dependencias amplias se dividen en dos situaciones
Un RDD principal no corresponde a todas las particiones RDD secundarias, como groupByKey, reduceByKey, sortByKey
Un RDD principal corresponde a todas las particiones RDD secundarias Partición RDD, como uniones de particiones no cooperativas
Comparación de dependencias estrechas y dependencias amplias.png
.