[
https://issues.apache.org/jira/browse/HBASE-8693?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nick Dimiduk updated HBASE-8693:
--------------------------------
Attachment: 0001-HBASE-8693-Extensible-data-types-API.patch
WIP. This patch introduces an extensible data types API for HBase. It is
inspired by the following systems:
- PostgreSQL. Postgres has a user-extensible data type API, which has been
used to great effect by it's user community (ie, PostGIS). The desire is for
HBase to expose an equally extensible data type API. One aspect of the Postgres
data type is the ability to provide equivalence functions for index operations.
This appears to be of critical performance utility for its execution engine.
- Orderly. Orderly handles the issue of compound rowkeys by providing
convenience classes for handling these kinds of data types. This influence is
reflected in the Struct and Union family of classes.
- Phoenix. The PDataType enum used in Phoenix provides type hints, similar
Postgres's equivalence functions. These appear to be used during query
execution for numerical type promotion.
This initial WIP patch is intended to take a first cut at exercising the
OrderedBytes API, particularly around numerical value support. The other
intention is to establish the set of data types HBase should provide out of the
box. The final intention of this WIP patch is to shop around the data types and
API for their definition with a wider audience. Feedback from maintainers of
both Phoenix and the Pig, Hive, and Impala HBase interoperability layers is
desired.
Patch TODOs include:
- proper implementation of isComparableTo and isCoercibleTo
- test coverage
- javadocs
> Implement extensible type API based on serialization primitives
> ---------------------------------------------------------------
>
> Key: HBASE-8693
> URL: https://issues.apache.org/jira/browse/HBASE-8693
> Project: HBase
> Issue Type: Sub-task
> Components: Client
> Reporter: Nick Dimiduk
> Fix For: 0.95.2
>
> Attachments: 0001-HBASE-8693-Extensible-data-types-API.patch
>
>
--
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