問題タブ [elastica]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3033 参照

php - Elastica を使用して _count_ クエリを適切に実行するには?

ElasticSearch と Elastica ( http://elastica.io/ )を使用して、検索の実装をまとめています。

現在、ElasticSearch の Count API で説明されているように、カウント検索を実行する方法がわかりません。

誰かが私のためにこれをクリアできますか? すべてのエラスティカ オブジェクトがどのように関連しているかについては、まだ 100% 理解していないので、いくつかのサンプル コードは素晴らしいものです。

前もって感謝します。

0 投票する
1 に答える
2663 参照

elastica - Elastica:ID xのドキュメントが存在するかどうかを確認する最良の方法は?

PHP Elastica ライブラリを使用して、Id=1 のドキュメントが存在するかどうかを確認する最良の方法は何ですか?

私は次のようにしていました:

ただし、ドキュメントが存在しない場合は getDocument() メソッドによって NotFoundException がスローされるため、上記のコードは機能しません。

または、次のようなものを使用して「検索」タイプを実行できます。

しかし、上記はかなり面倒に思えます...より良い方法は何ですか? この他の質問は ElasticSearchに適用され、回答の 1 つは私の最初のアプローチ ( getDocument を使用することと同等) を示唆しています。ただし、エラスティカを使用する場合と同様に、例外をスローしたくありません...

0 投票する
0 に答える
149 参照

elasticsearch - Elasticsearch - 結果の順序が間違っている

「ブレーク ポイント」というテキストを検索してみると、次の結果が得られます。
1) ポイント ブレーク スコア 7.6
2) ブレーク ポイント スコア 7.5

点数順に並べています。
この順序で結果を取得したい:
2) ブレーク ポイント
1) ポイント ブレーク

Elastica で FuzzyLikeThis を使用しました。簡単な例だけを書きます。すべてのドキュメントと異なるフィールドで検索するため、FuzzyLike を使用する必要があります。
私のインデックス:

誰かが私を助けることができれば、とても感謝しています

0 投票する
1 に答える
817 参照

php - mvel を使用した正規表現に基づくエラスティカ スコアリング

私はエラスティック検索を初めて使用します。これが私が解決しようとしているシナリオです。自動提案ロジックをサポートする検索入力ボックスがあります。結果は、ngram フィルターを使用するエラスティック インデックスからフェッチされます。私が改善したいのは、スコアリング機能を導入して、結果を最も重要なものから重要度の低いものに並べることです (スコアに応じて)。スコアは、次のケースに基づいている必要があります。

  • 指定した文字列で始まる一致があった場合、スコアを 100 に設定します
  • 指定された文字列を含み、それで始まらない一致がある場合、スコアを 10 に設定します。

この目的のために、正規表現の一致をサポートするために、エラスティカ スクリプトが mvel ステートメントで実装されました。つまり、左側の値が右側の正規表現と一致するかどうかを確認します (その場合にのみ、それに応じて変数がインクリメントされます)。しかし残念ながら、左側の値も指定された言語のものであるにもかかわらず、検索文字列が言語固有である場合はうまくいきません。対処すべきもう 1 つの問題は、上記で言及した 2 番目のケースです (機能しない)。

指定された単語 ('one') で始まる値 ('one example' (名前フィールドに属する)) のスクリプトは問題なく動作します。

値 ('one example' (名前フィールドに属する)) に指定された単語 ('example') が含まれている場合のスクリプトが機能せず、その結果、合計スコアが 1 のままになり、本来あるべき 11 に増加しません。

最後に、同じロジックで、名前フィールドの値 (ギリシャ文字を含む) に対してギリシャ語の単語を照合しようとすると、合計スコアの増分も無視されます。

すべての作業は、php はもちろん、エラスティカを使用して行われました。私の問題を解決するのを手伝ってくれませんか? 別のアプローチ/解決策がある場合は、遠慮なく私と共有してください。

前もって感謝します

0 投票する
1 に答える
947 参照

autosuggest - 特定のタイプからエラスティカの提案を設定する方法は?

私はelasticsearchに不慣れで、elasticaと仲良くしようとしています。特定のタイプから提案するサジェスタを設定しようとしています。\Elastica\Search からメソッド addType を使用しようとしましたが、機能しません。

誰かがそれを解決するのを手伝ってくれますか? ありがとう