From issues-return-394972-archive-asf-public=cust-asf.ponee.io@hbase.apache.org Wed Jun 26 16:58:02 2019 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [207.244.88.153]) by mx-eu-01.ponee.io (Postfix) with SMTP id 2E89018072F for ; Wed, 26 Jun 2019 18:58:02 +0200 (CEST) Received: (qmail 76740 invoked by uid 500); 26 Jun 2019 16:58:01 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 76615 invoked by uid 99); 26 Jun 2019 16:58:01 -0000 Received: from mailrelay1-us-west.apache.org (HELO mailrelay1-us-west.apache.org) (209.188.14.139) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 26 Jun 2019 16:58:01 +0000 Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 84A11E2E29 for ; Wed, 26 Jun 2019 16:58:00 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 4681B25816 for ; Wed, 26 Jun 2019 16:58:00 +0000 (UTC) Date: Wed, 26 Jun 2019 16:58:00 +0000 (UTC) From: "Geoffrey Jacoby (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-22622) WALKey Extended Attributes MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ 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 (v7.6.3#76005)