HAYASHI Kentaro
null+****@clear*****
Mon Mar 28 17:05:42 JST 2016
HAYASHI Kentaro 2016-03-28 17:05:42 +0900 (Mon, 28 Mar 2016) New Revision: 3e0300064f7730f5beeb856942325c6467e3c05c https://github.com/groonga/groonga.org/commit/3e0300064f7730f5beeb856942325c6467e3c05c Message: blog ja: add 6.0.1 blog entry Added files: ja/_posts/2016-03-29-groonga-6.0.1.md Added: ja/_posts/2016-03-29-groonga-6.0.1.md (+94 -0) 100644 =================================================================== --- /dev/null +++ ja/_posts/2016-03-29-groonga-6.0.1.md 2016-03-28 17:05:42 +0900 (d4227e2) @@ -0,0 +1,94 @@ +--- +layout: post.ja +title: Groonga 6.0.1リリース +description: Groonga 6.0.1をリリースしました! +published: false +--- + +## Groonga 6.0.1リリース + +[Groonga 6.0.1](/ja/docs/news.html#release-6-0-1)をリリースしました! + +それぞれの環境毎のインストール方法: [インストール](/ja/docs/install.html) + +### 変更内容 + +主な変更点は以下の通りです。 + + * これまであったキーの総サイズは4GiBという制限を緩和(1つのテーブルでより多くのデータを扱えるようになりました) + * 対象テーブルを参照しているテーブルとカラムを削除可能に(まとめて被参照テーブルを削除するのが便利になりました) + +#### これまであったキーの総サイズは4GiBという制限を緩和(1つのテーブルでより多くのデータを扱えるようになりました) + +今回のリリースでは、これまでのGroongaの制約である「最大総キーサイズは4GiB」という制限が緩和されました。 + +ただし、この機能を有効にするためには、ハッシュテーブルに ``KEY_LARGE`` フラグをつけて作成する必要があります。このフラグがついていないテーブルはこれまで通り最大総キーサイズは4GiBとして扱われます。 +一方で、``KEY_LARGE`` を有効にしたテーブルでは、最大総キーサイズは1TiBになります。 + +``KEY_LARGE`` フラグは次のようにして指定します。 + +``` +table_create Users TABLE_HASH_KEY|KEY_LARGE ShortText +``` + +これで、1つのハッシュテーブルでより多くのデータが扱えるようになります。 + +#### 対象テーブルを参照しているテーブルとカラムを削除可能に(まとめて被参照テーブルを削除するのが便利になりました) + +今回のリリースでは、対象テーブルを参照しているテーブルとカラムを削除可 +能にする機能がtable_removeとlogical_table_removeに入りました。 + +従来、以下の条件に合致する場合には、テーブルの削除が失敗するようになっ +ていました。 + +* 1つ以上のテーブルがこの削除対象のテーブルをキーの型として使っている。 +* 1つ以上のカラムがこの削除対象のテーブルを値の型として使っている。 + +これは、参照先がなくなることを防ぐためにデフォルトでそうなっています。 +もし、参照されているまま削除してしまうと、そのテーブルを参照しているテー +ブルやカラムが壊れてしまうためです。 + +ただし、参照しているテーブルとカラムもまとめて削除したいこともあります。 +そういった用途のために、--dependent yesをつけるとまとめて削除できるよ +うになりました。 +例えば次のようなケースで有用です。 + +``` +table_create ReferencedTable TABLE_HASH_KEY ShortText +table_create Table1 TABLE_HASH_KEY ReferencedTable +table_create Table2 TABLE_NO_KEY +column_create Table2 reference_column COLUMN_SCALAR ReferencedTable +``` + +上記のスキーマで、``table_remove ReferencedTable``を実行するとエラーになります。``ReferencedTable``は``Table1``のキーでもあり、``Table2``の``reference_column``からも参照されているからです。 + +これを``table_remove ReferencedTable --dependent yes``とすると、``ReferencedTable``と``Table1``、``Table2.reference_column``をまとめて削除することができます。 +これまでは参照している側をひとつひとつ削除してからでないと削除できなかったので、参照しているテーブルやカラムが多岐にわたると、いざ削除しようとするときに面倒でした。その点が改善されています。 + +``table_remove``するときに、削除できないケースのチェックのため、データベース内のすべてのテーブルとカラムが開かれることに注意が必要です。この操作はリソースを消費するので、もし、そのせいで削除できないときには、回避策として一時的に最大スレッド数の値を1に設定します。 + +``` +thread_limit 1 +``` + +こうすると、チェック用に一時的に開いたテーブルとカラムを閉じるので、リソースの消費を抑えることができます。 + +### お知らせ + +今月・来月は以下のイベントが予定されています。 + + * 3/29(火)[Groonga新リリース自慢会 6.0.1](https://groonga.doorkeeper.jp/events/41564) + + * 4/22(金)[Groongaで学ぶ全文検索 2016-04-22](https://groonga.doorkeeper.jp/events/41978) + +また、開催は6月としばらく先ですが、MySQLとPostgreSQLと日本語全文検索の第2回の開催も決まりました。 + + * 6/9(木) [MySQLとPostgreSQLと日本語全文検索2](http://eventdots.jp/event/584205) + +興味があるイベントがあればぜひご参加ください! + +### さいごに + +6.0.0からの詳細な変更点は[6.0.1リリース 2016-03-29](/ja/docs/news.html#release-6-0-1)を確認してください。 + +それでは、Groongaでガンガン検索してください! -------------- next part -------------- HTML����������������������������...Download