2012-04-05 24 views

risposta

41

So che questo post è piuttosto vecchio, ma stavo cercando qualcosa su HBase e l'ho trovato.

Beh, non so se questo è il modo migliore per farlo, ma puoi sicuramente usare l'opzione di script che HBase ti offre. Basta aprire una shell (meglio passare alla directory bin del HBase) ed eseguire

echo "scan 'foo'" | ./hbase shell > myText 

dove foo è il nome della tabella che si desidera eseguire la scansione. Se apri quindi myText vedrai i risultati lì dentro. Spero di aver aiutato!

+0

Ha funzionato come un fascino :) –

+1

Il problema con questa soluzione è che hbase è abbastanza loquace, quindi non si ottiene solo l'output del comando, si ottiene anche un sacco di conversazione hbase. Se vuoi ottenere dati e analizzarli, è piuttosto icky. –

+0

@KenWilliams Inoltre è un po 'lento. C'è un modo più veloce che tu conosca. In realtà devo eseguire un comando in loop per 24 volte e ci vuole un sacco di tempo e non voglio scrivere un codice java per farlo. – sahu

8

Un'altra opzione utilizzando un EOF qui doc, potenzialmente più personalizzabile:

hbase shell <<EOF >myText 
scan 'foo' 
EOF 
3

è possibile utilizzare anche qui le stringhe troppo (se la tua shell li sostiene):

$ hbase shell <<< "scan 'sometable'" > myoutput.txt 

Sopra che sto facendo questo in Bash su un sistema Linux, per esempio.

Problemi correlati