Redis 8.4 が AI 機能、最適化などを備えて登場

キーポイント:
  • ハイブリッド検索 (ベクター + テキスト) をネイティブにサポートする Redis 8.4 リリース。
  • JSON でのメモリの大幅な節約 (数値配列で最大 92%)。
  • キャッシュ パフォーマンスが 30% 向上し、複雑な検索のパフォーマンスが 4.7 倍向上しました。
  • 新しいアトミック コマンド (MSETEX、XDELEX) により、Lua スクリプトが不要になります。
  • より安定したクラスタのためのスロットアトミックマイグレーションの導入
赤目

レディスのロゴ。

最近、NoSQLデータベース管理システムであるRedisの開発チームは、Redis 8.4の一般提供開始を発表しました。この新バージョンは単なるマイナーアップデートではなく、人工知能の時代に適応するためにエンジンの機能を再定義し、最新のアプリケーション向けのネイティブツールや、リソース消費を大幅に削減するパフォーマンス最適化機能を導入しています。

Redis 8.4は、統合ハイブリッド検索の導入、マルチスレッドI/Oの使用によるパフォーマンスの向上、JSON構造のより効率的なメモリ管理という3つの基本的な柱に重点を置いています。

Redis8.4の主な新機能

Redis 8.4 の新バージョンでは、最も注目すべき新機能の 1 つはFT.HYBRID コマンドの追加です。従来、ベクトル検索と全文検索を組み合わせるには複雑で断片的なプロセスが必要でしたが、Redis 8.4 では、全文検索とベクトル検索の機能を単一のクエリに組み合わせたハイブリッド検索が実装されました。これにより、開発者は、精度やパフォーマンスを損なうことなく、キーワードの直接一致と意味的類似性の両方を考慮した結果を取得できるようになり、AI システム向けの高品質なコンテキストの作成が大幅に容易になります。

開発者によると、今回の最適化により、標準的なワークロードにおける一般的なキャッシングアプリケーションのパフォーマンスが30%向上したとのことです。しかし、このバージョンが真価を発揮するのは、同時クエリ数の多いシステムです。分散クエリにマルチスレッドI/Oを実装することで、検索操作のパフォーマンスが最大4.7倍向上し、レイテンシも大幅に削減され、負荷のかかった大規模クラスタで発生していたボトルネックが解消されます。

メモリ最適化とJSON構造

この新バージョンでは、リソース効率の向上も重要な焦点の一つでした。開発者は、JSON構造に小さな文字列を格納する際のメモリ消費量を大幅に削減し、最大7バイトの要素を持つ配列で37%のメモリ削減を実現しました。さらに、同種の数値配列の格納も最適化されました。データ型は各要素ごとに繰り返されるのではなく、配列全体に対して一度だけ格納されるようになったため、使用する数値データ型に応じて50%から92%のメモリ削減が可能になりました。

新しいアトミックコマンドと移行

データの一貫性を向上させ、開発を簡素化するために、SETコマンドに同時実行制御オプション(IFEQ、IFNE)が追加され、Luaスクリプトを使用せずに条件付き更新が可能になりました。同様に、MSETEXなどのコマンドが導入され、有効期限付きの複数のキーをアトミックに設定できるようになりました。また、XREADGROUPには、アイドル状態および保留中のメッセージを単一の操作で読み取るオプションが追加され、ストリームコンシューマのロジックが簡素化されました。

最後に、クラスタ管理はアトミックスロット移行メカニズム(ASM)によって大幅に改善されました。従来、ノード間でデータを移動するには、キーごとの転送が必要で、処理が遅くエラーが発生しやすいものでした。Redis 8.4では、アトミック所有権転送を実行する前にスロットの内容全体を複製するメカニズムが追加され、クラスタの再バランス時に発生する頻繁なリダイレクトや状態の不整合といった問題が解消されました。

最後に、さらに詳しく知りたい場合は、以下のリンクから詳細をご確認いただけます。

Redisのインストールとアップグレード

これらの新機能を試してみたい場合、Debian または Ubuntu ベースのディストリビューションに Redis をインストールする最も推奨される方法は、公式の package.redis.io リポジトリを使用することです。ディストリビューションのデフォルト リポジトリには通常、古いバージョンが含まれているためです。

まず最初に、必要な前提条件をインストールし、公式のRedis GPGキーを追加する必要があります。

sudo apt-get install lsb-release curl gpg curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg

キーを追加したら、リポジトリをソースリストに追加してシステムを更新する必要があります。

echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list sudo apt-get update

最後に、Redisの最新バージョンをインストールするには、次のコマンドを実行します。

sudo apt-get install redis

Arch Linux、Manjaro、またはEndeavourOSのユーザーの場合、これらはローリングリリースディストリビューションであるため、パッケージは公式リポジトリで間もなく更新される予定です。インストールまたは更新するには、ターミナルを開いて次のコマンドを実行してください。

sudo pacman -S redis

Fedoraの場合、通常はかなり最新のパッケージが維持されているため、以下のコマンドを使用してDNFマネージャー経由でインストールを実行できます。

sudo dnf install redis

このリポジトリからRedisを既にインストールしている場合は、前のコマンドを実行すると、設定を保持したままインスタンスがバージョン8.4に更新されます。インストールが成功したことを確認するには、`redis-server --version` でバージョンを確認してください。


Googleで優先ソースとして追加する