[elasticsearch怎么和数据库同步]elasticsearch和mysql的数据同步采用哪种方案合适。

Posted sqlserver-mysql

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[elasticsearch怎么和数据库同步]elasticsearch和mysql的数据同步采用哪种方案合适。相关的知识,希望对你有一定的参考价值。

  最近公司在使用elasticsearch,使用的是6.5版本的。其中有一个需求就是需要把数据库已有的数据同步到elasticsearch中来,调研了几种方案。

  logstash,elasticsearch-jdbc,自己实现。

  暂时采用的是elasticsearch-jdbc,但是,同步的过程中,出现错误。错误在最下面

  我想请问哪种方案合适?如果是elasticsearch-jdbc合适,那么,下面问题如何解决?

  [importer.jdbc ][pool-2-thread-1] error while processing request: no cluster nodes available, check settings {autodiscover=false, client.transport.ignore_cluster_name=false, client.transport.nodes_sampler_interval=5s, client.transport.ping_timeout=5s, cluster.name=my-application, flush_interval=5s, host.0=127.0.0.1, max_actions_per_request=10000, max_concurrent_requests=4, max_volume_per_request=10mb, name=importer, port=9300, sniff=false}

  org.elasticsearch.client.transport.NoNodeAvailableException: no cluster nodes available, check settings {autodiscover=false, client.transport.ignore_cluster_name=false, client.transport.nodes_sampler_interval=5s, client.transport.ping_timeout=5s, cluster.name=my-application, flush_interval=5s, host.0=127.0.0.1, max_actions_per_request=10000, max_concurrent_requests=4, max_volume_per_request=10mb, name=importer, port=9300, sniff=false}

  at org.xbib.elasticsearch.helper.client.BulkTransportClient.init(BulkTransportClient.java:164) ~[elasticsearch-helper-2.3.4.0.jar:?]

  at org.xbib.elasticsearch.helper.client.ClientBuilder.toBulkTransportClient(ClientBuilder.java:113) ~[elasticsearch-helper-2.3.4.0.jar:?]

  at org.xbib.elasticsearch.jdbc.strategy.standard.StandardSink.createClient(StandardSink.java:348) ~[elasticsearch-jdbc-2.3.4.1.jar:?]

  at org.xbib.elasticsearch.jdbc.strategy.standard.StandardSink.beforeFetch(StandardSink.java:100) ~[elasticsearch-jdbc-2.3.4.1.jar:?]

  at org.xbib.elasticsearch.jdbc.strategy.standard.StandardContext.beforeFetch(StandardContext.java:183) ~[elasticsearch-jdbc-2.3.4.1.jar:?]

  at org.xbib.elasticsearch.jdbc.strategy.standard.StandardContext.execute(StandardContext.java:164) ~[elasticsearch-jdbc-2.3.4.1.jar:?]

  at org.xbib.tools.JDBCImporter.process(JDBCImporter.java:203) ~[elasticsearch-jdbc-2.3.4.1.jar:?]

  at org.xbib.tools.JDBCImporter.newRequest(JDBCImporter.java:189) [elasticsearch-jdbc-2.3.4.1.jar:?]

  at org.xbib.tools.JDBCImporter.newRequest(JDBCImporter.java:53) [elasticsearch-jdbc-2.3.4.1.jar:?]

  at org.xbib.pipeline.AbstractPipeline.call(AbstractPipeline.java:50) [elasticsearch-jdbc-2.3.4.1.jar:?]

  at org.xbib.pipeline.AbstractPipeline.call(AbstractPipeline.java:16) [elasticsearch-jdbc-2.3.4.1.jar:?]

  at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_201]

  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_201]

  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_201]

  at java.lang.Thread.run(Thread.java:748) [?:1.8.0_201]

 数据库同步软件

以上是关于[elasticsearch怎么和数据库同步]elasticsearch和mysql的数据同步采用哪种方案合适。的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 数据怎么实时同步到 Elasticsearch | 亲测干货建议收藏

[es和mysql数据库同步]推荐一个同步Mysql数据到Elasticsearch的工具

干货 | Debezium实现Mysql到Elasticsearch高效实时同步

实习踩坑之路:ElasticSearch双写数据不同步?不实时?怎么优化?

怎么将kafka与elasticsearch连通,将kafka的数据传入elasticsearch

MySQL数据同步ES的常用思路和方法