表的基本概念
1 Row & Column
一张表包括行(Row)和列(Column);
Row 即用户的一行数据。Column 用于描述一行数据中不同的字段。
doris中的列分为两类:key列和value列
key列在doris中有两种作用:
聚合表模型中,key是聚合和排序的依据
其他表模型中,key是排序依据
2 分区与分桶
-
partition(分区):是在逻辑上将一张表按行(横向)划分
-
tablet(又叫bucket,分桶):在物理上对一个分区再按行(横向)划分
2.1 Partition
-
Partition 列可以指定一列或多列,在聚合模型中,分区列必须为 KEY 列。
-
不论分区列是什么类型,在写分区值时,都需要加双引号。
-
分区数量理论上没有上限。
-
当不使用 Partition 建表时,系统会自动生成一个和表名同名的,全值范围的 Partition。该 Partition 对用户不可见,并且不可删改。
-
创建分区时不可添加范围重叠的分区。
1)Range 分区
range分区创建语法
-- Range Partition
drop table if exists test.expamle_range_tbl;
CREATE TABLE IF NOT EXISTS test.expamle_range_tbl
(
`user_id` LARGEINT NOT NULL COMMENT "