簡體   English   中英

使用Java API在Elasticsearch中創建MongoDB River

[英]Create MongoDB river in Elasticsearch using Java API

我正在嘗試使用Java API在MongoDB和ElasticSearch之間創建一條新河。 使用REST API非常容易,並使用以下JSON發出PUT請求

{
  "type": "mongodb",
  "mongodb": {
    "servers": [
      { "host": "127.0.0.1", "port": 27017 }
    ],
    "options": { "secondary_read_preference": true },
    "db": "test",
    "collection": "collectionTest"
  },
  "index": {
    "name": "testIndex",
    "type": "default"
  }
}

但是我在使用Java API時遇到了幾個問題。 我正在嘗試使用CreateIndexRequestBuilder類,但是我不知道如何指定參數。

它們是自定義參數嗎? 來源呢? 我很迷路...

先感謝您!

您需要將ID為_meta的文檔添加到_river索引。 類型是您要賦予索引的名稱。 要發送的文檔是一個json,其中包含您的河流所需的配置。 除了取決於河流的自定義配置之外,json文檔還需要包含屬性type ,該屬性type包含在河流本身內部用於注冊RiverModule 對於mongodb河,它是mongodb 您發布的json正是您必須發送的源。

這是您需要的代碼:

client.index(Requests.indexRequest("_river").type("my_river").id("_meta").source(source)).actionGet();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM