建表引擎参数有哪些?
ENGINE: ENGINE = MergeTree(), MergeTree 引擎没有参数。
ORDER BY: order by 设定了分区内的数据按照哪些字段顺序进⾏有序保 存。
order by 是 MergeTree 中唯⼀⼀个必填项,甚⾄⽐ primary key 还重要,因 为当⽤户不设置主键的情况,很多
处理会依照 order by 的字段进⾏处理。 要求:主键必须是 order by 字段的前缀字段。
如果 ORDER BY与 PRIMARY KEY不同, PRIMARY KEY必须是 ORDER BY的 前缀(为了保证分区内数据和主键的有序
性)。
ORDER BY 决定了每个分区中数据的排序规则;
PRIMARY KEY 决定了⼀级索引(primary.idx);
ORDER BY 可以指代 PRIMARY KEY, 通常只⽤声明 ORDER BY 即可。
PARTITION BY: 分区字段,可选。如果不填:只会使⽤⼀个分区。 分区⽬录: MergeTree 是以列⽂件+索引⽂
件+表定义⽂件组成的,但是如果设 定了分区那么这些⽂件就会保存到不同的分区⽬录中。
PRIMARY KEY: 指定主键,如果排序字段与主键不⼀致,可以单独指定主 键字段。否则默认主键是排序字段。可
选。
SAMPLE BY: 采样字段,如果指定了该字段,那么主键中也必须包含该字 段。⽐如 SAMPLE BY
intHash32(UserID) ORDER BY (CounterID, EventDate, intHash32(UserID))。可选。TTL: 数据的存活时间。在 MergeTree 中,可以为某个列字段或整张表设置 TTL。当时间到达时,如果是列字段级
别的 TTL,则会删除这⼀列的数据;如果 是表级别的 TTL,则会删除整张表的数据。可选。
SETTINGS: 额外的参数配置。可选。
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »