タグ付けされた質問 「elasticsearch」

Elasticsearchは、Luceneに基づくオープンソース(Apache 2)の分散型RESTful検索エンジンです。

4
弾性検索、複数のインデックスvs 1つのインデックス、および異なるデータセットのタイプ?
MVCパターンを使用して開発されたアプリケーションがあり、その複数のモデルにインデックスを付けたいと考えています。これは、各モデルに異なるデータ構造があることを意味します。 モデルごとに1つずつ、または各モデルの同じインデックス内に型を持つ複数のインデックスを使用する方が良いですか?どちらの方法でも、別の検索クエリが必要になると思います。私はこれから始めました。 データセットが小さい場合または大きい場合、両方の概念のパフォーマンスに違いはありますか? その目的のために誰かが私にいくつかの良いサンプルデータを勧めてくれるなら、私は2番目の質問を自分でテストします。

15
タイプを削除せずにインデックス/タイプからすべてのドキュメントを削除します
deleteByQueryを使用して、特定のタイプのすべてのドキュメントを削除できることを知っています。 例: curl -XDELETE 'http://localhost:9200/twitter/tweet/_query' -d '{ "query" : { "term" : { "user" : "kimchy" } } }' しかし、私には用語がなく、どのような用語であっても、そのタイプからすべてのドキュメントを削除したいだけです。これを達成するためのベストプラクティスは何ですか?空の用語は機能しません。 deleteByQueryへのリンク

7
MongoDBでElasticsearchを使用する方法
MongoDBのコレクションにインデックスを付けるようにMongoDBのElasticsearchを構成する方法について、多くのブログやサイトを調べてきましたが、どれも簡単ではありませんでした。 elasticsearchをインストールするための段階的なプロセスを私に説明してください。 構成 ブラウザで実行 Node.jsとexpress.jsを使用しているので、それに応じて支援してください。


3
Content-Typeヘッダー[application / x-www-form-urlencoded]はElasticsearchではサポートされていません
以前はElasticSearch 5.2を使用していましたが、6.0にアップグレードしました。 ここのガイドに従ってインデックステンプレートを作成しようとしていますが、エラーが発生しました Content-Type header [application/x-www-form-urlencoded] is not supported 私のクエリは curl -X PUT localhost:9200/_template/template_1 -d ' { "index_patterns": ["te*", "bar*"], "mappings": { "type1": { "properties": { "host_name": { "type": "keyword" } } } } }'

10
ElasticSearchで単語の一部を検索する方法
私は最近ElasticSearchを使い始めましたが、単語の一部を検索させることができません。 例:ElasticSearchでインデックス付けされたcouchdbからの3つのドキュメントがあります。 { "_id" : "1", "name" : "John Doeman", "function" : "Janitor" } { "_id" : "2", "name" : "Jane Doewoman", "function" : "Teacher" } { "_id" : "3", "name" : "Jimmy Jackal", "function" : "Student" } それでは、「Doe」を含むすべてのドキュメントを検索します curl http://localhost:9200/my_idx/my_type/_search?q=Doe それはヒットを返しません。しかし、私が検索した場合 curl http://localhost:9200/my_idx/my_type/_search?q=Doeman 1つのドキュメント(John Doeman)を返します。 インデックスのプロパティとして、さまざまなアナライザーとさまざまなフィルターを設定してみました。また、本格的なクエリを使用してみました(例: { "query": { …

2
Elasticsearchと標準のSQLクエリを使用するいくつかのユースケースは何ですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 11ヶ月前に閉鎖。 この質問を改善する Elasticsearchを使い始めたばかりで、主な使用例の1つは、大規模なデータセットの検索でのスケーラビリティですが、これに加えて、従来のRDBMSでSQLクエリを作成するだけで使用したいですか?

5
ElasticSearch-一意の値を返す
languagesレコードからすべての値を取得して、それらを一意にする方法を教えてください。 記録 PUT items/1 { "language" : 10 } PUT items/2 { "language" : 11 } PUT items/3 { "language" : 10 } クエリ GET items/_search { ... } # => Expected Response [10, 11] どんな助けでも素晴らしいでしょう。

8
ElasticSearchでソートするためのフィールドのマッピングが見つかりません
Elasticsearchは、SearchParseExceptionソート基準で使用されるフィールドを含まないドキュメントが見つかった場合、クエリの解析中にwhileをスローします。 SearchParseException:解析失敗[ソートするための[price]のマッピングが見つかりませんでした] 一部のpriceフィールドが欠落している場合でも、これらのドキュメントを正常に検索するにはどうすればよいですか?


8
クラスタ内のインデックスの名前を変更する方法は?
クラスター内のいくつかのインデックスの名前を変更する必要があります(名前を変更する必要があります。エイリアスを使用できません)。 サポートされている方法はないことがわかりました。最も近いのは、インデックスのディレクトリの名前を変更することです。これをクラスターで試しました。 クラスターには3台のマシンAがBありC、シャードはそれぞれに複製されます。でelasticsearchをシャットダウンしA、名前/var/lib/elasticsearch/security/nodes/0/indices/oldindexnameを変更し/var/lib/elasticsearch/security/nodes/0/indices/newindexnameて再起動しましたA。 クラスターの状態は黄色で、elasticsearchは魔法をかけて正しい状態に戻していました。しばらくして私は結局 oldindexname利用可能で完全に複製されている(から回復されたBとC思います) newindexname 利用可能です(検索できます)が、ヘッドプラグインはその断片が「未割り当て」状態であり、グレー表示されている(複製されていない)ことを示しています リカバリ中にsecurity.log次のメッセージが表示されました: [2015-02-20 11:02:33,461][INFO ][gateway.local.state.meta ] [A.example.com] dangled index directory name is [newindexname], state name is [oldindexname], renaming to directory name 一方でnewindexname、検索可能で、それは正常な状態では、確かではありません。 を削除して前の状態にロールバックしましたnewindexname。クラスタは、「未割り当て」のエントリなしで緑色に戻ります。 それを考えると、どのように私は名前を変更することができますoldindexnameにnewindexname、クラスタ内の? 注:私が念頭に置いている最終的な解決策は、スクロールコピーoldindexしnewindexてoldindex後で削除することです。これには時間がかかるので、より直接的な解決策があれば素晴らしいでしょう。

8
ElasticsearchとCassandraの比較vs Cassandraを使用したElasticsearch
私はNoSQLを学び、クライアントの要件の1つに対するさまざまなオプションを検討しています。私はこの質問をする前にさまざまなリソースを調べました(NoSQLの知識がほとんどない人) より高速にデータを保存し、データを読み取る必要があります。 完全なフェイルセーフで簡単に拡張可能。 アナリティクスのデータを検索できる。 私は最終的には短いリストになりました: Cassandra and Elasticsearch 私が理解しているのは、Cassandraが私にとって完璧なNoSQLストレージソリューションであることです。これは、インデックスを使用してデータの書き込みと読み取りができるためです。失敗するか、失敗する可能性があるのは、アナリティクスです。将来、からデータを取得したい場合from_date to to_dateや、分析用のデータを取得する方法が増えた場合、データモデルを適切に設計しなかったり、長期的な視野を維持しなかったりすると、変化する世界では非常に困難になる可能性があります。 一方Elastic Search、(Luceneに裏打ちされた)インデックス作成は最適であり、ランダムなテキストをスローすることでランダムにデータを検索できます。しかし、データを取得したい場合でも同じように機能しますか(そうなると思いfrom_date to to_dateます)。しかし、本当の問題は、それが検索エンジンなのか、それともCassandraのような完璧なNoSQLデータストレージなのか、です。はいの場合、なぜまだCassandraが必要なのですか? これらの両方が異なる世界にある場合は、それについて説明してください!それらを組み合わせてより効果的なソリューションを得るにはどうすればよいですか?


1
[フィルター済み]に登録された[クエリ]はありません
結果を除外する必要があるクエリがあります。 これは私の質問です { "query": { "filtered": { "query": { "multi_match": { "default_operator": "AND", "fields": [ "author", "title", "publisher", "year" ], "query": "George Orwell" } }, "filter": { "terms": { "year": [ 1980, 1981 ] } } } } } というエラーが表示されますno [query] registered for [filtered]。フィルターされたフィールドに対するクエリを明確に持っています。elasticsearchページのフィルターされたクエリのドキュメントで指定された形式に従っています。 https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-filtered-query.html

3
Elasticsearchエラー:cluster_block_exception [FORBIDDEN / 12 / index読み取り専用/削除を許可(api)]、フラッドステージのディスクウォーターマークを超えました
ドキュメントをElasticsearchに通常どおり投稿しようとすると、次のエラーが発生します。 cluster_block_exception [FORBIDDEN/12/index read-only / allow delete (api)]; Elasticsearchログにもこのメッセージが表示されます。 flood stage disk watermark [95%] exceeded ... all indices on this node will marked read-only

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.