Sphinx は、全文検索のために MySQL および PostgreSQL と組み合わせることができる SQL ベースの全文検索エンジンであり、データベース自体よりも専門的な検索機能を提供できるため、アプリケーションによる専門的な全文検索の実装が容易になります。 Sphinx は、PHP、Python、Perl、Ruby などの一部のスクリプト言語用の検索 API インターフェイスを特別に設計し、MySQL 用のストレージ エンジン プラグインも設計します。
1 つの Sphinx インデックスには最大 1 億レコードを含めることができ、1,000 万レコードのクエリ速度は 0.x 秒 (ミリ秒) です。 Sphinx によるインデックス作成の速度は、100 万レコードのインデックスを作成するのに 3 ~ 4 分しかかかりません。最新の 100,000 レコードのみを含む増分インデックスの作成は 50 分で完了します。レコードを再構築する必要があるのは数十秒だけです。
Sphinx 2.0.4 がリリースされました。このバージョンは主にバグ修正です。リアルタイム インデックスを使用しているユーザーは、できるだけ早くアップグレードすることをお勧めします。修正されたバグの詳細なリストについては、 ここを参照してください。
Sphinxの主な機能は次のとおりです。
高速インデックス作成 (新しい CPU ではほぼ 10 MB/秒)。
高速検索 (平均クエリ速度は 2 ~ 4G のテキスト量で 0.1 秒未満)。
高可用性 (単一の CPU で最大 100 GB のテキストと 1 億ドキュメントをサポートできます)。
分散検索をサポートするために適切な関連性ランキングを提供します。
文書概要の生成を提供します。
MySQL 内のプラグイン ストレージ エンジンからのブール値、フレーズ、および同義語クエリの検索サポートを提供します。
各ドキュメントに対して複数の全文検索フィールドをサポートします (デフォルトは最大 32)。
ドキュメントごとに複数の属性をサポートします。
単語の分割をサポートします。
シングルバイトエンコーディングとUTF-8エンコーディングをサポートします。