通过DataX同步数据⾄Elasticsearch 使⽤总结Long值导⼊时精度丢失,字段类型使⽤textsplitPk使⽤ID流⽔号时,导⼊⽆进度0%因Id取最⼩值递加⾄最⼤值,范围间隔⼤空查询较多将数据源的查询时间拆细ES⽇期字段创建需指定格式 yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis⽇期数据导⼊时,text写⼊为⽇期格式,long写⼊为时间戳(数据有精度错误)注意时区问题写⼊时指定时区或对UTC时间戳进⾏转换指定:“2019-03-12T12:12:12.123+0800”转换:东⼋区时间戳 = 3600000*8 + UTC时间戳执⾏命令python /datax/bin/datax.py --jvm=-Xmx4g job.json配置样例job.json{"job": {"setting": {"speed": {"channel": 1}},"content": [{"reader": {...},"writer": {"name": "elasticsearchwriter","parameter": {"endpoint": "http://xxx:9999","accessId": "xxxx","accessKey": "xxxx","index": "test-1","type": "default","cleanup": true,"settings": {"index" :{"number_of_shards": 1, "number_of_replicas": 0}},"discovery": false,"batchSize": 1000,"splitter": ",","column": [{"name": "pk", "type": "id"},{ "name": "col_ip","type": "ip" },{ "name": "col_double","type": "double" },{ "name": "col_long","type": "long" },{ "name": "col_integer","type": "integer" },{ "name": "col_keyword", "type": "keyword" },{ "name": "col_text", "type": "text", "analyzer": "ik_max_word"},{ "name": "col_geo_point", "type": "geo_point" },{ "name": "col_date", "type": "date", "format": "yyyy-MM-dd HH:mm:ss"},{ "name": "col_nested1", "type": "nested" },{ "name": "col_nested2", "type": "nested" },{ "name": "col_object1", "type": "object" },{ "name": "col_object2", "type": "object" },{ "name": "col_integer_array", "type":"integer", "array":true},{ "name": "col_geo_shape", "type":"geo_shape", "tree": "quadtree", "precision": "10m"} ]}}}]}}参数说明endpoint描述:ElasticSearch的连接地址必选:是默认值:⽆accessId描述:http auth中的user必选:否默认值:空accessKey描述:http auth中的password必选:否默认值:空index描述:elasticsearch中的index名必选:是默认值:⽆type描述:elasticsearch中index的type名必选:否默认值:index名cleanup描述:是否删除原表必选:否默认值:falsebatchSize描述:每次批量数据的条数必选:否默认值:1000trySize描述:失败后重试的次数必选:否默认值:30timeout描述:客户端超时时间必选:否默认值:600000discovery描述:启⽤节点发现将(轮询)并定期更新客户机中的服务器列表。