【Mysql&clickhouse】Mysql增量同步数据到clickhouse

1.实现原理
基于datax同步功能,datax-web增量功能,clickhouse的ReplacingMergeTree分区合并功能实现增量同步(包含单条数据的修改后同步)

2.前置条件
datax没有clickhousewriter插件,需要下载插件并反正plugin的writer目录下
clickhousewriter插件下载(为了方便下载,已上传至csdn)


3.实现方案
1.基于datax_web的增量功能
时间戳参数

-DlastTime=%s -DcurrentTime=’%s’

2.增量同步数据到clickhourse,涉及到单条数据的更新
https://clickhouse.com/docs/zh/engines/table-engines/mergetree-family/replacingmergetree/

DROP TABLE IF EXISTS tms.datax_test_incr;
CREATE TABLE tms.datax_test_incr (
    id BIGINT,
    name VARCHAR(100),
    update_time_stamp TIMESTAMP
) ENGINE = ReplacingMergeTree(update_time_stamp)
PARTITION BY toYYYYMM(update_time_stamp)
PRIMARY KEY id
ORDER BY id

//手动合并分区
optimize table datax_test_incr final;

//查询去重
select * from datax_test_incr final;
dataxweb配置

    "postSql": [
      "optimize table datax_test_incr final"
    ],
 


4.实现后效果

————————————————
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章