work venezuela traduccion micro meaning com2us hive

hive - venezuela - colmena izquierda combinación externa de larga ejecución



hive traduccion (2)

Hortonworks HDP 2.3.0 - Colmena 0.14

Tabla T1 (partición en col1, sin cubeta, ORC) aplicación 120 millones de filas y 6 GB de tamaño de datos Aplicación T2 (partición en col2, sin cubeta, ORC) 200 M filas y 6 MB de tamaño de datos

T1 unión externa izquierda en t2 (t1.col3 = t2.col3)

La consulta anterior se ejecuta durante mucho tiempo en la última fase de reducción en los modos tez y mr. También probé la conversión automática de mapas verdaderos / falsos y explícitos.

Aún así, la consulta se está ejecutando en la última fase de reducción, que nunca termina.

FYI - Si el tamaño de los datos de T2 es de 9k o 1GB, la consulta finaliza.


El problema tal vez es que hay demasiados bytes / filas por reductor. Si la ejecución de la aplicación está atascada en el último reductor único , lo más probable es que esté sesgada. Para verificarlo, seleccione top 5 col3 de ambas tablas, skew es cuando hay muchos registros con el mismo valor de clave (digamos 30%). Si se trata de un sesgo, intente unir la tecla oblicua por separado y UNIÓN TOTAL con todas las demás teclas. Algo como esto:

select * from T1 left outer join on t2 on ( t1.col3 = t2.col3 ) and t1.col3=SKEW_VALUE union all select * from T1 left outer join on t2 on ( t1.col3 = t2.col3 ) and t1.col3<>SKEW_VALUE

Si la ejecución de la aplicación está trabada en la última etapa del reductor, no hay un solo reductor o pocos reductores, entonces verifique la configuración de la sección bytes.per.reducer, tal vez sea demasiado alta.

set hive.exec.reducers.bytes.per.reducer=67108864;


Pero, ¿ha intentado dar tamaño a la combinación automática de conversiones, intente dar tamaño> que a una tabla pequeña que pueda caber en la memoria?

establecer hive.auto.convert.join.noconditionaltask.size = 10000000;