Groonga 11.0.2リリース
Groonga 11.0.2をリリースしました!
それぞれの環境毎のインストール方法: インストール
変更内容
主な変更点は以下の通りです。
改良
-
[Documentation]
ruby_load
コマンドのリファレンスを削除しました。- このコマンドはすでに削除されているためです。
-
Debian GNU/Linux Debian 11 (Bullseye) をサポートしました。
-
select
--post_filter
をサポートしました。 -
select
--slices[].post_filter
をサポートしました。 -
select
--sort_keys
内に式を記述できるようになりました。 -
Token filters オプションをつけた複数のトークンカラムを使えるようにしました。
--token_filters 'TokenFilterStopWord("column", "ignore"), TokenFilterNFKC130("unify_kana", true)'
のように複数のトークンフィルターを指定できます。
-
query 複雑な式で
result_set
ステージの動的カラムを扱えるようにしました。-
複雑な式とは、以下のように一時的な内部結果セットが必要な式です。
'(true && query("name * 10", "ali", {"score_column": "ali_score"})) || \ (true && query("name * 2", "li", {"score_column": "li_score"}))'
- 上記の式では、
true
の評価結果を格納するために一時的な結果セットを使用します。 -
したがって、例えば、以下の式では、式の中で
result_set
ステージの動的カラムの値を使えます。以下の式では、一時的な内部結果セットが必要ないためです。'(query("name * 10", "ali", {"score_column": "ali_score"})) || \ (query("name * 2", "li", {"score_column": "li_score"}))'
- 上記の式では、
-
今回のリリースでは、以下のように
li_score
に値を設定できます。(以前のバージョンでは、2番めの式が動的カラムの値を取得出来なかったため、li_score
の値は0
になっていました。)table_create Users TABLE_NO_KEY column_create Users name COLUMN_SCALAR ShortText table_create Lexicon TABLE_HASH_KEY ShortText \ --default_tokenizer TokenBigramSplitSymbolAlphaDigit \ --normalizer NormalizerAuto column_create Lexicon users_name COLUMN_INDEX|WITH_POSITION Users name load --table Users [ {"name": "Alice"}, {"name": "Alisa"}, {"name": "Bob"} ] select Users \ --columns[ali_score].stage result_set \ --columns[ali_score].type Float \ --columns[ali_score].flags COLUMN_SCALAR \ --columns[li_score].stage result_set \ --columns[li_score].type Float \ --columns[li_score].flags COLUMN_SCALAR \ --output_columns name,_score,ali_score,li_score \ --filter '(true && query("name * 10", "ali", {"score_column": "ali_score"})) || \ (true && query("name * 2", "li", {"score_column": "li_score"}))' [ [ 0, 0.0, 0.0 ], [ [ [ 2 ], [ [ "name", "ShortText" ], [ "_score", "Int32" ], [ "ali_score", "Float" ], [ "li_score", "Float" ] ], [ "Alice", 14, 10.0, 2.0 ], [ "Alisa", 14, 10.0, 2.0 ] ] ] ]
-
以下のように、
result_set
ステージの動的ベクターカラムも扱えるようにしました。table_create Users TABLE_NO_KEY column_create Users name COLUMN_SCALAR ShortText table_create Lexicon TABLE_HASH_KEY ShortText \ --default_tokenizer TokenBigramSplitSymbolAlphaDigit \ --normalizer NormalizerAuto column_create Lexicon users_name COLUMN_INDEX|WITH_POSITION Users name load --table Users [ {"name": "Alice"}, {"name": "Alisa"}, {"name": "Bob"} ] select Users \ --columns[tags].stage result_set \ --columns[tags].type ShortText \ --columns[tags].flags COLUMN_VECTOR \ --output_columns name,tags \ --filter '(true && query("name", "al", {"tags": ["al"], "tags_column": "tags"})) || \ (true && query("name", "sa", {"tags": ["sa"], "tags_column": "tags"}))' [ [ 0, 0.0, 0.0 ], [ [ [ 2 ], [ [ "name", "ShortText" ], [ "tags", "ShortText" ] ], [ "Alice", [ "al" ] ], [ "Alisa", [ "al", "sa" ] ] ] ] ]
-
-
Ubuntu Ubuntu 21.04 (Hirsute Hippo) をサポートしました。
-
[httpd] バンドルしているnginxのバージョンを1.19.10に更新しました。
既知の問題
-
現在Groongaには、ベクターカラムに対してデータを大量に追加、削除、更新した際にデータが破損することがある問題があります。
-
[ブラウザーベースの管理ツール] 現在Groongaには、レコード一覧の管理モードのチェックボックスにチェックを入れても、非管理モードに入力された検索クエリーが送信されるという問題があります。
さいごに
詳細については、以下のお知らせも参照してください。
それでは、Groongaでガンガン検索してください!