【问题标题】:How to change PARTITION in clickhouse如何在 clickhouse 中更改 PARTITION
【发布时间】:2020-08-10 14:33:21
【问题描述】:

版本 18.16.1

CREATE TABLE traffic (
    `date` Date,
    ...
) ENGINE = MergeTree(date, (end_time), 8192);

我想改成PARTITION BY toYYYYMMDD(date) 不删除表怎么做。

【问题讨论】:

    标签: clickhouse


    【解决方案1】:

    由于ALTER query不允许分区更改,可能的方法是创建一个新表

    CREATE TABLE traffic_new
    (
        `date` Date,
        ...
    )
    ENGINE = MergeTree(date, (end_time), 8192)
    PARTITION BY toYYYYMMDD(date);
    

    并移动您的数据

    INSERT INTO traffic_new SELECT * FROM traffic WHERE column BETWEEN x and xxxx;
    

    如有必要,重命名决赛桌。 是的,这个选项涉及删除旧表(似乎没有办法跳过这一步)

    【讨论】:

    • 新版clickhouse还有其他方法吗?
    猜你喜欢
    • 2015-11-11
    • 2021-11-28
    • 1970-01-01
    • 2020-05-15
    • 2018-05-01
    • 2017-03-29
    • 1970-01-01
    • 1970-01-01
    • 2017-07-13
    相关资源
    最近更新 更多