検索エンジンはユーザのイベントで利用するだけに限りません。例えばMOONGIFTの場合はレコメンデーションにも使っています。Webサイトにおいて検索エンジンは必須と言えるでしょう。 よく知られているものとしてはElasticsearchがありますが、今回はその代替としてSonicを紹介します。

Sonicの使い方

実際の利用例です。サイト内検索に使っています。

インクリメンタル、そして自動補完に使われています。

SonicはElasticsearchに比べてメモリの消費量が小さくなるように作られています。また、スキーマレスで高速性も売りとしています。日本語にも対応しており、各種プログラミング言語向けのライブラリも用意されています。

SonicはRust製のオープンソース・ソフトウェア(Mozilla Public License)です。

デモ valeriansaliou/sonic: ? Fast, lightweight & schema-less search backend. An alternative to Elasticsearch that runs on a few MBs of RAM.