今回のリリースの主なトピックは次の2点です。一時テーブルにカラムを追加できるようになったまだ、Groongaを全文検索サーバーとして使っているユーザーには目に見えるメリットはないのですが、今後の改良で重要になる機能が追加されました。それが一時テーブルにカラムを追加できる機能です。今後、どのようなメリットがありそうかいくつか紹介します。selectのoutput_columnsで出力値に名前をつけることができるようになります。alias_name機能です。今は、output_columnsにsnippet_html(title)とsnippet_html(body)を指定するとどちらも出力名がsnippet_htmlになってしまいます。これを、snippet_html_title、snippet_html_bodyのように区別できるようになります。selectのsortby・selectのdrilldownでカラム値そのものではなく、カラム値を加工した値でソート・ドリルダウンできるようになります。Time型のカラムの値を加工して曜日にし、曜日でドリルダウンできます。今は、別の曜日カラムを用意し、loadするときに曜日を計算し、それを使ってドリルダウンする必要があります。(動的に計算する方が便利ですが、事前に曜日カラムを用意した方が速いので、今のやり方を使うケースもあるでしょう。)Mroongaのラッパーモードでトランザクション対応ストレージエンジン(たとえばInnoDB)をラップしているとき、ロールバックしてもインデックスが壊れないようにできます。トランザクション内での変更を一時テーブルとカラムに保存しておき、コミットされたときはそのデータを実際のテーブルに反映、ロールバックされたときは単純に破棄することができるからです。HTTP/2対応GroongaはHTTPを話せる全文検索サーバー機能を提供しています。この機能の実装は2つあり、1つはGroonga独自のHTTPサーバー実装で、もう1つはnginxモジュールでの実装です。このうち、nginxモジュールでの実装でHTTP/2を使えるようになりました。1.9.5から実験的な機能としてHTTP/2がサポートされています。Groongaはnginxをバンドルしてリリースしていますが、バンドルしているnginxのバージョンを1.9.5にし、HTTP/2を有効にしてビルドするようにしています。groonga-httpd.confを次のように変更することでHTTP/2でGroongaを使うことができます。}}HTTP/2を使うと、通信量が削減され、スループットがあがる可能性があります。おしらせ今週は次のイベントがあります。Groongaに興味のある方はぜひお越しください。2.1の下でリリースされています。