soluciones de datos chispa de inclinación

1, un grado apropiado de paralelismo de reductor final

 

escena aplicable:

Si una tarea tiene 100 Tecla · y en particular gran cantidad de datos, es probable que conduzca a OOM o tarea a ejecutar muy lentamente, si en este tiempo, aumenta el grado de paralelismo, se puede descomponer
la cantidad de datos de la tarea, por ejemplo, la tarea original 100 descomposición de tareas clave a 10, lo que puede reducir la cantidad de datos para cada tarea, por lo que es posible resolver los problemas y tareas OOM funcione lento.


2, para lograr la polimerización aleatoria Key dual (reducebykey)

 

Usando las técnicas de procesamiento de número aleatorio prefijo Key, valor de clave de la polimerización secundario.
(1) la primera polimerización (polimerización parcial): la adición de un número aleatorio para cada valor de clave, realizando una primera reduceByKey operación de polimerización.
(2) En segundo lugar la polimerización (polimerización doble): valor de clave menos el prefijo del número aleatorio, la realización de una segunda polimerización reduceByKey, los resultados de la polimerización en última instancia obtienen en general.
escena aplicable:

Clave aleatoria adecuada groupByKey, reduceByKey  caso datos de valores clave de inclinación se produce cuando algún otro operador de datos de operación. Por ejemplo, del sistema eléctrico clic en el anuncio, si el usuario hace clic en la convergencia de acuerdo con la provincia, el valor original de Estado clave, si el valor de Valor en algunas provincias en particular, los datos de inclinación se produce, puede ser dividida en una pluralidad de cada tecla Key, prefijo Key más el valor de la ruptura de números aleatorios, el grupo compensa las nuevas provincias de valores clave random_, hacer local de polimerización llamada reduceByKey, a continuación un prefijo al azar retirado, el valor se formó todavía Estado Key, a continuación, llamar reduceByKey, polimerización a nivel mundial.


3, después de la primera inclinadas Keys muestreo separar la operación de combinación

 

escena aplicable:

Dos RDD para operaciones de combinación, si hay una seria rdd sesgar los datos, entonces puede tener graves RDDI datos clave que se encuentra inclinado a modo de muestreo, entonces la división RDDl de datos original en un RDDll C Clave inclinada> y datos RDD12 C clave no está inclinado), el RDDI l, RDD1 2 respectivamente RDD2 Joi n operación que se realiza, entonces el resultado de la operación realizada Unión operación de combinación.

principio:

Si la cantidad de datos RDDl l particularmente en este caso era capaz de mitigar los datos de inclinación, debido a la introducción Spark Core paralelismo natural de los mismos datos en una clave de 1 RDDl sido resuelto, por lo que el original está inclinada a fin de lograr clave dispersa con diferentes propósitos de la tarea , facilitó los datos de inclinación.
 

Publicados 159 artículos originales · ganado elogios 75 · vistas 190 000 +

Supongo que te gusta

Origin blog.csdn.net/xuehuagongzi000/article/details/104053052
Recomendado
Clasificación