2017-03-29 10 views
0

私は、インデックスmydataにデータをElasticsearchに送信。このインデックスは、データがElasticsearchに到達して自動的に作成されるときに存在する場合と存在しない場合があります。特定のインデックスに対してサーバー側のマッピングを強制できますか?

マッピングは私のデータから推測は正しかった、今まで、私はgeo_pointタイプの新しいフィールドを追加したとき。このタイプは、わかっている限り、明示的にマッピングを提供する必要があります。

私の理解では、マッピングは、私の場合

  • またはcreating an index "手動"
  • またはこれらのソリューションの作業のPut Mapping API
  • なし経由のよう

    • いずれかdynamicallを、処理されるということです私にとっては、インデックスが削除/再作成されることはめったにありませんが、予期しないことですが、サーバーに送信される各ドキュメントへのマッピングを追加することは大変です。

      保存するための方法は、サーバー上で、あり、種類の情報「あなたはインデックスmydataを作成した場合、フィールドpositionはタイプgeo_ipでなければなりませんか」?

    +0

    [インデックステンプレート](https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-templates.html)正確に何が必要でしょう。それを少し調べてみるべきです。 – Val

    +0

    @Val:ありがとう!これはまさに私が探していたもので、何とかそれを逃したものです。私はそれを受け入れることができるように、あなたはとても親切で、あなたのコメントを答えにコピーしますか?また、ドキュメントには言及していないので、マッピングが部分的であるか、言い換えれば、ただ一つのファイルとそのマッピングについて言及し、残りは自動検出されるようにすることができますか? (「複数のテンプレートマッチング」の問題に近く、最も論理的な方法であるため、「はい」と思われます) – WoJ

    答えて

    1

    Index templatesは正確に何が必要でしょう。単純に名前があなたのインデックス名と一致するとすぐ新しい文書がまだ存在していないインデックスに入ってきたとして、後者は自動的に適切なマッピングと設定で作成されます(マッピングと設定で)テンプレートを作成します。

    2番目の質問に答えるために、マッピングにはいくつかのフィールド(あなたが言及したgeo_pointなど)の定義しか含まれておらず、ESに他のものを動的にマップさせることができます。

    +0

    ありがとう、5分で答えを受け入れるようになりました。 – WoJ

    +0

    @yesそれはありました、ありがとうございます(また、私の+1の後に受け入れる穏やかな思い出のために)。それはESになると、あなたは保護者です:) – WoJ

    +0

    恐ろしい、それは助けてうれしい! – Val

    関連する問題