自定义分区
本文为您介绍迁移 Oracle 数据库的数据至 OceanBase 数据库 Oracle 租户时,CREATE TABLE DDL 自定义分区的支持转换范围。
自定义 range 分区
自定义 range 分区 range_partition_desc
的语法如下:
PARTITION [partition]
range_values_clause
table_partition_description
[ ( { range_subpartition_desc [, range_subpartition_desc] ...
| list_subpartition_desc [, list_subpartition_desc] ...
| individual_hash_subparts [, individual_hash_subparts] ...
}
) | hash_subparts_by_quantity ]
table_partition_description:
[ { INTERNAL | EXTERNAL } ]
[ deferred_segment_creation ]
[ read_only_clause ]
[ indexing_clause ]
[ segment_attributes_clause ]
[ table_compression | prefix_compression ]
[ inmemory_clause ]
[ ilm_clause ]
[ OVERFLOW [ segment_attributes_clause ] ]
[ { LOB_storage_clause
| varray_col_properties
| nested_table_col_properties
}...
]
支持自定义 range 一级分区和自定义 range/list/hash 二级分区。
不支持
table_partition_description
子句定义分区表的物理和存储特征,忽略该 option。
自定义 list 分区
自定义 list 分区 list_partition_desc
的语法如下:
PARTITION [partition]
list_values_clause
table_partition_description
[ ( range_subpartition_desc [, range_subpartition_desc]...
| list_subpartition_desc, [, list_subpartition_desc]...
| individual_hash_subparts [, individual_hash_subparts]...
)
| hash_subparts_by_quantity
]
支持自定义 list 一级分区和自定义 range/list/hash 二级分区。
不支持
table_partition_description
子句定义分区表的物理和存储特征,忽略该 option。
自定义 hash 一级分区
自定义 hash 一级分区 individual_hash_partitions
的语法如下:
( PARTITION [partition_name] [read_only_clause] [indexing_clause] [partitioning_storage_clause]
[, PARTITION [partition] {read_only_clause] [indexing_clause] [partitioning_storage_clause]]... )
read_only_clause:
{ READ ONLY } | { READ WRITE }
indexing_clause:
INDEXING { ON | OFF }
partitioning_storage_clause:
[ { { TABLESPACE tablespace | TABLESPACE SET tablespace_set }
| OVERFLOW [ TABLESPACE tablespace] | TABLESPACE SET tablespace_set
| table_compression
| index_compression
| inmemory_clause
| ilm_clause
| LOB_partitioning_storage
| VARRAY varray_item STORE AS [SECUREFILE | BASICFILE] LOB LOB_segname
}...
]
支持
PARTITION [partition_name]
子句定义自定义 hash 分区。不支持
read_only_clause
指定以只读或读/写模式创建表、分区或子分区,忽略该 option。不支持指定
INDEXING { ON | OFF }
设置表、表分区或表子分区的索引属性,忽略该 option。不支持指定
partitioning_storage_clause
属性定义散列分区以及范围、散列和列表子分区指定存储特征,忽略该 option。
指定 hash 一级分区数量
指定 hash 一级分区数量 hash_partitions_by_quantity
的语法如下:
PARTITIONS hash_partition_quantity
[ STORE IN (tablespace [, tablespace ]...) ]
[ table_compression | index_compression ]
[ OVERFLOW STORE IN (tablespace [, tablespace ]...) ]
table_compression:
COMPRESS
| ROW STORE COMPRESS [ BASIC | ADVANCED ]
| COLUMN STORE COMPRESS [ FOR { QUERY | ARCHIVE } [ LOW | HIGH ] ]
[ [NO] ROW LEVEL LOCKING ]
| NOCOMPRESS
index_compression:
{ prefix_compression
| advanced_index_compression
}
prefix_compression:
COMPRESS [ integer ] | NOCOMPRESS
advanced_index_compression:
{ COMPRESS ADVANCED [ LOW | HIGH ] } | NOCOMPRESS
支持
PARTITIONS hash_partition_quantity
子句定义 hash 分区数量。不支持
STORE IN (tablespace [, tablespace ]...)
指定空间,忽略该 option。不支持
OVERFLOW STORE IN (tablespace [, tablespace ]...)
指定空间,忽略该 option。不支持
table_compression
、index_compression
指定是否压缩数据段和索引压缩,忽略该 option。
自定义 range 二级分区
自定义 range 二级分区 range_subpartition_desc
的语法如下:
SUBPARTITION [subpartition_name] range_values_clause
[read_only_clause] [indexing_clause] [partitioning_storage_clause]
[external_part_subpart_data_props]
range_values_clause:
VALUES LESS THAN
({ literal | MAXVALUE }
[, { literal | MAXVALUE } ]...
)
read_only_clause:
{ READ ONLY } | { READ WRITE }
indexing_clause:
INDEXING { ON | OFF }
partitioning_storage_clause:
[ { { TABLESPACE tablespace | TABLESPACE SET tablespace_set }
| OVERFLOW [ TABLESPACE tablespace] | TABLESPACE SET tablespace_set
| table_compression
| index_compression
| inmemory_clause
| ilm_clause
| LOB_partitioning_storage
| VARRAY varray_item STORE AS [SECUREFILE | BASICFILE] LOB LOB_segname
}...
]
external_part_subpart_data_props:
[ DEFAULT DIRECTORY directory ]
[ LOCATION
([ directory: ] 'location_specifier'
[, [ directory: ] 'location_specifier' ]...
)
]
支持
SUBPARTITION [subpartition_name] range_values_clause
子句定义二级分区。示例如下:SUBPARTITION VALUES LESS THAN (MAXVALUE)
不支持
read_only_clause
指定以只读或读/写模式创建表、分区或子分区,忽略该 option。不支持
indexing_clause
设置表、表分区或表子分区的索引属性,忽略该 option。不支持
partitioning_storage_clause
属性定义散列分区以及范围、散列和列表子分区指定存储特征,忽略该 option。不支持
external_part_subpart_data_props
子句来定义指定一个或多个外部数据源,忽略该 option。
自定义 list 二级分区
自定义 list 二级分区 list_subpartition_desc
的语法如下:
SUBPARTITION [subpartition_name] list_values_clause
[read_only_clause] [indexing_clause] [partitioning_storage_clause]
[external_part_subpart_data_props]
list_values_clause:
VALUES ( list_values | DEFAULT )
read_only_clause:
{ READ ONLY } | { READ WRITE }
indexing_clause:
INDEXING { ON | OFF }
partitioning_storage_clause:
[ { { TABLESPACE tablespace | TABLESPACE SET tablespace_set }
| OVERFLOW [ TABLESPACE tablespace] | TABLESPACE SET tablespace_set
| table_compression
| index_compression
| inmemory_clause
| ilm_clause
| LOB_partitioning_storage
| VARRAY varray_item STORE AS [SECUREFILE | BASICFILE] LOB LOB_segname
}...
]
external_part_subpart_data_props:
[ DEFAULT DIRECTORY directory ]
[ LOCATION
([ directory: ] 'location_specifier'
[, [ directory: ] 'location_specifier' ]...
)
]
支持
SUBPARTITION [subpartition_name] list_values_clause
子句定义自定义的 list 二级分区。示例如下:SUBPARTITIONS P0 VALUES (DEFAULT)
不支持
read_only_clause
指定以只读或读/写模式创建表、分区或子分区,会忽略该 option。不支持
indexing_clause
设置表、表分区或表子分区的索引属性,会忽略该 option。不支持
partitioning_storage_clause
属性定义散列分区以及范围、散列和列表子分区指定存储特征,会忽略该 option。不支持
external_part_subpart_data_props
子句来定义指定一个或多个外部数据源,会忽略该 option。
自定义 hash 二级分区
自定义 hash 二级分区 individual_hash_subparts
的语法如下:
SUBPARTITION [subpartition_name] [read_only_clause] [indexing_clause] [partitioning_storage_clause]
read_only_clause:
{ READ ONLY } | { READ WRITE }
indexing_clause:
INDEXING { ON | OFF }
partitioning_storage_clause:
[ { { TABLESPACE tablespace | TABLESPACE SET tablespace_set }
| OVERFLOW [ TABLESPACE tablespace] | TABLESPACE SET tablespace_set
| table_compression
| index_compression
| inmemory_clause
| ilm_clause
| LOB_partitioning_storage
| VARRAY varray_item STORE AS [SECUREFILE | BASICFILE] LOB LOB_segname
}...
]
支持
SUBPARTITION [subpartition_name]
子句定义自定义 hash 二级分区。示例如下:(SUBPARTITION SP0,SUBPARTITION SP1)
不支持
read_only_clause
指定以只读或读/写模式创建表、分区或子分区,会忽略该 option。不支持指定
INDEXING { ON | OFF }
设置表、表分区或表子分区的索引属性,会忽略该 option。不支持指定
partitioning_storage_clause
属性定义散列分区以及范围、散列和列表子分区指定存储特征,会忽略该 option。
指定 hash 二级分区数量
指定 hash 二级分区数量 hash_subparts_by_quantity
的语法如下:
SUBPARTITIONS integer [STORE IN ( tablespace [, tablespace]... )]
支持
SUBPARTITIONS integer
子句,指定hash二级分区数量。示例如下:SUBPARTITIONS 2
不支持
STORE IN ( tablespace [, tablespace]... )
子句指定二级分区空间,会忽略该 option。