全文検索エンジンについて
そこそこの頻度で必要になるけど毎度毎度調べてる気がするのでまとめる
何を選ぶべきか
RDBMS
まずメインデータストアで検索する程度で問題ないかは検討する.
本当にRDBMSでは検索要件を満たすのが無理そうな場合に専用のミドルウェアとして検索エンジンを使う.
分散システムの原則 - 本当に必要な場合を除いて分散するべきでない
Elasticsearchのfork. AWS主導で開発. FOSSのため利用は制限されない. AWSではマネージドで使える.
Elasticが開発. OpenSearchとのforkで分裂後はプロプライエタリ. ライセンスの問題でAWS Elasticsearchは特定バージョンまでしか使えない (7.10)
特定Platformで使えないという制限を課したのがあまり良いとはいえないムーブなので今後が若干心配
Rust製全文検索エンジン. 性能の良さが売り. ワンバイナリで手軽に始められる.
OpensearchやElasticsearchはToo Muchな場面も多いがMeilisearchは比較的小規模な用途でも使いやすそう.
SaaS型検索エンジン老舗.
検索エンジンを自前で持ちたくないしメンテもするような余裕もない場合はSaaSを検討したい