datax同步postgre到clickhouse

5 篇文章 0 订阅
1 篇文章 0 订阅

支持clickhousewriter的datax压缩包提取连接

由于datax的master分支并不能支持clickhouse,fork版本
https://github.com/kuangye098/DataX
只能自己打包,而我对maven知之甚少,在打包时出现了
https://github.com/alibaba/DataX/issues/82
所以问clickhouse社区好哥哥要了一个打包好的压缩包,已经放到了百度网盘,一个G多一点
链接:https://pan.baidu.com/s/18DRihMXtf5IfQG4TIo-Crg
提取码:qdyu

使用

将压缩文件解压到服务器后

cd ./bin
touch test.json

后在test.json中添加

{
  "job": {
    "content": [
      {
        "reader": {                    
          "name": "postgresqlreader",                    
          "parameter": {                        
            "connection": [ {                                
              "jdbcUrl": ["jdbc:postgresql://xxx.xxx.xxx.xxx:5432/xxx"],          
              "querySql": ["select * from xxxx;"]}
            ],                       
          "username": "xxx",
          "password": "xxx"                        
          }                
        },
        "writer": {
          "name": "clickhousewriter",
          "parameter": {
            "username": "default",
            "password": "xxx",
            "column":["*"],
            "connection": [
              {
                "jdbcUrl": "jdbc:clickhouse://xxxx:8123/default",
                "table":["xxxx"]
              }
            ]
          }
        }
      }
    ],
    "setting": {
      "speed": {
        "channel":1 
      }
    }
  }
}

之后执行

python datax.py test.json

注意这里的python版本应该是2.7+,如果是ubuntu可以直接使用自带的2.7
出现
success
说明插入成功,注意如果你再次执行此命令会将数据源表的数据再次插入目标表,出现数据重复,所以建议增量插入时在获取的SQL中使用where子句,或者更直接点,使用datax配置中的preSql,将原来的目标表delete或者truncate。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值