2016-11-02 11 views
0

私はelasticsearch 2.xからelasticsearch 5.0に移行しています。起動時に、elasticsearchは、elasticsearch.ymlにインデックスプロパティを定義できなくなったと伝えます。 elasticsearch 5.0のドキュメントでは、インデックステンプレートを使用して、バージョン2.xのelasticsearch.ymlに設定されているデフォルトのパラメータを設定する必要があることがわかりました。私の場合は私がelasticsearch.jsバージョン12を使用して、エラーelasticsearch 5.0とインデックステンプレート

を取得しています

curl -XPUT 'http://localhost:9200/_template/template1' -d '{ 
    "template" : "*", 
    "settings.index.number_of_replicas" : "1", 
    "settings.index.number_of_shards" : "1", 
    "settings.index.similarity.default.b" : "0.0", 
    "settings.index.similarity.default.k1" : "1.2", 
    "settings.index.similarity.default.type" : "BM25", 
    "settings.index.similarity.norm_bm25.b" : "0.75", 
    "settings.index.similarity.norm_bm25.k1" : "1.2", 
    "settings.index.similarity.norm_bm25.type" : "BM25" 
}' 

にこれを変換しようとした、代わりに以下の設定

index: 
    number_of_shards: 1 
    number_of_replicas: 1 
    similarity: 
    default: 
     type: BM25 
     b:0.0 
     k1:1.2 
    norm_bm25: 
     type: BM25 
     b:0.75 
     k1:1.2 

使用して、インデックステンプレートを持っていました ​​

テンプレート内で間違った方法で類似性を設定しているためです。私のjavascriptのコードが正しくので、カール操作のセットに私のelasticsearch.ymlを変換する正しい方法は何ですか、しかし、5.0をelasticsearchためにエラーが発生すると、

client.indices.create({ 
    index: indexName, 
    body: { settings: { 
      number_of_shards: 1, 
      similarity : "norm_bm25" 
    } 
},....error stuff) 

でJavaScriptコード、問題のアップグレードから変わらずそれはelasticsearch 5.0で動作するのですか?

答えて

0

テンプレートを書き込むための正しい方法は、あなたがより多くの情報のためdocsを参照することができます

PUT _template/template1 
{ 
    "template": "*", 
    "settings": { 
    "number_of_replicas": 1, 
    "number_of_shards": 1, 
    "index": { 
     "similarity": { 
     "default": { 
      "type": "BM25", 
      "b": 0, 
      "k": 1.2 
     }, 
     "norm_bm25": { 
      "type": "BM25", 
      "b": 0.75, 
      "k": 1.2 
     } 
     } 
    } 
    } 
} 

です。同じ設定辞書をJavaScriptコードでコピーします。

関連する問題