問題タブ [sphinx]
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.
mysql - 全文検索エンジンの比較 - Lucene、Sphinx、Postgresql、MySQL?
Django サイトを構築していて、検索エンジンを探しています。
いくつかの候補:
Lucene/Lucene with Compass/Solr
スフィンクス
Postgresql 組み込み全文検索
MySQl 組み込み全文検索
選択基準:
- 結果の関連性とランキング
- 検索とインデックス作成の速度
- 使いやすさと Django との統合のしやすさ
- リソース要件 - サイトはVPSでホストされるため、理想的には検索エンジンは大量の RAM と CPU を必要としません。
- スケーラビリティ
- 「もしかして?」、関連検索などの追加機能
上記の検索エンジン、またはリストにない他のエンジンを使用した経験のある方なら誰でも、ご意見をお待ちしております。
編集: インデックス作成のニーズについては、ユーザーがサイトにデータを入力し続けると、それらのデータを継続的にインデックス作成する必要があります。リアルタイムである必要はありませんが、新しいデータが 15 ~ 30 分以内の遅延でインデックスに表示されることが理想的です
ruby-on-rails - Sphinx が悪い検索結果を返す
Thinking Sphinx プラグインで Sphinx を使用しています。次のコード (および rake thinking_sphinx:index コマンド) を使用して、Venue というモデルにインデックスを付けました。
次のコードを使用して、コントローラーで結果を取得します。
それらをjsonとしてレンダリングします。私が抱えている問題は、この URL にアクセスしたときです。
私は何も得ません。しかし、この URL にアクセスすると、次のようになります。
ボルチモア市にあるすべての会場を取得します。なぜか1キャラで差がつく。理論的には、「b」という 1 文字で検索するだけで、ボルチモアのすべての会場を取得できるはずです。
ここで何が起こっているか知っている人はいますか?
ありがとうございました
ruby-on-rails - Sphinx、Rails、ThinkSphinx、およびクエリでいくつかの単語を他の単語よりも重要にする
ThinkingSphinx を使用して、検索する必要があるキーワードのリストがあります。それらのいくつかは他のキーワードよりも重要であり、それらの単語に重みを付ける方法を見つける必要があります。
これまでのところ、私が思いついた唯一の解決策は、クエリで同じ単語を x 回繰り返して、その関連性を高めることです。例:
3 つのキーワード、それぞれに重要度があります: 青(1) 最近(2) 楽しい(3) このクエリを実行します
MyModel.search "Blue 最近 最近 楽しい 楽しい 楽しい", :match_mode => :any
あまりエレガントではなく、かなり制限されています。誰かがより良いアイデアを持っていますか?
ruby-on-rails - Rails アプリケーションのロード時に sphinx デーモンを自動的に開始するにはどうすればよいですか?
sphinx デーモンを手動で開始するコマンドを認識しています。rake タスクを使用しています: "rake think_sphinx:start" Rails アプリケーションが読み込まれるたびに開始するようにして、毎回手動でコマンドを入力する必要がないようにすることはできますか?
ruby-on-rails - Thinking Sphinx-RuntimeError:外部キーの属性がありません
初めてスフィンクス/シンキングスフィンクスと仲良くしようとしています。
モデルを次のように定義しました(簡略化):
電話するときはいつでも
私は得る
私は何が間違っているのですか?
ruby-on-rails - ThinkingSphinxが条件を受け入れない
ThinkingSphinxに自分の状態を認識させるのに問題があります。
私のディスカッションモデルには、次のコードが含まれています。
そして予想通り、この検索
件名、本文、または返信の本文に「便利」という単語が含まれるディスカッションを返します。
現在、「投稿の削除」機能を実装しています。:disabled==falseというフィールドがあるディスカッションのみを表示したいと思います。
残念ながら、この検索:
何があっても、常に空の配列を返します。
なんで?
text - Sphinx の結果から特定のフィールドを返すにはどうすればよいですか?
本のテーブルにインデックスを付けているとします。タイトル、著者、説明などがあります。
すべてのフィールドを検索して、検索用語を含む本のタイトルを返したいと考えています。検索を実行して Sphinx から book_id (doc_id) を返すことができるので、自分で調べることができますが、Sphinx がタイトルを教えてくれただけで、データベースにアクセスする必要がまったくない場合、本当に素晴らしいことです。Sphinx にさまざまな属性を返させることはできますが、テキスト フィールドを取得することはできません。
これは可能ですか?もしそうなら、どのようにしますか?
[更新] 今日これを見つけました: http://www.sphinxsearch.com/faq.html#row-storage
database - Sphinx フィルター - フィルター属性間に「OR」を使用できますか?
私は sphinx を使用して、データベースからいくつかのアイテムをここにリストしています。OR
ほぼ 100%です。2 つの異なるフィルターの間に を作成する方法がまだわかりません。例えば:
データベース内のオブジェクトには開始日と終了日がありますがfilter(starting_date, x, y)
、filter(ending_date,x,y)
両方のフィルターが true を返す必要があります。
ruby-on-rails - 思考スフィンクスを使用したフロート フィールドによる検索と並べ替え
Railsアプリでの検索に思考スフィンクスを使用しています。「高さ」と呼ばれる浮動小数点フィールドがあります。このフィールドで正確な値 (つまり、6.5 ではなく正確に 6.0) を検索できるようにする必要があります。また、フィールドでソートできる必要があります。
私がこれまでに持っているもの:
問題: 正しくソートされず、'6' を検索すると 6.0 と 6.5 が返される