如何使用Elastisch维护与不同ElasticSearch主机的两个连接?

时间:2013-08-29 16:19:10

标签: clojure elasticsearch elastisch

我正在使用Elastisch,而rest/connect函数返回一个端点,但在调用其他函数时我看不到如何重用此端点。我需要在不同主机上将一些文档从一个索引传输到另一个索引,使用第一个上的滚动和第二个上的批量索引。

1 个答案:

答案 0 :(得分:2)

elastisch还提供connect(没有!),它返回与您的连接,而不是将其存储在本地var中。您可以调用两次,然后使用binding为每次调用绑定适当的一个。

(let [client1 (connect ...)
      client2 (connect ...)
      data (binding [clojurewerkz.elastisch.native/*client* client1] ...)
   (binding [clojurewerkz.elastisch.native/*client* client2] ... put stuff))