I am designing an app to run on hbase and want to interactively explore the contents of my cluster. I am in the hbase shell and I want to perform a scan of all keys starting with the chars "abc". Such keys might inlcude "abc4", "abc92", "abc20014" etc... I tried a scan
hbase(main):003:0> scan 'mytable', {STARTROW => 'abc', ENDROW => 'abc'}
But this does not seem to return anything since there is technically no rowkey "abc" only rowkeys starting with "abc"
What I want is something like
hbase(main):003:0> scan 'mytable', {STARTSROWPREFIX => 'abc', ENDROWPREFIX => 'abc'}
I hear HBase can do this quickly and is one of its main selling points. How do I do this in the hbase shell?
So it turns out to be very easy. The scan ranges are not inclusive, the logic is start <= key < end. So the answer is
scan 'mytable', {STARTROW => 'abc', ENDROW => 'abd'}