DataX3.0的安装以及基本使用

  1. 检测运行环境:java(1.6及其以上)、python(2.6及其以上),python直接在终端输入:python,即可查看版本
  2. DataX3.0下载地址(使用windows机器在浏览器地址栏输入下面网址下载):http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz
  3. 下载好的datax3.0放在你指定的目录下载进行解压:tar -zxvf datax.tar.gz
  4. 对解压后的文件夹进行授权:chmod –R 755 {你的目录}
  5. 进入到datax3.0的bin目录下执行:python datax.py ../job/job.json
  6. 得到以这样结束的结果:
    任务启动时刻 : 2018-01-29 14:38:26
    任务结束时刻 : 2018-01-29 14:38:36
    任务总计耗时 : 10s
    任务平均流量 : 253.91KB/s
    记录写入速度 : 10000rec/s
    读出记录总数 : 100000
    读写失败总数 : 0
  7. 如果满足6的结果,说明该datax能够正常使用!!!
  8. 配置测试样例(下面我们配置一组 从mysql数据库到另一个mysql数据库)
    a) 创建作业的配置文件(json格式)
    i. 可以通过命令查看配置模板: python datax.py -r {YOUR_READER} -w {YOUR_WRITER}
    ii. python datax.py -r mysqlreader -w mysqlwriter
    b) 根据配置文件模板填写相关选项
    i. 命令打印里面包含对应reader、writer的文档地址,以及配置json样例,根据json样例填空完成配置即可。根据模板配置json文件(mysql2mysql.json)如下:
    {
    “job”: {
    “content”: [
    {
    “reader”: {
    “name”: “mysqlreader”,
    “parameter”: {
    “column”: [“store_id”,”store_type”,”region_id”,”store_name”,”store_number”,”store_street_address”,”store_city”,”store_state”,”store_postal_code”,”store_country”,”store_manager”,”store_phone”,”store_fax”,”first_opened_date”,”last_remodel_date”,”store_sqft”,”grocery_sqft”,”frozen_sqft”,”meat_sqft”,”coffee_bar”,”video_store”,”salad_bar”,”prepared_food”,”florist”],
    “connection”: [
    {
    “jdbcUrl”: [“jdbc:mysql://192.168.18.149:3306/saiku”],
    “table”: [“store”]
    }
    ],
    “password”: “root”,
    “username”: “root”
    }
    },
    “writer”: {
    “name”: “mysqlwriter”,
    “parameter”: {
    “column”: [“store_id”,”store_type”,”region_id”,”store_name”,”store_number”,”store_street_address”,”store_city”,”store_state”,”store_postal_code”,”store_country”,”store_manager”,”store_phone”,”store_fax”,”first_opened_date”,”last_remodel_date”,”store_sqft”,”grocery_sqft”,”frozen_sqft”,”meat_sqft”,”coffee_bar”,”video_store”,”salad_bar”,”prepared_food”,”florist”],
    “connection”: [
    {
    “jdbcUrl”: “jdbc:mysql://192.168.18.147:3306/saiku”,
    “table”: [“store”]
    }
    ],
    “password”: “root”,
    “username”: “root”
    }
    }
    }
    ],
    “setting”: {
    “speed”: {
    “channel”: “1”
    }
    }
    }
    }
    c) 启动DataX:[root@Master bin]# python datax.py ./mysql2mysql.json
    d) job的配置
    i. Job基本配置
  9. Job基本配置定义了一个Job基础的、框架级别的配置信息,包括:
    {
    “job”: {
    “content”: [
    {
    “reader”: {
    “name”: “”,
    “parameter”: {}
    },
    “writer”: {
    “name”: “”,
    “parameter”: {}
    }
    }
    ],
    “setting”: {
    “speed”: {},
    “errorLimit”: {}
    }
    }
    }
    ii. Job Setting配置
    {
    “job”: {
    “content”: [
    {
    “reader”: {
    “name”: “”,
    “parameter”: {}
    },
    “writer”: {
    “name”: “”,
    “parameter”: {}
    }
    }
    ],
    “setting”: {
    “speed”: {
    “channel”: 1,
    “byte”: 104857600
    },
    “errorLimit”: {
    “record”: 10,
    “percentage”: 0.05
    }
    }
    }
    }
    job.setting.speed(流量控制)
    Job支持用户对速度的自定义控制,channel的值可以控制同步时的并发数,byte的值可以控制同步时的速度
    job.setting.errorLimit(脏数据控制)
    Job支持用户对于脏数据的自定义监控和告警,包括对脏数据最大记录数阈值(record值)或者脏数据占比阈值(percentage值),当Job传输过程出现的脏数据大于用户指定的数量/百分比,DataX Job报错退出。

你可能感兴趣的:(DataX3.0的安装以及基本使用)