0

ユーザーとネットワークの関係があるmysqlテーブルに基づいて、限られた結果セットでスフィンクス検索を実行しようとしています。そのため、メンバーであるネットワーク内でのみ検索できるようにする必要があります。可能なユーザーとネットワークの組み合わせはほぼ無限にあるため、これを達成できた唯一の方法は、スフィンクス検索を実行し、それをネットワーク テーブルに結合して IN ステートメントを含む mysql クエリに追加することです。ドキュメント ID のリストとともに。

これは非常に効率的であり、サイトが大きくなるにつれ、これが非常に大きな問題になることをすでに認識しています。

sphinx のデータが mysql フルテキスト列にある場合、これは問題ではありませんでした。しかし、検索を高速化するためにスフィンクスを追加して以来、最終結果を取得する方法が複雑になっています。

ユーザーがいるすべてのネットワークのリストを取得し、それを制限要因 (ネットワーク ID 属性) としてスフィンクス検索を行うという、逆のことを考えました。

誰かがこれに対するより良い解決策を持っていますか? このデータを直接 sphinx データに結合し、mysql の結果セットで制限する方法はありますか?

ありがとう

4

0 に答える 0