前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用datax将mysql数据同步到ES 附elasticsearchwriter插件

使用datax将mysql数据同步到ES 附elasticsearchwriter插件

作者头像
别先生
发布2021-01-13 10:45:06
4K0
发布2021-01-13 10:45:06
举报
文章被收录于专栏:别先生别先生

1、使用datax工具将mysql数据库中的数据同步到elasticsearch中。DataX目前已经有了比较全面的插件体系,主流的RDBMS数据库、NOSQL、大数据计算系统都已经接入,目前支持数据如下图:

类型

数据源

Reader(读)

Writer(写)

文档

RDBMS 关系型数据库

MySQL

读 、写

Oracle

读 、写

SQLServer

读 、写

PostgreSQL

读 、写

DRDS

读 、写

通用RDBMS(支持所有关系型数据库)

读 、写

阿里云数仓数据存储

ODPS

读 、写

ADS

OSS

读 、写

OCS

读 、写

NoSQL数据存储

OTS

读 、写

Hbase0.94

读 、写

Hbase1.1

读 、写

Phoenix4.x

读 、写

Phoenix5.x

读 、写

MongoDB

读 、写

Hive

读 、写

Cassandra

读 、写

无结构化数据存储

TxtFile

读 、写

FTP

读 、写

HDFS

读 、写

Elasticsearch

时间序列数据库

OpenTSDB

TSDB

读 、写

可以看到Elasticsearch只支持写,但是不支持读的,如果支持从Elasticsearch读出来,写到mysql也是很好的哦!

2、datax的安装,配置就不写了,之前搞过,现在需要搞一个mysql写到elasticsearch的json。

代码语言:javascript
复制
 1 {
 2     "job": {
 3         "setting": {
 4             "speed": {
 5                 "byte": 8388608,
 6                 "channel": 3
 7             },
 8             "errorLimit": {
 9                 "record": 0,
10                 "percentage": 0.02
11             }
12         },
13         "content": [{
14             "reader": {
15                 "name": "mysqlreader",
16                 "parameter": {
17                     "username": "账号",
18                     "password": "密码",
19                     "column": ["appkey"],
20                     "connection": [{
21                         "table": ["数据表名称"],
22                         "jdbcUrl": ["jdbc:mysql://ip地址:端口号/数据库名称"]
23                     }]
24                 }
25             },
26             "writer": {
27                 "name": "elasticsearchwriter",
28                 "parameter": {
29                     "endpoint": "http://ip地址:9200",
30                     "index": "shared_log", # 索引的名称
31                     "type": "doc", # 类型的名称
32                     "cleanup": false, #true表示插入前清空,即覆盖同步;false则追加同步
33                     "dynamic": true, #这里一定要指定为true,否则使用的是datax的模板,而不会使用es的模板
34                     "settings": {
35                         "index": {
36                             "number_of_shards": 12, # 分片的数量
37                             "number_of_replicas": 0 # 副本的数量
38                         }
39                     },
40                     "batchSize": 10000,
41                     "splitter": ",",
42                     "column": [{
43                         "name": "appkey", # 字段名称
44                         "type": "keyword" # 字段类型
45                     }]
46                 }
47             }
48         }]
49     }
50 }

注意,需要搞一个elasticsearchwriter插件,将elasticsearchwriter插件放在datax\datax\plugin\writer。

关于elasticsearchwriter插件的打包方式参数:http://www.bubuko.com/infodetail-3663894.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-01-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档