2011-11-16 6 views
31

は私がelasticsearchで部分的単語を見つけるためにここに与えられたアドバイスを、次のよ「マッピングタイプがありません」を返しますこのバージョン:Elasticsearchは常に

:(インデックスを設定し、その後、製品をダンプ)このスクリプトを最初の2つのコマンドを実行している後

curl -XDELETE 10.160.86.134:9200/products 
curl -XPOST 10.160.86.134:9200/products -d '{ 
    "index": { 
    "number_of_shards": 1, 
    "analysis": { 
     "filter": { 
     "mynGram" : {"type": "nGram", "min_gram": 2, "max_gram": 10} 
     }, 
     "analyzer": { 
     "a1" : { 
      "type":"custom", 
      "tokenizer": "standard", 
      "filter": ["lowercase", "mynGram"] 
     } 
     } 
    } 
    } 
    } 
}' 

curl -XPUT 10.160.86.134:9200/products/_mapping -d '{ 
    "product" : { 
    "index_analyzer" : "a1", 
    "search_analyzer" : "standard", 
    "properties" : { 
     "product_description": {"type":"string"}, 
     "product_name": {"type":"string"} 
    } 
    } 
}' 

は私にこれを与えて動作するようです

{"ok":true,"acknowledged":true} 
{"ok":true,"acknowledged":true} 

その後私にこれを与えるマッピング呼び出し、次のエラーアウト:

{"error":"ActionRequestValidationException[Validation Failed: 1: mapping type is missing;]","status":500} 

誰もが私が間違ってやっているかを見ることができますか? Googleを検索すると、「マッピングが見つかりませんでしたelasticsearch」というオートコンプリートが開始されるため、非常に一般的なエラーです。マッピングが型に適用する必要があるため

+1

elasticsearchはまだ若いプロジェクトですが、ドキュメントは成長していますが、まだ欠けています。私は通常、メーリングリストhttps://groups.google.com/group/elasticsearchに大きな回答を得ています。 – Andy

答えて

72

は、これが起こっている判明:

私は間違ったことにそれを適用してみました:

curl -XPUT 10.160.86.134:9200/products/_mapping -d '{ 

それはそうのようなタイプに適用する必要があります:

curl -XPUT 10.160.86.134:9200/products/product/_mapping -d '{ 

シンプルなGoogle検索ではこれに答えることができないのは残念です。また私がリンクしている以前の投稿は非常に誤解を招くものであり、答えは間違っています。

+5

私はあなたと一緒にいます。弾性検索のためにそこには十分ではないようです。ドキュメントはあまり役に立たず、検索はあまり役に立ちません。 _routingにエラーがあり、どこでも答えが見つかりませんでした。私もIRCを試したことはありませんが、おそらく助けになるかもしれません。 – swatkins

+0

私はあなたの意見に同意します:ドキュメントですが、これは最近(あなたが質問したとき)[以前はあなたがインデックスへのマッピングをPUTして、マッピングのJSONにドキュメントタイプを含めることができたと思う]と思っています(https:// groups.google.com/a/elasticsearch.com/d/msg/users/_i2sVYlCsrI/5n2tqMa-DXEJ)...ドキュメントは改善していますが、まだそれほど進んでいません。 – Basic

+0

[documentation](https:///www.elastic.co/guide/en/elasticsearch/reference/current/indices-put-mapping.html)を参照してください。 – yurez

2

インデックスのマッピングは、弾性検索でも可能です。私はElastic search 1.7.3の最新バージョンでこれを試してみました。インデックスへのマッピングを正常に設定できました。

私は

関連する問題