9月16日、ValkeyはValkey 8.0をリリースした。Valkeyは、Redisのオープンソースコードをフォークしたものであり、Linux Foundationが今年初めに開始し、Amazon/AWS、Google Cloud、Oracleなどの企業からの支援を受けている。
Valkeyは、ライセンス変更後のRedisに代わる主要なオープンソースの選択肢として、さまざまなベンダーからの支援を増やしつつある。このリリースの主な焦点は、パフォーマンスの向上であり、1秒あたり100万リクエストを処理する能力を目指している。
Valkey 8.0の主な特徴
- パフォーマンスの最適化: Valkey 8.0の開発では、パフォーマンス向上が大きな目標であり、1秒あたり100万リクエストの処理を目指している。これには、CPUの潜在能力を引き出すためのさまざまな最適化が含まれている。
- 速度の向上: Redisの従来のオープンソースコードに対して、速度は3倍に向上している。
- メモリ効率の改善: メモリ効率も大幅に向上し、パフォーマンスと同様に多くの最適化が施されている。
- 特定の最適化: SUNIONやSDIFFの一時セットオブジェクトの処理を最適化することで、27~41%の性能向上が実現されている。
- マルチスレッドの性能向上: メモリプリフェッチングを利用して、マルチスレッドでのパフォーマンスが向上している。
- 新機能: 新しいクラスタ機能、デュアルチャネルの効率的なフルシンクレプリケーション、非同期I/Oスレッド処理、CPUキャッシュ効率の最適化など、多くの新機能が追加されている。
Redisがなぜフォークされたか?
もともと、Redisはオープンソースソフトウェアとして広く利用されており、そのコア部分は引き続きBSDライセンスの下で提供されている。しかし、Redis Labsは商業的な理由から、いくつかの重要なモジュール(例: Redis Modulesと呼ばれるもの)に関して、新しいライセンスであるCommons Clauseを適用した。このライセンスは、Redisのコアはオープンソースのままにする一方で、Redis Labsの商業製品と競合する可能性のある企業によるモジュールの商業利用を制限するものであった。
具体的には、Commons Clauseは、誰でもソースコードを利用し、変更し、再配布することを許可するが、それを直接収益化(商業的な提供や有償サービスでの利用)することを禁じている。このライセンス変更により、商業的にRedisを利用している企業が、Redis Labsの有償版と競合することを防ぐ目的があった。
このライセンス変更は一部のユーザーや開発者の間で批判を受け、オープンソースとしてのRedisの自由度が制限されたとの懸念が広がった。これにより、Redisのオープンソースコミュニティ内で代替プロジェクトが立ち上がり、その一つがValkeyのようなRedisのフォークプロジェクトである。Valkeyは、Redisのライセンス変更に反発する形で、完全なオープンソースの代替として成長してきた。
Valkey 8.0は、オープンソースRedisのさらなる進化を遂げるためのリリースであり、Redis OSS 7.2.4との完全な互換性を保っている。
詳細は[Valkey 8.0 Released As Speedy Redis Fork Achieving One Million RPS]]を参照していただきたい。