Ho impostato un cluster Hadoop (utilizzando la distribuzione Cloudera tramite Cloudera Manager) e sto eseguendo alcune query Hive utilizzando l'interfaccia Hue, che utilizza Beeswax sotto.Come aggiornare/cancellare il DistributedCache quando si utilizza Hue + Beeswax per eseguire query Hive che definiscono le UDF personalizzate?
Tutte le mie query funzionano correttamente e ho anche distribuito con successo un UDF personalizzato.
Tuttavia, durante l'implementazione dell'UDF, mi sono imbattuto in un problema di controllo delle versioni molto frustrante. Nella versione iniziale della mia classe UDF, ho utilizzato una classe di terze parti che causava uno StackOverflowError
.
Ho corretto questo errore e ho verificato che l'UDF possa essere distribuito e utilizzato correttamente dalla riga di comando dell'alveare.
Poi, quando sono tornato a utilizzare Hue e Beeswax di nuovo, ho continuato a ottenere lo stesso errore. Potrei risolvere questo solo cambiando il mio nome di classe java UDF. (Da Lower
a Lower2
).
Ora, la mia domanda è, qual è il modo corretto per gestire questo tipo di problemi di versione?
Da quello che ho capito, quando aggiungo i giare usando i pratici campi del modulo a sinistra, vengono aggiunti alla cache distribuita. Quindi, come posso aggiornare/cancellare la cache distribuita? (Non ho potuto ottenere LIST JARS;
ecc per eseguire dall'interno Hive/cera d'api. Mi dà un errore di sintassi.)
Hai risolto questo problema? – yatul
Si potrebbe considerare di archiviare un bug. –