Groonga 14.0.0リリース
Groonga 14.0.0をリリースしました!
メジャーバージョンアップです! メジャーバージョンアップですが、互換性は壊れていないので、データベースを再構築することなく14.0.0へアップグレードできます!
それぞれの環境毎のインストール方法: インストール
変更内容
主な変更点は以下の通りです。
改良
-
新しいトークナイザー
TokenH3Index
を追加しました。(実験的)TokenH3Index
は、WGS84GetPoint
をUInt64
(H3 index)にトークナイズします。 -
非テキストベースのトークナイザーを使ったインデックスのオンライン構築とオフライン構築をサポートしました。(実験的)
TokenH3Index
は、非テキストベースのトークナイザーの一つです。 -
[select] 非テキストベースのトークナイザーを使ったインデックスでの検索をサポートしました。(実験的)
TokenH3Index
は、非テキストベースのトークナイザーの一つです。 -
新しい関数
distance_cosine()
,distance_inner_product()
,distance_l2_norm_squared()
,distance_l1_norm()
を追加しました。これらの関数と
limit N
を使うことで、ベクトル的に距離の近いレコードのみを取得することができます。これらの関数は、
output
ステージで距離を計算します。ただ、これらの関数はまだ最適化できていません。distance_cosine()
: コサイン類似度を計算します。distance_inner_product()
: 内積を計算します。distance_l2_norm_squared()
: ユークリッド距離を計算します。distance_l1_norm()
: マンハッタン距離を計算します。
-
新しい関数
number_round()
を追加しました。 -
[load]
load
を並列に実行できるようになりました。この機能は、
load
のinput_type
がapache-arrow
の時のみ有効です。この機能は、一つのカラムに対し一つのスレッドを割り当てます。対象のカラムがたくさんある時に、ロード時間の短縮が期待できます。
-
[select]
--filter
内で配列リテラルをなるべく、uvectorとして使えるようにしました。uvectorは、要素が固定長サイズのベクターです。 すべての要素の型が同じ場合、ベクターの変わりにuvactorを使えます。
-
[status]
status
の結果にn_workers
を追加しました。 -
動的カラムの作成を最適化しました。
-
[WAL] 壊れたインデックスの再構築を並列で実行できるようになりました。
-
[select]
output_type=apache-arrow
の時に、_key
がInt64
型のテーブルへの参照カラムを表示できるようにしました。