Sonic - 高速で軽量なスキーマレス検索バックエンド
(github.com)-
少ないメモリで動作する Elasticsearch 代替のオープンソース(Rust)
-
ドキュメントインデックスではなく ID インデックス。検索結果として ID を返す
-
オートコンプリート、検索時のタイプミス補正をサポート
-
シンプルなプロトコルで複数の開発言語をサポート
→ Node、PHP、Rust を公式サポート
→ Python、Go、Java、.NET などはコミュニティによるサポート
- Unicode 対応、80言語をサポート
2件のコメント
検索エンジンを運用したことがないので断言はできませんが、韓国語の検索エンジンは形態素解析器と一緒に使われることが多いのではないかと思います。
CJKの形態素解析器という観点では、Sonicにはサポートがなく、MeiliSearchのほうは最近のバージョンで中国語の形態素解析器であるJiebaを使えるように追加されたと認識しています。韓国語はまだだった気がします。
似たようなプロジェクトとして Meilisearch も Rust で作られていて、かなり高速です。
Sonic は ID インデックスだけを保存する一方で、Meilisearch はドキュメント全体を保存します。
ElasticSearch の代替としては Meilisearch のほうがやや近く、Sonic は特定のケースではさらに軽量なバージョンとして置き換えられそうです :)