doris04-自定义建表

doris04-自定义建表

1. 建表可参考上一个, doris03-简单使用.md

2. 数据模型考虑, doris05-数据模型

3. 大宽表与 Star Schema

doris建表时, 如果是大宽表, 即所有字段都在一条记录中, 性能会非常差. 所以建议将常更新的维度数据使用star schema区分维度表和事实表.

频繁更新的维度表也可以放在 MySQL 外部表中。而如果只有少量更新, 可以直接放在 Doris 中。在 Doris 中存储维度表时,可对维度表设置更多的副本,提升 Join 的性能。

4. 分区和桶 doris06-动态分区.md

5. 索引和rollup doris07-索引与rollup.md

6. schema change

doris中schema change有3种方式:

Sorted Schema Change,Direct Schema Change, Linked Schema Change

Doris中目前进行 Schema Change 的方式有三种:Sorted Schema Change,Direct Schema Change, Linked Schema Change。

  1. Sorted Schema Change

    改变了列的排序方式,需对数据进行重新排序。例如删除排序列中的一列, 字段重排序。

    ALTER TABLE site_visit DROP COLUMN city;
    
  2. Direct Schema Change: 无需重新排序,但是需要对数据做一次转换。例如修改列的类型,在稀疏索引中加一列等。

    ALTER TABLE site_visit MODIFY COLUMN username varchar(64);
    
  3. Linked Schema Change: 无需转换数据,直接完成。例如加列操作。

    ALTER TABLE site_visit ADD COLUMN click bigint SUM default '0';
    

建表时建议考虑好 Schema,这样在进行 Schema Change 时可以加快速度。

posted @ 2020-02-05 18:47  bronk  阅读(806)  评论(0编辑  收藏