0

クエリプロセスを高速化するためにmognodbにインデックス作成機能があるので知りたいhttps://docs.mongodb.org/v3.0/indexes/ この目的のためにelasticsearchには何がありますか? 私はそれをグーグルで検索しましたが、適切な情報を見つけることができませんでした。最も頻繁に使用されるフィールドでmongodbのインデックス作成を使用して、クエリプロセスを高速化しました.elasticsearchで同じことをしたいのですが、elasticsearchが提供するものがあるかどうかを知りたい.Thank

4

2 に答える 2

0

「インデックス」が ES や他の多くのデータベースとは異なるコンテキストで使用されるのは面倒です。私は MongoDB にあまり詳しくないので、v3.0/core/index-typesにあるドキュメントを参照します。

基本的に、Elasticsearch は効率的な「フィルタリング」(yes/no クエリ) と「スコアリング」( tf-idfなどによる関連性ランキング) を提供するように設計されており、基礎となる逆インデックスとしてLuceneを使用します。

MongoDB の概念とその ES 対応部分:

  • 単一フィールド インデックス: おそらくnot_analyzed完全一致のフィールドとして、簡単にサポートされます
  • 複合インデックス: Lucene はAND効率的なビットマップを介してフィルター条件を適用し、任意の「単一フィールド」インデックスをアドホックにマージできます
  • マルチキー インデックス: 透過的なサポート、差分値なし、値の配列
  • 地理空間インデックス: 地理形状を介して直接サポート
  • analyzedテキスト インデックス: 何らかの方法で、ES はフィールド タイプとしてこのユース ケースに最適化されました。

私の見解では、検索アプリケーションの関連性は、結果を単純にフィルタリングすることよりも重要です。ほとんどすべてのドキュメントにいくつかの単語が出現し、検索時に関連性が低くなるためです。

Elasticsearch には、集計、ネストされたドキュメント、子/親の関係など、他にも非常に便利な概念があります。

于 2016-01-03T22:44:06.367 に答える
0

Elasticsearch にもインデックスがあります: https://www.elastic.co/blog/what-is-an-elasticsearch-index

これらは、データベースの主要機能の一部としても使用され、迅速な検索機能を提供します。

于 2015-12-23T09:02:53.383 に答える