CloudSearchの比較検討を行った。候補を選定するにあたって、以下の特徴をもっていることを前提とした。LuceneやGroongaを使えば何でもできるが、ここでは対象としない。ウェブベースのインターフェースを持つインデックスの更新はほぼリアルタイムに反映されるスケールアウトが容易Solrhttps://lucene.apache.org/solr/Luceneをバックエンドにした全文検索システム。バージョン4になってから大幅に機能が増強された。短所クラスタを構築して運用するには手間がかかりそうSolrCloudはzookeeperに依存するためサーバ台数もかさむElasticsearchhttp://www.elasticsearch.org/Solrと同じくLuceneをバックエンドにした全文検索システム。使いやすいAPIを備えている。後発な分ノウハウの蓄積にやや不安が残る未実装機能がいくらかある(あった。CloudSearchhttp://aws.amazon.com/jp/cloudsearch/AWS上で提供されている全文検索システム。EC2と同じく時間とトラフィックで課金される。現時点ではまだベータ。現状では東京リージョンがないテキスト解析のカスタマイズが限定的。Synonymsのみカスタム可能。N-gramとか形態素解析は自前で処理してからアップロードする必要があるヒット位置を取る方法がないテキスト本文をインデックスと一緒に格納することはできない比較項目別のまとめ拡張性SolrもElasticsearchもLuceneをバックエンドにしているので、Luceneでできることは基本的にはどちらでもできるはず。Amazonは現状ではあまり拡張性はない。基本性能はSolrもElasticsearchも大差はなさそう。Amazonは自動的にノードが追加されるので性能の問題はなさそう。している分Solrがよいと思われるが、Elasticsearchも既に十分本番稼動実績はある。Amazonはベータなので未知数。リアルタイムデータ更新いずれもほぼリアルタイムに更新できる。日本語対応SolrとElasticsearchはほぼ同等。kuromojiやmecabをつかえば形態素解析もできる。Amazonはそれ自体では対応していないが、Luceneのtokenizer等を使って自前で前処理することで対応は可能。スケーラビリティAmazonは完全に自動的にスケールアウトしてくれる。Elasticsearchはインデックスのシャード数を作成時に決めておく必要があるが、スケールアウトは容易だと思われる。Solrはv4からはElasticsearchと大体同等のスケーラビリティを備えるようになった。後発な分Elasticsearchが一番洗練されているように思います。Solrは無難に導入できそうですが、スケールアウトが必要になったとき手間がかかりそうです。Amazonはメリットも多いですが、現状では制限が多いので使いづらいと思います。