[
https://issues.apache.org/jira/browse/PHOENIX-2795?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
James Taylor updated PHOENIX-2795:
----------------------------------
Description:
When a view or base table is created, we should have an string
AUTO_PARTITION_SEQ parameter on CREATE TABLE which uses a sequence based on the
argument on the server side to generate a WHERE clause with the first PK column
and the unique identifier from the sequence.
For example:
{code}
CREATE SEQUENCE metric_id_seq;
CREATE TABLE metric_table (metric_id INTEGER, val DOUBLE)
AUTO_PARTITION_SEQ=metric_id_seq;
CREATE VIEW my_view1 AS SELECT * FROM base_table;
{code}
would tack on a WHERE clause base on the next value in a sequence, logically
like this: {{WHERE partition_id \= }} + {{NEXT VALUE FROM}} + {{metric_id_seq}}
It's important that the sequence be generated *after* the check for the
existence of the view so that we don't burn sequence values needlessly if the
view already exists.
was:
When a view or base table is created, we should have an string
AUTO_PARTITION_SEQ parameter on CREATE TABLE which uses a sequence based on the
argument on the server side to generate a WHERE clause with the first PK column
and the unique identifier from the sequence.
For example:
{code}
CREATE SEQUENCE metric_id_seq;
CREATE TABLE metric_table (metric_id INTEGER, val DOUBLE)
AUTO_PARTITION_SEQ=metric_id_seq;
CREATE VIEW my_view1 AS SELECT * FROM base_table;
{code}
would tack on a WHERE clause base on the next value in a sequence, logically
like this: {{WHERE partition_id = }} + {{NEXT VALUE FROM}} + {{metric_id_seq}}
It's important that the sequence be generated *after* the check for the
existence of the view so that we don't burn sequence values needlessly if the
view already exists.
> Support auto partition for views
> --------------------------------
>
> Key: PHOENIX-2795
> URL: https://issues.apache.org/jira/browse/PHOENIX-2795
> Project: Phoenix
> Issue Type: Improvement
> Reporter: James Taylor
> Assignee: Thomas D'Silva
>
> When a view or base table is created, we should have an string
> AUTO_PARTITION_SEQ parameter on CREATE TABLE which uses a sequence based on
> the argument on the server side to generate a WHERE clause with the first PK
> column and the unique identifier from the sequence.
> For example:
> {code}
> CREATE SEQUENCE metric_id_seq;
> CREATE TABLE metric_table (metric_id INTEGER, val DOUBLE)
> AUTO_PARTITION_SEQ=metric_id_seq;
> CREATE VIEW my_view1 AS SELECT * FROM base_table;
> {code}
> would tack on a WHERE clause base on the next value in a sequence, logically
> like this: {{WHERE partition_id \= }} + {{NEXT VALUE FROM}} +
> {{metric_id_seq}}
> It's important that the sequence be generated *after* the check for the
> existence of the view so that we don't burn sequence values needlessly if the
> view already exists.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)