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