Navigation Menu

Skip to content

Commit

Permalink
Add the next release information
Browse files Browse the repository at this point in the history
  • Loading branch information
kou committed Oct 26, 2015
1 parent 4b9d968 commit 489ee2d
Showing 1 changed file with 11 additions and 7 deletions.
18 changes: 11 additions & 7 deletions ja/_posts/2015-10-22-grn_ts.md
Expand Up @@ -4,29 +4,33 @@ title: grn_ts (ぐるんたす)の紹介
description: grn_ts を紹介します!
---

## grn_ts (ぐるんたす)の紹介
## grn\_ts (ぐるんたす)の紹介

Groonga の実験的な機能として, `select` の新しい内部エンジン grn_ts が追加されています. grn_ts の TS は Turbo Selector の略であり,まだ使えない機能がたくさんあるものの,単純なフィルタリングをおこなうだけであれば,従来エンジンより高速に動作します.以下, grn_ts の特徴や使い方を簡単に紹介します.
Groonga の実験的な機能として, `select` の新しい内部エンジン grn\_ts が追加されています. grn\_ts の TS は Turbo Selector の略であり,まだ使えない機能がたくさんあるものの,単純なフィルタリングをおこなうだけであれば,従来エンジンより高速に動作します.以下, grn\_ts の特徴や使い方を簡単に紹介します.

### 特徴

grn_ts は Groonga が列指向なデータベースであることを強く意識した実装となっているため,特にカラムの走査が高速です. 擬似乱数を保存した 10 列 x 100 万行のテーブルを使った実験では,索引を使わない検索速度が従来エンジンと比べて **約 10 倍** になることが確認されています.
grn\_ts は Groonga が列指向なデータベースであることを強く意識した実装となっているため,特にカラムの走査が高速です. 擬似乱数を保存した 10 列 x 100 万行のテーブルを使った実験では,索引を使わない検索速度が従来エンジンと比べて **約 10 倍** になることが確認されています.

高速な検索以外の特徴として, `output_columns` に式を記述することができます.たとえば, `--output_columns '_id, _key, ColA + ColB'` と記述すれば, `_id`, `_key` に加えて `ColA + ColB` を評価した結果が出力されます.

### 有効にする方法
### 組み込む方法

grn_ts はまだ実験的な機能であり,デフォルトでは有効になっていません. grn_ts を有効化するには, `configure` スクリプトを実行するとき,以下のように指定してください. `GRN_WITH_TS` というマクロが定義され, grn_ts が有効になります.
grn\_ts はまだ実験的な機能であり,現在リリースされているバージョン(5.0.8)ではデフォルトで組み込まれていません.自分でビルドして組み込む必要があります.次回リリースされるバージョン(5.0.9)からはビルドしなくてもデフォルトのビルドにgrn\_tsが組み込まれます.

grn\_ts を組み込むには, `configure` スクリプトを実行するとき,以下のように指定してください. `GRN_WITH_TS` というマクロが定義され, grn\_ts が組み込まれます.

```
$ ./configure CFLAGS="-g -O2 -DGRN_WITH_TS"
```

現在は Ubuntu 14.04 で開発を進めているため,ほかの環境ではビルドに失敗したり,動作がおかしくなったりする可能性があります.問題が見つかったときは, [GitHub Issues](https://github.com/groonga/groonga/issues)[メーリングリスト](http://lists.osdn.me/mailman/listinfo/groonga-dev) よりご連絡ください.

なお,組み込んだだけでは使われません.次に示すように明示的にgrn\_tsを使うように指示する必要があります.

### 使い方

`select``filter` を指定するとき,先頭に `?` を追加すれば grn_ts が適用されます.以下に例を示します.以下の例において, `Table` は擬似乱数を保存した 10 列 x 100 万行のテーブルです.従来エンジンと grn_ts の検索時間を比較すると, grn_ts では約 1/10 に短縮されていることがわかります.
`select``filter` を指定するとき,先頭に `?` を追加すれば grn\_ts が適用されます.以下に例を示します.以下の例において, `Table` は擬似乱数を保存した 10 列 x 100 万行のテーブルです.従来エンジンと grn\_ts の検索時間を比較すると, grn\_ts では約 1/10 に短縮されていることがわかります.

```
> # 従来エンジン
Expand Down Expand Up @@ -59,7 +63,7 @@ $ ./configure CFLAGS="-g -O2 -DGRN_WITH_TS"

### 制限事項

現在, grn_ts で使える `select` のオプションは以下の通りです.
現在, grn\_ts で使える `select` のオプションは以下の通りです.

- `filter`
- `output_columns`
Expand Down

0 comments on commit 489ee2d

Please sign in to comment.