0

我正在尝试使用 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该类,但我不知道如何指定参数。

它们是自定义参数吗?源头呢?我很迷茫...

先感谢您!

4

1 回答 1

4

您需要将具有 id 的文档添加_meta_river索引中。类型是您要赋予索引的名称。要发送的文档是一个 json,其中包含您的河流所需的配置。除了依赖于河流的自定义配置之外,json 文档还需要包含属性type,其中包含在河流本身中用于注册RiverModule. 对于 mongodb 河,它是mongodb. 您发布的 json 正是您必须发送的来源。

这是您需要的代码:

client.index(Requests.indexRequest("_river").type("my_river").id("_meta").source(source)).actionGet();
于 2013-04-22T19:05:37.407 回答