2013-09-26 7 views
10

Ho un numero di query hive che il mio sistema esegue regolarmente. Quando guardi il job tracker, vengono visualizzati come "campo SELECT, altro campo ..... (fase 1)" e simili. Non è particolarmente utile per me, quindi ho aggiunto:

set mapred.job.name = more helpful name;
alla richiesta. Ora posso distinguerli meglio. Tuttavia, ora le mie query divise in più fasi vengono visualizzate con lo stesso nome. Quello che mi piacerebbe idealmente è qualcosa sulla falsariga di

set mapred.job.name = more helpful name (Stage-%d);
dove% d verrebbe sostituito dal numero di stage corrente.
E 'possibile, e qualcuno sa come?Come posso controllare un nome di lavoro alveare ma mantenere le informazioni sul palco?

risposta

13

Non sono sicuro che esista un modo per implementare esattamente ciò che desideri ma posso offrire qualcos'altro.
Invece di utilizzare set mapred.job.name è possibile aggiungere un commento all'inizio della query con un more helpful name come questo:
-- this is a more helpful name
SELECT field, other_field ....

Poi, nel JobTracker vedrete -- this is a more helpful name ..... (Stage-%d) "

+0

Ti ho dato una modifica perché, beh, è ​​intelligente, ma cercherò di resistere ancora per un po 'su questo. Grazie per l'idea. –

0

So che questa è una risposta molto tarda, ma comunque se questo mi aiuta a farmelo sapere.

Ciò si verifica perché HIVE non consente di impostare determinati parametri in fase di esecuzione. Ancora se si desidera impostarlo, attenersi alla seguente procedura:

  1. Accedere all'interfaccia utente Ambari come amministratore.
  2. Vai alveare Configs
  3. Aprire personalizzato HiveSite.xml
  4. Add seguente valore chiave coppia
    CHIAVE: hive.security.authorization.sqlstd.confwhitelist.append
    VALORE: mapred.job.name
  5. servizio
  6. Restart HIVE

È possibile qualsiasi coppia chiave-valore in questa configurazione per il quale si ottiene questo errore di runtime

Problemi correlati