当前位置:   article > 正文

使用阿里巴巴同步工具DataX实现Mysql与ElasticSearch数据同步_mysql数据同步到elasticsearch工具 阿里巴巴

mysql数据同步到elasticsearch工具 阿里巴巴

一、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 
 

2.3 下载DataX

三、DataX压缩包导入,解压缩

四、编写同步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

  1. {
  2. "job": {
  3. "setting": {
  4. "speed": {
  5. "channel": 1
  6. },
  7. "errorLimit": {
  8. "percentage": 0
  9. }
  10. },
  11. "content": [
  12. {
  13. "reader": {
  14. "name": "mysqlreader",
  15. "parameter": {
  16. "username": "akk",
  17. "password": "8686",
  18. "connection": [{
  19. "querySql": ["select id,sku,write_date from good"],
  20. "jdbcUrl": ["jdbc:mysql://192.168.33.10:3306/ichub2?useSSL=false"]
  21. }]
  22. }
  23. },
  24. "writer": {
  25. "name": "elasticsearchwriter",
  26. "parameter": {
  27. "endpoint":"http://192.168.33.10:9200",
  28. "accessId":"",
  29. "accessKey":"",
  30. "index": "good-sku",
  31. "cleanup": false,
  32. "discovery":false,
  33. "column": [
  34. {
  35. "name": "id",
  36. "type": "id"
  37. },
  38. {
  39. "name": "sku",
  40. "type": "text"
  41. },
  42. {
  43. "name": "write_date",
  44. "type": "text"
  45. }
  46. ]
  47. }
  48. }
  49. }
  50. ]
  51. }
  52. }

五、执行Job

配置好之后执行命令:

python /htdocs/javaproject/datax/bin/datax.py /htdocs/javaproject/datax/job/job.json

意换成自己的datax路径

正常情况下输出一大堆之后会是这样:

 

 可以看到完全同步成功:

 实际上这种全量同步我们完全可以放在springboot 的微服务里面去做同步:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/141195
推荐阅读
相关标签
  

闽ICP备14008679号