2013-04-22 2 views
0

Java API를 사용하여 MongoDB와 ElasticSearch 사이에 새로운 강을 만들려고합니다. REST API를 사용하면 다음 JSON을 사용하여 PUT 요청을 작성하는 것이 매우 쉽습니다.Java API를 사용하여 Elasticsearch에서 MongoDB river 만들기

{ 
    "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 클래스를 사용하려고하는데 params를 지정하는 방법을 모르겠습니다.

맞춤 매개 변수입니까? 근원은? 나는 꽤 잃어버린 ...

미리 감사드립니다!

답변

4

색인이 _meta_river 색인에 문서를 추가해야합니다. 유형은 색인에 부여하려는 이름입니다. 전송할 문서는 강에 필요한 구성을 포함하는 json입니다. 강에 의존하는 사용자 지정 구성 외에도 json 문서에는 을 등록하기 위해 강내에서 사용되는 이름이 들어있는 type 속성이 있어야합니다. 몽고 강은 mongodb입니다. 게시 한 json은 전송해야하는 소스입니다.

여기 당신이 필요로하는 코드입니다 :

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

감사합니다! 나는 'my_river'가 만들 인덱스의 이름임을 강조하고 싶다. – Quaiks

+0

컨피규레이션 내에서 인덱스 객체를 지정하지 않았을 때 나는 그것이 사실이라고 생각하지 않았다. – javanna

관련 문제