2016-04-08 28 views
0

Otomatik tamamlama özelliğini uygulamak için bu blogu takip ediyorum. Tam eşlemeyi oluşturmayı denedim, ancak bazı hatalar üzerine tökezledim.Elasticsearch mapping issue

Benim hedeflenen haritalama sorgum.

curl -XPUT "http://localhost:9200/blurays " -d' 
{ 
    "settings": { 
     "analysis": { 
     "filter": { 
      "nGram_filter": { 
       "type": "nGram", 
       "min_gram": 2, 
       "max_gram": 20, 
       "token_chars": [ 
        "letter", 
        "digit", 
        "punctuation", 
        "symbol" 
       ] 
      } 
     }, 
     "analyzer": { 
      "nGram_analyzer": { 
       "type": "custom", 
       "tokenizer": "whitespace", 
       "filter": [ 
        "lowercase", 
        "asciifolding", 
        "nGram_filter" 
       ] 
      }, 
      "whitespace_analyzer": { 
       "type": "custom", 
       "tokenizer": "whitespace", 
       "filter": [ 
        "lowercase", 
        "asciifolding" 
       ] 
      } 
     } 
     } 
    }, 
    "mappings": { 
     "movies": { 
     "_all": { 
      "index_analyzer": "nGram_analyzer", 
      "search_analyzer": "whitespace_analyzer" 
     }, 
     "properties": { 
      "addToCartUrl": { 
       "type": "string", 
       "index": "no", 
       "include_in_all": false 
      }, 
      "format": { 
       "type": "string", 
       "index": "not_analyzed" 
      }, 
      "mpaaRating": { 
       "type": "string", 
       "index": "not_analyzed", 
       "include_in_all": false 
      }, 
      "price": { 
       "type": "double", 
       "include_in_all": false 
      } 
     } 
     } 
    } 
}' 

ardından

alıyorum hatadır: - Ben yani 2.3 ES, en son sürümünü kullanıyorum ve bu geri 2 yıl yazılmıştır

analyzer on field [_all] must be set when search_analyzer is set 

. Sadece ES öğrenmeye başladım. Bunun olası çözümü ne olabilir?

cevap

4

_all alanını tanımlarken, ürününü analyzer ile değiştirerek renamed in 2.0 ürününe kaydetmeniz gerekir. Bununla birlikte, hata mesajı daha iyi olabilirdi.

+0

2.x' 'için 1.x'' gelen her haritalama index_analyzer' 'kontrol edilmelidir. – Yuri