Is there any way I can output the results from a scan in the hbase shell to a file? I'm assuming this is easy but I haven't been able to find anything in the documentation.
4 Answers
I know that this post is quite old but i was searching something about HBase myself and came across with it.
Well i don't know if this is the best way to do it, but you can definitely use the scripting option HBase gives you. Just open a shell (preferably go to the directory bin of HBase) and run
echo "scan 'foo'" | ./hbase shell > myText where foo is the name of the table you want to scan. If you then open myText you will see the results in there. Hope i helped!
5 Comments
La-comadreja
Worked like a charm :)
Ken Williams
The problem with this solution is that hbase is fairly chatty, so you don't just get the command output, you also get a bunch of hbase conversation. If you want to get data and parse it, it's pretty icky.
Pranjal Sahu
@KenWilliams Also it is little slow. Is there any way faster way you know. Actually I have to execute a command in loop for 24 times and it is taking a lot of time and I don't want to write a java code to do that.
Ken Williams
@sahu not that I know of - the best option might be to write the results to HDFS first, then export from HDFS to the local filesystem.
Sakthivel
It works! Need to run in directly in shell. Not in HBase shell prompt