[
https://issues.apache.org/jira/browse/HBASE-8201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nick Dimiduk updated HBASE-8201:
--------------------------------
Release Note:
OrderedBytes provides a data encoding format in which the resulting byte[]
retains the same sort order as the natural types. Encoded formats can be
inspected and decoded without forward knowledge of their content.
Implementations are provided for integer and floating point numbers with 32-
and 64-bits of precision, numeric values of arbitrary precision, Strings, and
byte[]s. Utility methods for counting and skipping encoded entries are also
provided.
Most of the encoding formats are modeled after the SQLite4 key encoding format.
Implementations of variable-length encodings are very similar. Fixed-width
encodings are modeled after the fixed-width formats provided by the Orderly
library. Javadocs on the OrderedBytes class describe the encoding format in
detail. See http://sqlite.org/src4/doc/trunk/www/key_encoding.wiki for
additional context.
Notable deviation from the sqlite4 spec include:
- Different header byte values. This is to give users more room to place their
own, custom encoding extensions as they see fit.
- BlobCopy is modified to include a termination byte of 0x00 in descending
order. This is necessary in order to maintain reverse sort order of empty
values. It is also renamed from "BlobLast".
- Support for fixed-length integer and float encodings. Based on
implementations from the Orderly library.
> OrderedBytes: an ordered encoding strategy
> ------------------------------------------
>
> Key: HBASE-8201
> URL: https://issues.apache.org/jira/browse/HBASE-8201
> Project: HBase
> Issue Type: Sub-task
> Components: Client
> Reporter: Nick Dimiduk
> Assignee: Nick Dimiduk
> Fix For: 0.98.0, 0.95.2
>
> Attachments:
> 0001-HBASE-8201-OrderedBytes-order-preserving-encoding.patch,
> 0001-HBASE-8201-OrderedBytes-order-preserving-encoding.patch,
> 0001-HBASE-8201-OrderedBytes-order-preserving-encoding.patch,
> 0001-HBASE-8201-OrderedBytes-order-preserving-encoding.patch,
> 0001-HBASE-8201-OrderedBytes-order-preserving-encoding.patch,
> 0001-HBASE-8201-OrderedBytes-order-preserving-encoding.patch,
> 0001-HBASE-8201-OrderedBytes-order-preserving-encoding.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch,
> 0001-HBASE-8201-OrderedBytes-provides-order-preserving-se.patch
>
>
> Once the spec is agreed upon, it must be implemented.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira