[
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)