hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Geoffrey Jacoby (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-22622) WALKey Extended Attributes
Date Wed, 26 Jun 2019 16:58:00 GMT

    [ https://issues.apache.org/jira/browse/HBASE-22622?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16873519#comment-16873519

Geoffrey Jacoby commented on HBASE-22622:

[~Apache9] - like a view in a relational database, each view is associated with a fixed query
against a parent table or view. So in the FOO.BAR example above, if BAR is a view, it might
have a query of "SELECT * FROM FOO.PARENT WHERE KeyColumn = '123'"

Then if the user says " SELECT * FROM FOO.BAR WHERE KeyColumn2 = '456' ", Phoenix knows to
create a Scan that's the equivalent of "SELECT * FROM FOO.PARENT WHERE KeyColumn = '123' AND
KeyColumn2 = '456'. 

While a view can have another view as a parent, at some point in the chain there will be a
table that maps 1:1 to an HBase table.  So now we have a Scan with both the appropriate table,
projected columns, and Filters. A similar thing happens on UPSERTs to create appropriate Puts
and on DELETE statements to create HBase Deletes. 

> WALKey Extended Attributes
> --------------------------
>                 Key: HBASE-22622
>                 URL: https://issues.apache.org/jira/browse/HBASE-22622
>             Project: HBase
>          Issue Type: New Feature
>          Components: wal
>            Reporter: Geoffrey Jacoby
>            Assignee: Geoffrey Jacoby
>            Priority: Major
> It would be useful if the WAL protobuf and WALKey class included an optional map of extended
key/value attributes that downstream coprocessors could use to annotate WAL Entries. While
standard HBase replication would not use them, custom replication endpoints could use the
data to make filtering decisions or take actions.
> An example use case would be allowing a tool like Phoenix to annotate WAL.Entries to
indicate that a given Entry is associated with a particular Phoenix view rather than the base
Phoenix table. (Multiple logical views in Phoenix can map to the same physical HBase table.)
A custom replication endpoint might choose to replicate some views but not others. 

This message was sent by Atlassian JIRA

View raw message