2013-03-27 63 views
0

我正在尝试为elasticsearch创建一个映射,但我不明白该怎么做。 我只是想用XContentBuilder创建这个json。我正在使用Java API。我没有设法创建嵌套的对象。我也不知道这个方法实际需要多少这个东西。试图为Elasticsearch创建映射

{ 
    "tweet" : { 
     "properties" : { 
      "message" : { 
       "type" : "string", 
       "store" : "yes", 
       "index" : "analyzed", 
       "null_value" : "na" 
      } 
     } 
    } 
} 

回答

2

我想找到elasticsearch Java API的问题的答案最好的地方是elasticsearch integration tests。在你的具体情况下,这是如何映射如下:

XContentFactory.jsonBuilder().startObject() 
    .startObject("tweet") 
     .startObject("properties") 
      .startObject("message") 
       .field("type", "string") 
       .field("store", "yes") 
       .field("index", "analyzed") 
       .field("null_value", "na") 
      .endObject() 
     .endObject() 
    .endObject() 
.endObject() 
+0

哦,真棒,谢谢!你通常自己指定所有的映射,或者当你能够做到这一点时,你是否依赖默认值? – LuckyLuke 2013-03-27 17:40:39