[ 
https://issues.apache.org/jira/browse/TAJO-284?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

JaeHwa Jung updated TAJO-284:
-----------------------------

    Attachment: TAJO-284.patch

In this patch, I added following features.

* Add ProtocolBuffer: PartitionPro, SpecifierProto, ValueProto.
* update addTable and deleteTable at classes which implement CatalogStore.
* Add a parameter which includes Partition informations at GlobalEngine and 
LogicalPlan and LogicalPlanner.

And, I modified Partition table schema as follows.
||Column Name||Type||Remark||
|PID|INT| partition id|
|name|VARCHAR(255)| partition name |
|TID|int| table id|
|type|varchar(10)| partition type (ex: HASH, LIST, etc)|
|quantity|int| partition numbers for hash partitioned table|
|columns|varchar(255)| column id list separated by comma|
|expressions|text| subpartition value expression list separated by comma|

I used queries to verify the patch as follows:
* CREATE TABLE sales ( col1 int, col2 int) ;
* CREATE TABLE sales_list ( col1 text, col2 text) PARTITION BY LIST (col1) ( 
PARTITION part_list_1 VALUES ('Seoul', 'Keongkido'), PARTITION part_list_2 
VALUES ('Busan', 'Daeku') );
* CREATE TABLE sales_range ( col1 int, col2 int) PARTITION BY RANGE (col1) ( 
PARTITION part_range_1 VALUES LESS THAN (2), PARTITION part_range_2 VALUES LESS 
THAN (5), PARTITION part_range_3 VALUES LESS THAN (MAXVALUE) );
* CREATE TABLE sales_hash1 ( col1 int, col2 int) PARTITION BY HASH (col1) ( 
PARTITION part1, PARTITION part2, PARTITION part3 );
* CREATE TABLE sales_hash2 ( col1 int, col2 int) PARTITION BY HASH (col1) 
PARTITIONS 2;
* CREATE TABLE sales_column ( col1 int, col2 int) PARTITION BY COLUMN (col1, 
col2, col3);


> Add table partitioning entry to Catalog.
> ----------------------------------------
>
>                 Key: TAJO-284
>                 URL: https://issues.apache.org/jira/browse/TAJO-284
>             Project: Tajo
>          Issue Type: Sub-task
>          Components: catalog
>            Reporter: Hyunsik Choi
>            Assignee: JaeHwa Jung
>             Fix For: 0.8-incubating
>
>         Attachments: TAJO-284.patch
>
>
> To support table partitioning, Tajo catalog should supports the table 
> partitioning. Each partition entry should include partition table id, 
> partition key ids, partition types (i.e., hash, range, list, and key), 
> partition number, min, max, and hash id.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to