赞
踩
一、Linux环境要求
二、准备工作
2.1 Linux安装jdk
2.2 linux安装python
2.3 下载DataX:
三、DataX压缩包导入,解压缩
四、编写同步Job
五、执行Job
六、定时更新
6.1 创建定时任务
6.2 提交定时任务
6.3 查看定时任务
七、增量更新思路
一、Linux环境要求
jdk1.8及以上
python2
四、编写同步Job
在datax/job下,json格式,具体内容及主要配置含义如下
mysqlreader为读取mysql数据部分,配置mysql相关信息
username,password为数据库账号密码
querySql:需要查询数据的sql,也可通过colums指定需要查找的字段(querySql优先级高)
elasticsearchwriter部分为数据写入ES部分,配置ES相关信息,
endpoint为ES地址,index为索引,columns为需要写入列的信息,其余配置选填
修改 vim /opt/software/datax/job/job.json
- {
- "job": {
- "setting": {
- "speed": {
- "channel": 1
- },
- "errorLimit": {
- "percentage": 0
- }
- },
- "content": [
- {
- "reader": {
- "name": "mysqlreader",
- "parameter": {
- "username": "akk",
- "password": "8686",
- "connection": [{
- "querySql": ["select id,sku,write_date from good"],
- "jdbcUrl": ["jdbc:mysql://192.168.33.10:3306/ichub2?useSSL=false"]
- }]
- }
- },
- "writer": {
- "name": "elasticsearchwriter",
- "parameter": {
- "endpoint":"http://192.168.33.10:9200",
- "accessId":"",
- "accessKey":"",
- "index": "good-sku",
- "cleanup": false,
- "discovery":false,
- "column": [
- {
- "name": "id",
- "type": "id"
- },
- {
- "name": "sku",
- "type": "text"
- },
- {
- "name": "write_date",
- "type": "text"
- }
-
- ]
- }
- }
- }
- ]
- }
- }
-
配置好之后执行命令:
python /htdocs/javaproject/datax/bin/datax.py /htdocs/javaproject/datax/job/job.json
意换成自己的datax路径
正常情况下输出一大堆之后会是这样:
可以看到完全同步成功:
实际上这种全量同步我们完全可以放在springboot 的微服务里面去做同步:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。