問題タブ [solrnet]
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.
solr - Solrでコンスタントスコアクエリを実行する方法
SolrNetを使用して、「タグ」と呼ばれる複数値フィールドがあるSolrインデックスにアクセスしています。次の擬似コードクエリを実行したい:
(tags:stack)^ 10 OR(tags:over)^ 5 OR(tags:flow)^ 2
ここで、「スタック」という用語は10ブーストされ、「オーバー」は5ブーストされ、「フロー」は2ブーストされます。私が求めている結果は、「スタック」の結果が「スタック」の結果よりも高く表示されることです。フロー」など。
私が抱えている問題は、「フロー」が2、3のドキュメントにしか表示されないが、「スタック」がロードに表示されることです。idf値が高いため、「フロー」のドキュメントが「スタック」のドキュメントの上に表示されます。
これがプロジェクトがLuceneで直接実装されたとき、私はConstantScoreQueryを使用し、これらはブースト値のみに基づくスコアに基づいてidfを排除しました。
これは、Solrにクエリ文字列を渡すだけのSolrとSolrNetでどのように実現できますか?それができない場合、私がこの問題に取り組むことができる別の方法はありますか?
前もって感謝します!
solr - SolrNet クライアントの URL を変更する方法
私は solrnet の初心者で、質問は SolrNet クライアントの URL を変更する方法です。
これはウィキで見つけた
コードの初期化
Startup.Init<Product>("http://localhost:8983/solr");
呼び出しコード
var solr = ServiceLocator.Current.GetInstance<ISolrOperations<Product>>();
しかし、URLを変更する方法がわかりません。誰かがこれを行う方法を教えてくれませんか。本当にありがとう。
solr - Solr 検索結果とドキュメントの位置の取得
SolrNet を使用してアクセスする solr インデックスがあり、結果セット全体を返すことなく、結果内の特定のドキュメントのインデックス (位置) を取得したいと考えています。
さらに詳しく説明すると、クエリは最大 30,000 のドキュメントを返し、整数フィールドで並べ替えられます。一意のキー フィールドには Guid が含まれており、最初の 10 件の結果のみを返しながら、一意のキーに基づいて特定のドキュメントが結果のどこにあるかを見つけたいと考えています。
このインデックスはもともとプレーンな古い Lucene で実装されており、このタスクは 2 つのクエリで達成されました。次に、ドキュメント ID を使用して、ドキュメントが完全な結果セットのどこに表示されるかを見つけることができますが、最初の 10 個のドキュメントのみを列挙します。
30000 の結果すべてを返さずに、Solr を使用して目的を達成する方法はありますか (これを Guid に限定しても遅すぎるようです)。
ありがとう
solrnet - リモート サーバーがエラーを返しました: (400) 不正な要求。ドキュメントをインデックスに追加するとき
ドキュメントをインデックスに追加すると、ページは 400 の不正な要求を返します。solr が起動し、データベースからデータを取得できます。だから私はデータをインデックスに入れる必要があります。しかし、それは常に失敗しています。
1) SolrBaseRepository のコード スニペットは次のとおりです。
2) ここに schemal.xml の主要部分があります
3) ソルルール:http://localhost:8080/solr
4) エラーはここにあります:
search - Solrnetにクエリパラメータを渡す際のBastWay
私はSolrnetを使用して検索を行うことに取り組んでいます。これは私が望むように機能しています。ただし、クエリパラメータをWebページからSolrnetに渡すための最良の方法についてアドバイスが必要です。
私が理想的にやりたいのは、このサイトと同様のクエリ文字列パラメータを渡すことです。http://www.watchfinder.co.uk/SearchResults.aspx ?q = %3a&f_brand = Rolex&f_bracelets = Steel&f_movements=Automatic。
サイトのクエリ文字列からわかるように、SolrNetに直接渡されているように見えます。これが私が現在行っていることです(ファセットクエリセグメント):
現時点では、次のクエリ文字列を追加して、現在のコードからすべての結果をクエリする方法がわかりません:q = :。
sql-server - Solr/SolrNet-文字検索による文字のワイルドカードの使用
やあみんな、私はアプリケーションにいくつかの検索機能を実装しようとして書いていました。
Viewimインデックスを使用してMSSQLServerへのTomcat7JDBC接続で実行されているSolr1.4.1Solrはインデックス作成を終了し、インデックスが機能しています。
Solrを検索して通信するために、小さなテストWCFサービスを作成しました(後でメインサービスで実装する予定です)。
目的は、メインアプリケーションにテキストフィールドを実装することです。このテキストフィールドでは、ユーザーはペイントブラシのようなものを入力し始め、入力される文字が増えるにつれてオブジェクトのリストを徐々にフィルタリングすることができます。
これは、特定の時点までSolrで問題なく機能しています。クエリの最後にワイルドカードアスタリスクを使用しているため、p * pa * pain *paint*などの多くのリクエストをスローしています。
サーバーでの等々とその結果は問題なく返されます(実際には非常に高速です)。唯一の問題は、ユーザーが単語全体を入力すると、クエリがペイントブラシ*になり、その時点でsolrが0の結果を返すことです。
したがって、query +wildcardはquery+somethingのみであり、query+nothingではないようです。
Lucene.Netでこれを機能させることができましたが、Solrは見た目と同じように動作していません。
そのような機能の実装について何かアドバイスはありますか?
SolrNetを使用しているので、見るべきコードはあまりありません:http: //pastebin.com/tXpe4YUe
私はそれがAnalyzerとParserと関係があると思いますが、どこを見ればよいかを知るためにSolrにはまだそれがありません:)
exception - SolrNet-指定されたキーが辞書に存在しませんでした
SolrNetをvb.net2.0で使用していますが、solrをインスタンス化できないようです。
Dim solr As ISolrOperations(Of PMWProperty)= ServiceLocator.Current.GetInstance(Of PMWProperty)()
例外をスローします:
[KeyNotFoundException:指定されたキーがディクショナリに存在しませんでした。] System.ThrowHelper.ThrowKeyNotFoundException()+28 System.Collections.Generic.Dictionary`2.get_Item(TKey key)+7456108 SolrNet.Utils.Container.DoGetInstance(Type serviceType 、文字列キー)+22 Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(Type serviceType、文字列キー)+47
[ActivationException:タイプPMWProperty、キー ""のインスタンスを取得しようとしたときにアクティブ化エラーが発生しました]Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(Type serviceType、String key)+104 Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance()+5
solrスキーマに一致するフィールドがいくつかあるPMWPropertyクラスがあります。solr url(localhost:8983 / solr)を介してクエリを実行できますが、コードで機能させることができません。
それはどのキーを見ていますか?例外はキーが「」であると言っているようですが、それはどうあるべきですか?なぜキーが必要なのですか?
c# - solrnet を使用したリッチ ドキュメントのインデックス作成
Solrnet で PDF ドキュメントのインデックスを作成できますか?
PDF からコンテンツを読み取り、フィールドに格納して索引付けすることは可能ですか?
実際、たとえば、フィールドを含むテーブルをデータベースに保存したいと思います。
「ID」、「タイトル」、「日付」、「Path_Of_MyDocument」。そのため、ドキュメントのコンテンツ (通常はリッチ テキスト ドキュメント) でインデックスを作成したいと考えています。
返信ありがとうございます。私の英語で申し訳ありません。
import - SolrNet-既存のインデックスに追加
検索機能とインデックス作成機能を使用して、Solrサーバーを正常にセットアップできました。データベースから完全にインポートした後、約380のドキュメントが含まれています。
ドキュメントの量が増えると、毎回完全なインポートを実行するのにかなりの時間がかかるので、Solrインデックスでドキュメントを追加/編集/削除しやすくするためにSolrNetを探しています。
したがって、Solrには私のデータベースからインポートされたインデックスがあります。SolrNetを使用している私のWebサービスでは、インデックスに何か新しいものを追加するメソッドがあります。追加された後、それはインデックス内の唯一のもののように見え、インポートされたすべての「古い」データは現在失われています。
質問1:SolrNetはSolrに再度フルインポートを要求できますか?(基本的にこのコマンドの呼び出し:/ solr / dataimport?command = full-import)
質問2:SolrNetは、古いデータを消去せずに既存のインデックスにCRUDできるはずですか?このPOCコードを使用してテストしています:http://pastebin.com/4G1YZ6Ahもしそうなら、何が間違っているのかについての手がかりを教えていただけますか?
c# - Solrnet - 基本認証でインスタンスを初期化する方法
基本認証でsolrインスタンスを接続することは可能ですか?
私は試してみました:
しかし、うまくいきません。
解決策はありますか?
ありがとう。