ClickHouse全量和增量更新解决方案

ClickHouse全量和增量更新解决方案

ClickHouse不支持事务,这里记录一下ClickHouse数据全量和增量无宕机更新的解决方案。比如说MySQL导入ClickHouse,Hive导入ClickHouse等等。

备注:重点参考ElasticSearch别名索引热更新滚动升级。

ClickHouse表全量更新

例如:xxxx_cppla数据表作全量更新

    1. 创建ClickHouse表,且以NEW作为后缀,例如:xxxx_cppla_NEW
    2. 完成MySQL全量数据到ClickHouse表xxxx_cppla_NEW的导入
    3. 将ClickHouse库中xxxx_cppla改名为(OLD作为后缀): xxxx_cppla_OLD
    4. 将新数据表xxxx_cppla_NEW改名为:xxxx_cppla
    5. 删除过期的数据表:xxxx_cppla_OLD

ClickHouse表增量更新

例如:xxxx_cppla数据表作增量更新

  1. 创建增量表且以INCREMENT加NEW作为后缀,例如:xxxx_cppla_INCREMENT_NEW
  2. 完成MySQL增量数据到ClickHouse表xxxx_cppla_INCREMENT_NEW增量数据的导入。
  3. 将Clickhouse表xxxx_cppla中的增量之外的已有数据导入到增量表xxxx_cppla_INCREMENT_NEW
  4. 将ClickHouse库中xxxx_cppla表改名为(OLD作为后缀):xxxx_cppla_OLD
  5. 将增量表xxxx_cppla_INCREMENT_NEW改名为:xxxx_cppla
  6. 删除过期的数据表:xxxx_cppla_OLD

ClickHouse全量和增量更新解决方案,by:cpp.la

One Reply to “ClickHouse全量和增量更新解决方案”

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注