¿Cómo podemos probar las funciones de la colmena sin hacer referencia a una tabla?
Pregunta
Quería entender el UDF WeekofEar y cómo comienza la primera semana.Tuve que golpear artísticamente una mesa y correr la consulta .Quería no golpear la mesa y calcular los valores.En segundo lugar, ¿puedo mirar el código fuente UDF?
SELECT weekofyear
('12-31-2013')
from a;
Solución
No necesita la tabla para probar UDF desde Hive 0.13.0.
Ver este jira: Hive-178 Seleccionar sin debe asumir una mesa de una filasin columnas
prueba:
hive> SELECT weekofyear('12-31-2013');
Resultado:
OK
1
Time taken: 0.912 seconds, Fetched: 1 row(s)
El código fuente (rama maestra) está aquí: UDFWEEKOFYEAR.JAVA
Otros consejos
Si usted es desarrollador de Java, puede escribir casos de prueba JUII, probar los UDF.
Puede buscar el código fuente de todas las funciones incorporadas de Hive en grepcode .
No creo que la ejecución de UDF sin golpear las tablas es posible en la colmena. Incluso los desarrolladores de Hive golpea la mesa en pruebas de UDF.
Debe poder usar cualquier tabla con al menos una fila para probar las funciones. Aquí hay un ejemplo utilizando algunas funciones personalizadas que realizan el trabajo y salgan un resultado de una cadena.
Reemplace anytable con una tabla real.
Seleccione ST_ASTTXT (St_Intersection (ST_POLYGON (2,0, 2,3, 3,0), ST_POLYGON (1,1, 4,1, 4,4, 1,4))) desde anytable límite 1;
Resuluts Hive:
OK
Polígono ((2 1, 2.6666666666666665 1, 2 3, 2 1))
Tiempo tomado: 0.191 segundos, Fetched: 1 fila (s)
Hive>