問題タブ [dismax]
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.
ruby - Sunspot/Solr: アルファベット以外の文字
Sunspot/dismax で Solr を使用しています。アルファベット以外の文字を照会することはできますか? すなわち:
~ ! @ # $ % ^ & * ( ) _ + - = [ ] { } | \
+/-
それらはdismaxの包含/除外演算子であるため、エスケープする必要があることは承知しています。しかし、次の文字を検索しても一致しません。
まだ:
私が使用しているトークナイザーの設定は次のとおりです。
solr - Solr の NGramFilterFactory を使用した類似検索
Solr で (Rails で Sunspot を使用して) NGramFilterFactory を使用して、同様のタイトルを見つけようとしています。次のように、solr schema.xml に新しいフィールドを追加することができました。
Railsアプリでsunpsotを使用しているため、動的フィールドを介して新しいフィールドをsunspotに追加しました。これはすべて機能し、NGramFilterFactory を使用してモデルを検索できるようになりました。よくわからないのは、同様のタイトルを検索するためにsolrを構成する方法です。ここに私の具体的な質問があります:
- 同様のタイトルをクエリしようとしているときに、dismax クエリ パーサーを使用する意味はありますか?
- (Minimum 'Should' Match)パラメーターは、類似のタイトルを見つけるのにどのように役立ちますか?
- 正確に何に基づいてngram minを選択しますか。そして最大。サイズ?
フィードバックをお寄せいただきありがとうございます。
solr - solrで明確なコンテンツを含むドキュメントをどのようにブーストするか
Apache Nutchを使用してWebサイトをクロールし、Solrにインデックスを付けました。Webサイトのすべてのページに同じタイトルがあり、さらに結果はコンテンツフィールドでのみ見つかりました。次に、次のようなフィールドをブーストできません:content ^ 0.5 title ^ 2結果が完全にコンテンツフィールドにあるため、すべてのページにh2 htmlタグのフレーズが存在し、フレーズ(h2 htmlタグ内)の場合はドキュメントをブーストしたい)それを検索した単語が含まれています。どうすればよいですか?
solr - solr で特定のフォントを使用してページをブーストする
Apache Nutch を使用して Web サイトをクロールし、Apache Solr にインデックスを付けました。クエリ ワードが特定のフォント (h2 html タグなど) に存在するドキュメントをブーストするにはどうすればよいですか? たとえば、私のクエリは本で、本を含むページが 2 つあります。最初のページの本はh1 htmlタグにあり、2番目のページの本はh2 htmlタグにあります。2番目のページが上位の結果になるようにしたい(ブーストが大きい)。ありがとう
apache - nutch と solr を使用して、すべてのページで特定のタイトルを取得する
私は solr と nutch をインストールしました。私の Web ページ構造は、すべてのページでタイトルが同じです。例: 銀行の何か。しかし、すべてのページには、次のような TITLE という ID を持つタグがあります。
ページ固有のタイトルと検索語を取得する 2 番目のタイトルのような別のフィールドを solr に追加したい (実際、ページ固有のタイトルはコンテンツ フィールドにあり、これを他のフィールドに入れたい)
これどうやってするの?!
solr - Solr:ネストされたクエリで多値リクエストパラメータを「ローカルパラメータ」として渡す方法は?
次の形式のネストされた Solr DisMax クエリを作成しています_query_:"{!edismax qf=...}...
。ここで、いくつかのブースティング クエリ (bq パラメーター) を追加する必要があります_query_:"{!edismax qf=... bq=foo bq=bar}
が、bq キーの 1 つだけが処理され、残りは無視されるため、単純に書き込むだけでは機能しないようです。多値パラメータをLocalParamsとして渡すことは可能ですか?
solr - Solr: DisMax に頼らない追加ブースト クエリ - 可能ですか?
次のような分離 Lucene クエリが
あります。パーサーのパラメーターと(clause_1 OR clause_2 OR ... OR clause_N)
同じように、その上に加法的ブースト クエリを追加したいと考えています。bq
DisMax
試してみ{!edismax qf='' bq='my_boost_query'}(clause_1 OR clause_2 OR ... OR clause_N)
ましたが、結果はゼロでした。(空のqf
パラメータが原因である可能性があると思います)
DisMax
フォーマットを使用してクエリを書き直さずにそれを行うことは可能ですか? おそらく、Lucene
クエリパーサーの特別な構文_val_
などでしょうか?または、DisMax
ラッパーが仕事をしているかもしれませんが、上記のクエリ構文に何かが欠けているだけですか?
solr - Solr エンド ユーザー クエリ変換
とにかく、いくつかのルールに基づいて、エンド ユーザー クエリをより複雑な solr クエリに変換する方法があるかどうか疑問に思っています。
たとえば、ユーザーが 32 インチ テレビを入力した場合、dismax クエリ パーサーを使用して、solr が次のようにこのユーザー クエリ文字列を処理できるようにします。
ただし、ユーザーが「販売中のテレビ」と入力した場合、トークン テレビを定期的に検索したいので、以下のように販売中フラグが true になります。
これは可能ですか?または、このロジックには事前検索フォームが必要であり、ユーザーがチェックボックスでセール品のみを希望することを明確に示す必要があります。
ありがとう。
solr - solr で使用されているパーサーの種類
solr クエリでdefTypeを指定していない場合、DisMax または EDisMax のどちらのパーサーが使用されますか?
solr - dismax と EdisMax の違いは何ですか?
DisMax と EDisMax の違いは何ですか..? それについて知っておくと役立つ参考資料はありますか? また、DisMax が結果を生成できなかったクエリのうち、EDisMax が結果を生成できるものは何かを知りたい..?
EDisMax には、boost パラメータ、ps パラメータ、pf2 パラメータなどのクエリ パラメータがあります。しかし、このクエリ パラメーターとは別に、EDisMax が DisMax よりも優れていることは明らかです。これら2つの間でクエリがどのように処理されるか.EDisMaxがDisMaxよりも優れている要因..
一部のクエリは DisMax で結果を返すことができませんでしたが、EDisMax はそれらのクエリの結果を返します。
DisMax と EDisMax の違いをググってみました。私は、EDisMax で使用されているパラメーターは、DisMax と EDisMax の違いにすぎないことを発見しました。しかし、プレゼンテーションで他の人に技術的に説明する何かを期待しています。
http://ip:8983/solr/C73/select/?defType=edismax&q=iPodまたはビデオ&fl=ファイル名, スコア&hl=true&hl.fl=コンテンツ コンテンツファイル名&hl.zetaContentField=コンテンツ
上記のクエリの場合、EDisMax は約 238 の結果を生成します。しかし、DisMax は 0 の結果を生成します。では、この 2 つのパーサーでこのクエリを処理することの違いは何ですか; EDisMax が結果を生成する理由.それは私が知りたいことです ....