En la colmena si tengo una tabla agrupada con CLUStered BY (employee_id) INTO 10 BUCKETS, al observar los valores, ¿cómo sabré qué valor entra en cada cubo?

Gracias.

0
aiman 23 mar. 2017 a las 11:29

2 respuestas

La mejor respuesta

Al ver los datos, no puede juzgar qué valor irá a qué segmento. Bucketing funciona en Hashcodes. Para cada valor, se generará un código hash y los valores con el mismo código irán al mismo depósito.

Pero puede intentar generar el código hash para un determinado conjunto de valores utilizando la función de código hash en java y puede adivinar que este valor podría entrar en este depósito.

Puede consultar este enlace para obtener más detalles sobre Bucketing in Hive.

1
Kiran Krishna Innamuri 23 mar. 2017 a las 09:30

Cubos funciona en hashing. Es como crear marcadores de posición para sus datos. Si sabe que sus datos tienen valores de diversos grados, puede generar muchos depósitos creados para limitar el número de depósitos, siempre puede aplicar una lógica personalizada. Por ejemplo necesita fijar el número de cubos a 4, luego puede modificar (emplyoee_id% 4) siempre le dará valores entre 0,1,2,3 y, por lo tanto, Hive enrutará los datos en consecuencia.

1
Amit_Hora 23 mar. 2017 a las 11:04