datax从mysql同步数据到elasticsearch(使用es的动态模板)
elasticsearch中设置动态模板
PUT _template/hkey_transferbill
{ "order":0 //order表示模板的优先级,值越大优先级越高,索引如果匹配了多个模板,则会根据优先级从低到高依次使用模板,高优先级会覆盖低优先级"index_patterns": "*", //模板可以匹配的索引,可以使用通配符"settings": {"number_of_shards": 2,"number_of_replicas": 1},"mappings": {"data":{"dynamic_templates" : [ { "keyword_field" : { "unmatch" : "*Name", "match_mapping_type" : "string", "mapping" : { "type" : "keyword"} } }, { "text_fields" : { "match" : "*Name", "match_mapping_type" : "string", "mapping" : { "type" : "text","fields": {"raw": {"type": "keyword"}}} } } ], "properties": {"rowkey":{"type":"keyword"},"age":{"type":"keyword"}}}}
}
datax同步脚本
{"job": {"setting": {"speed": {"byte": 8388608,"channel": 3},"errorLimit": {"record": 0,"percentage": 0.02}},"content": [{"reader": {"name": "mysqlreader","parameter": {"username": "xxx","password": "xxx","connection": [{"querySql": ["select id,province,city,area,longitude,latitude,concat_ws(\",\",latitude,longitude) location from geotable"],"jdbcUrl": [ "jdbc:mysql://xxx:3306/xxx" ]}]} },"writer": {"name": "elasticsearchwriter","parameter": {"endpoint": "http://xxx:9200","index": "myindex","type": "data","cleanup": true, #true表示插入前清空,即覆盖同步;false则追加同步"dynamic": true, #这里一定要指定为true,否则使用的是datax的模板(就是下面定义的字段类型),而不会使用es的模板"settings": {"index" :{"number_of_shards": 2, "number_of_replicas": 1}}, "batchSize": 10000,"splitter": ",","column": [{"name": "pk", "type": "id"},#指定第一个字段为rowkey {"name": "id","type":"text"},#因为dynamic的值为true,表示使用es的动态模板,因此这里的type实际上是不起作用的{"name": "province", "type": "text"},{ "name": "city", "type": "text"},{ "name": "area", "type": "text"},{ "name": "longitude","type":"double" },{ "name": "latitude","type": "double" },{ "name": "location","type": "geo_point" } ]}}}]}
}
注意:writer中的column元素顺序要和reader中读取的元素顺序一致
datax从mysql同步数据到elasticsearch(使用es的动态模板)相关推荐
- elastic如何和mysql同步数据_MySQL数据库之mysql 同步数据到 ElasticSearch 的方案
本文主要向大家介绍了MySQL数据库之mysql 同步数据到 ElasticSearch 的方案 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. MySQL Binlog 要通过 ...
- ElasticsearchBboss MySQL 同步数据到Elasticsearch
springboot集成ElasticsearchBboss调用Elasticsearch 一.搭建一个springboot项目 1).使用的是idea工具,所以直接选中File–>New–&g ...
- Mysql同步数据到Elasticsearch(实时Canal)
这里只是作为一个想法,Canal有监听binlog文件的功能.所以简单看了一下Canal的入门使用. 后续Canal实时数据同步的功能希望不会被我阉割......当然有大佬已经实现或者有其他方法实现m ...
- NodeJS同步MySQL上游数据到ElasticSearch数据库中
NodeJS同步MySQL上游数据到ElasticSearch数据库中 项目地址: https://github.com/Miazzy/xdata-elasticsearchs-service.git ...
- ktl工具实现mysql向mysql同步数据方法
使用ktl工具实现mysql向mysql同步数据 1.新建作业步骤 2.完善作业步骤,主要是完成作业中的转换工作 3.首先要确定数据来源库,也就是数据输出库,这里是mysql 4.其次要确定数据接收库 ...
- MySQL从零到一解读增量同步数据到elasticsearch canal adapter方式(binlog)实现
本文是作者在单机上面从零到一实现增量同步MySQL数据到elasticsearch canal adapter方式(binlog)实现. 实现步骤 (1)安装MySQL (2)开启MySQL binl ...
- 使用canal实现MySQL 8 增量同步数据到 ElasticSearch 7.15.2中 linux
文章目录 一.清空控制台 1. 清空控制台 2. 修改数据 3. 监控数据 4. 数据变化 5. 索引查询 6. 预期性能评估 7. 增量同步分析 二.验证方案 2.1. 把shop索引删除 2.2. ...
- 使用DataX从ORACLE同步数据到MYSQL
[前提]安装python3.7 oracle版本:oracle 11g mysql版本:mysql5.7 1.下载DataX wget http://datax-opensource.oss-cn-h ...
- 【技术实验】表格存储Tablestore准实时同步数据到Elasticsearch
实验背景 图书馆Q是一家大型图书馆,图书馆藏书众多,纸质图书600多万册,电子图书7000多万册,总数有八千多万册,这些图书之前都是人工检索维护的,现在需要做一个系统来存储管理这些图书信息. 需求如下 ...
最新文章
- 《Asp.Net 2.0 揭秘》读书笔记(十八)
- lucas定理 FOJ 2020 组合
- 【Opencv实战】“一岁年龄一岁心,匆匆岁月不由人“这款年龄检测机等你来(附源码)
- 服务器里怎么维修装备,教你在服务器加自己的装备
- 如何把朋友升级成情侣?| 今日最佳
- PWN-COMPETITION-HGAME2022-Week4
- Google AJAX 搜索 API
- 田渊栋团队新作:为什么非对比自监督学习效果好?
- HDU1875 畅通工程再续【Kruskal算法+并查集】
- Ionic生命周期与注意点
- Kinect开发教程八:OpenNI2显示深度、彩色及融合图像
- 【MATLAB】矩阵的建立与访问
- 安装VMware,主机键盘不能用解决方法
- STM8L051F3_0d_基础介绍
- 在Win10系统中用mimikatz抓取明文密码
- html制作横向菜单,CSS 横向菜单的制作
- Android10源码AOSP(从Ubuntu14.04环境搭建到下载编译运行)
- 洛克菲勒:世界上只有两种人头脑聪明...
- 华硕服务器主板安装系统提示驱动,解决B150主板安装win7操作系统USB设备无法读取故障...
- C/C++ 中的宏 (macros) 与宏展开的可视化显示