I have another question though ;)
Is there a better separator I could use to accomplish natural sorting?
Also what is the preferred way to use start and stop keys when scanning?
For example: STARTROW => "foo", ENDROW => "foo#{what should go here?}".
Thanks
On 8/22/11 4:59 PM, Mark wrote:
After further investigation it turns out it is my use case.
My keys are actually in the form of:
"idx_query/foo bar/9223372035540718511"
"idx_query/foo/9223372035540718648"
Now that I look at it, it make perfect sense why "foo bar" comes
before "foo/"
Sorry for the confusion.
On 8/22/11 9:16 AM, Chris Tarnas wrote:
Good point on the sorting issues with thrift - what client language
are you using? Using perl I have not seen inconstancies in ordering.
Do your strings have any particular terminator that is being included
but not seen in your output? Can you send out the rowkeys from scans
in the HBase shell? That would help narrow it down.
-chris
On Aug 22, 2011, at 10:55 AM, Jesse Hutton wrote:
I don't use the thrift API, but my suspicion is that it doesn't return
results in the correct order. You're not the only one I've seen report
strange things about results ordering recently, and IIRC they were
using
thrift as well.
Can you verify that the results sort the same using the Java API or
even by
looking at it in the HBase shell?
Jesse
On Mon, Aug 22, 2011 at 11:28 AM, Mark<[email protected]>
wrote:
Im still also confused on how "foo " is less than "foo". Aren't their
respective bytes [102, 111, 111, 32] , and [102, 111, 111] ?
On 8/22/11 7:33 AM, Mark wrote:
Is there anyway to around this to achieve natural ordering? Thanks
On 8/21/11 10:17 PM, Chris Tarnas wrote:
HBase doesn't use the localized sorting rules, it sorts on the byte
value. Space is ASCII 32, a value less than the alphanumeric
characters.
-chris
On Aug 21, 2011, at 8:11 PM, Mark<[email protected]**>
wrote:
FYI I am using openScannerWithPrefix thrift api call
On 8/21/11 6:47 PM, Mark wrote:
Why when scanning do I see the following sort order?
"foo bar"
"foo bar"
"foo"
I thought that "foo" would be sorted before "foo bar" since
this is
natural ordering. Why am I seeing these results?