■概要
拙作gem、java_bin を約1年ぶりに更新しました!
ダウンロードは http://rubygems.org/gems/java_bin からどうぞ!
...て何者か良く分からないので少し説明します。
■java_binとは
全文検索サーバの有名なプロダクトの一つに、Apache Solr があります。内部ではLuceneライブラリ(ツイッター内部でも利用されている)を利用しており、一説では white house のサイトでも利用されているようです。
アプリケーション側からSolrへの通信は、httpプロトコルで行いますが、その際のレスポンスフォーマットを、複数の中から選択する事ができます(wtパラメータ)。
通常rubyから利用する場合は、wt=ruby もしくは wt=jsonを利用する事になりますが、wt=javabin を利用する事により、バイナリフォーマットを指定する事ができます。しかしrubyでは解釈する事が出来ない為、C言語拡張を利用しparserを作成しました。
バイナリフォーマットを利用する事により、下記の点が期待できます。
・parseコストの削減
・通信量の削減
・型に応じたインスタンス化
実際parseコストに関しては、3~6倍程度の高速化が実現できています。
■今回何が新しくなったのか
0.4.0では下記の点で新しくなっています。
・solr 3.1以降のjavabin format2に対応
・RailsInstallerでのコンパイルサポート
0.3.5を一年近くプロダクションで利用してきましたが、無問題でした!
rubyからsolrを利用する際に、高速化したい!というニッチなお悩みをお持ちの方は是非 ^o^
0 件のコメント:
コメントを投稿