ElasticSearch と分離された Nosql データベースの両方を使用する用途は何ですか? Elasticsearch をデータベースと検索インデックスの両方に使用できませんか?
6925 次
1 に答える
16
はい、ElasticSearch をインデックスだけでなくデータ ソースとしても使用できます。
デフォルトでは、ElasticSearch システムに送信する各ドキュメントはインデックスであり、元のドキュメントも保存されます。これは、ElasticSearch にクエリを実行するたびに、インデックスを作成した元の JSON ドキュメントも取得できることを意味します。
大きなドキュメントがあり、より少量のデータを取得できるようにしたい場合は、マッピング API を使用して特定のフィールドの「store」を「yes」に設定し、「fields」キーを使用して引き出すことができます。必要な特定のフィールド。
私のシステムでは住所のオートコンプリートがあり、プロパティの住所フィールドのみを取得しています。これが私のシステムの例です:
_search?q=FullAddress:main&fields:FullAddress
次に、ユーザーがアドレスを選択すると、JSON ドキュメント全体が (他のドキュメントと共に) プルアップされます。
ノート:
- SQL のように更新を行うことはできません (たとえば、クエリに一致するすべての項目を更新して属性を増やします)。
- ただし、新しいドキュメントを追加して、更新する ID の既存のドキュメントを置き換えることはできます。エラスティック検索は、開発者がオプティミスティック コンカレンシーを適用するために使用できる各ドキュメントの _version プロパティをインクリメントしますが、各ドキュメントの個別のバージョン履歴は保持しません。ドキュメントの最新バージョンのみを取得できます。
于 2011-11-09T00:49:00.847 に答える