[groonga-dev,04191] [ANN] Groonga 6.1.1

Back to archive index

Kentaro Hayashi hayas****@clear*****
2016年 11月 29日 (火) 13:23:16 JST


今日は肉の日ですね。

Groonga 6.1.1をリリースしました!

  http://groonga.org/ja/blog/2016/11/29/groonga-6-1-1.html

今回のリリースでは、Zstandardに対応するなど、カラムの圧縮関連の話題が
があります。

# 変更内容

主な変更点は以下の通りです。

* Zstandardによるカラムの値の圧縮をサポートしました
* 小さなカラムのデータは圧縮するのをやめるようにしました

細かな変更点についてはニュースをご確認下さい。

  http://groonga.org/ja/docs/news.html#release-6-1-1-2016-11-29

以下、主な変更点について紹介します。

#### Zstandardによるカラムの値の圧縮をサポートしました

今回のリリースでは、Zstandardを利用したカラムの値の圧縮をサポートする
ようになりました。

これまでも、ZlibやLZ4によるカラムの値の圧縮はサポートとしていましたが、
新たに選択肢が一つ増えたことになります。

使い方は簡単で、ZlibやLZ4のときと同じようにカラムを作成するときにフラ
グを指定するだけです。

    column_create Memos content COLUMN_SCALAR|COMPRESS_ZSTD Text

このようにすると、Memos テーブルにZstandardを使ってカラムの値を圧縮す
る content カラムを追加できます。

#### 小さなカラムのデータは圧縮するのをやめるようにしました

今回のリリースでは、カラムの圧縮に関して、小さなカラムのデータは圧縮す
るのをやめるようにしました。

小さいカラムの値を圧縮する場合、圧縮前より逆にサイズが増えてしまうこと
があります。せっかくカラムの値を圧縮してディスク使用領域を節約しようと
しているのに、本来意図していないサイズの増大を招いてしまってはたまりま
せん。また、圧縮や展開のたびに無駄にCPUのリソースを使ってしまうことに
なります。

そこで今回のリリースでは、小さいカラムの値(256バイト未満)については、
圧縮処理をせずそのまま格納するようにしました。これまでは、小さいカラム
の値がほとんどの場合には圧縮自体が無意味になってしまうので、
COMPRESS_ZLIBやCOMPRESS_LZ4などのフラグをつけないようにするなどの判断
が必要でしたが、今回のリリースからは圧縮するしないを気にする必要がなく
なりました。これまでよりカジュアルに COMPRESS_ZLIBやCOMPRESS_LZ4 フラ
グを指定できるようになっています。

## イベントのおしらせ

今年もAdvent Calendarの季節がやってきましたね。
QiitaでGroonga Advent Calendar 2016を作成しました。

  http://qiita.com/advent-calendar/2016/groonga

Groongaの採用事例や、実際に使ってみての知見、Groongaと別の検索エンジン
のベンチマーク結果の比較など、Groongaに関する情報をお持ちの方は是非と
もふるってご参加下さい!

過去のAdvent Calendarの記事は以下から参照することができます。

* Groonga Advent Calendar 2015
  * http://qiita.com/advent-calendar/2015/groonga
* Groonga Advent Calendar 2014
  * http://qiita.com/advent-calendar/2014/groonga
* Groonga Advent Calendar 2013
  * http://qiita.com/advent-calendar/2013/groonga

以下は今回のリリースの変更点です。

## 改良

* [select]
  between,geo_in_circle,geo_in_rectangle,in_values,fuzzy_search,query
  をslicesでサポートしました。

* [groonga-httpd] PIDのログ出力をサポートしました。複数のワーカープロ
  セスを区別するのに便利です。メッセージは TIMESTAMP|MARK|PID: MESSAGE
  というように記録されます。

* [ja] 小さなデータは圧縮するのをやめるようにしました。カラムのデータ
  サイズが256バイト以下のときには COMPRESS_ZLIB や COMPRESS_LZ4、
  COMPRESS_ZSTD といったフラグが指定されていても圧縮しません。この変更
  により、パフォーマンスやディスク使用効率が改善します。

* [column_create] Zstandardをサポートしました。この機能を有効にするに
  は COMPRESS_ZSTD フラグを使います。

* [rpm][centos] ZstandardをCentOS 6以降のパッケージで有効にしました。

* [between] between() のターゲットに _key を between(_key, ...) として
  指定できるようになりました。

* [httpd] バンドルしているnginxのバージョンを1.11.6に更新しました。

## 修正

* 不必要なインデックスのチェックのせいで間違ったエラーが報告される不具
  合を修正しました。これはデフォルトのカラムの値である0が語彙表にすで
  に存在している場合に発生し、"[ii][delete][one] failed to allocate a
  segment: ..." といった意図しないエラーメッセージを表示します。

* [logical_table_remove] --dependent yes を指定しているときに、エラー
  を返すことがある不具合を修正しました。この不具合により、一つ以上のカ
  ラムが同じテーブルを参照しているときにエラーが発生していました。

* [sort] ソートキーが圧縮されているカラムであり --query や --filter が
  同時に使われている場合にクラッシュする不具合を修正しました。


--
Kentaro Hayashi <hayas****@clear*****>
-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: 無し
型:         application/pgp-signature
サイズ:     833 バイト
説明:       無し
Download 



groonga-dev メーリングリストの案内
Back to archive index