Redis
 Computer >> コンピューター >  >> プログラミング >> Redis

Redis 7.0:最初のリリース候補がここにあります!

新しいバージョンは、Redisの一部の機能への進化的なステップであり、新しい機能を追加し、より優れたリソース使用率でより多くの生のパワーを提供します。

本日、Redis v7の最初のリリース候補(RC1)が利用可能になったことを誇らしげに発表します。バージョン7.0は、昨年の大部分で開発が進められていたプロジェクトにとって重要なマイルストーンです。このメジャーリリースは、機能と内部の面でより根本的な変更を加える機会です。通常のリリースサイクルに従うことを期待しているため、Redis 7.0が一般提供される前に、それぞれ約3週間間隔でさらに2つの候補が計画されています。

Redis 7.0は、Functions、ACL v2、シャーディングされたPub/Subなどの多くの新機能を追加します。これらについては、この投稿と次の一連の投稿で説明します。さらに、このバージョンに投入された多くの作業は、ほとんどのユーザーには見えにくいRedisの部分の改善と最適化に焦点を合わせていました。この取り組みは、実質的にすべてのRedisサブシステムにまたがり、永続性、レプリケーション、ネットワーク、メモリ、およびコンピューティングの使用量に影響を及ぼしました。その結果、これまでになく高速で安定した、より経済的なRedisが実現します。

新しいRedisバージョンは、新しいデータ構造を予告したり、その運用面を新しい領域に押し上げたりすることはありません。代わりに、プロジェクトを内省的に検討し、既存の設計の前提条件のいくつかに挑戦し、インフラストラクチャの改善に向けてより大胆な措置を講じ、コミュニティのニーズとユースケースを内部化することが重要です。

Redis関数は上記の例です。関数は、Redis Programmabilityのより広いトピックに属します。これは、Redisをプログラムする機能を意味します。 「Redisをプログラムする」とは、主にデータの局所性のために、サーバーにユーザーロジックを実行させることを意味します。バージョン2.6でLuaスクリプトが導入されて以来、プログラマビリティはRedisの一部となっています(詳細については、評価スクリプトの概要を参照してください)。

それ以来、RedisユーザーによるLuaスクリプトの採用が増えています。スクリプトは、コアのRedis操作と制御構造からサーバー側のワークフローを構成するための効果的で簡単な方法を提供します。これらは、アプリケーションのネイティブコードからの基礎となるデータ構造の抽象化として機能します。アプリケーションのLuaスクリプトのセットは、その論理操作を実装します(たとえば、「ユーザーの追加」または「注文」スクリプト)。

スクリプトは、長い間使用されてきた人気のあるRedis機能であるため、多くのフィードバックを収集しました。要件のほとんどが3つのバケットに分類されることがわかりました。

  1. 独立 :スクリプトはアプリケーションの一部です。それらはその内部を反映しているため、実装と緊密に結合されています。アプリケーションは、スクリプトのソースコードを埋め込み、実行時にロードする必要があります。この絡み合いにより、開発からテスト、導入に至るまで、アプリケーションのライフサイクルのすべての段階で複雑さが増します。
  1. 実行エンジン :Redisでスクリプトを作成するための言語はLuaのみです。さらに、無数の技術的な理由により、Redisはこれまで同じLua5.1を使用してきました。多くの人が新しいバージョンを望んでいます。ほとんどの人はまったく別の言語を望んでいます。
  1. 堅牢性 :RedisでのLuaスクリプトの設計と実装は、他のソフトウェアと同様に、仮定を立てて制限があります。場合によっては、これにより、メカニズムの拡張が不可能ではないにしても、非常に複雑になります。基盤がないため、潜在的に価値のある機能(イベント処理やクラスタースクリプトなど)を追加できません。

これでRedisFunctionsに戻ります。 Redis 7.0では、関数はアプリケーションから完全に独立しています。結果として、関数は一流のデータベース市民である実行可能なソフトウェア成果物です。 Redisサーバーは、ユーザーデータと同じように機能を管理するため、可用性のために永続化および複製されます。データベースへの関数の読み込みは、実行時のアプリケーションの責任ではなくなり、スケジュールと管理が可能な管理メンテナンスタスクになります。

関数をサーバーのコンテキストに常駐させると、アプリケーションは関数の実装から解放されます。代わりに、アプリケーションは組み込みロジックへのAPIとして関数シグネチャに依存しており、実行中のRedisコマンドとタイプを完全に認識していません。これにより、さまざまなアプリケーションで機能を共有できます。また、アプリケーションに強制的に依存することなく、機能の開発、テスト、および保守を行うことができます。

Redis関数の設計はエンジンに依存しません。 Redis7.0はLua5.1で記述された関数のみをサポートしますが、内部の実装は他の実行エンジンとフックする準備がほぼ整っています。将来的には、より多くの種類の実行エンジンのサポートを追加する予定です。

関数が行うもう1つのパラダイムシフトは、ライブラリの使用です。ライブラリは、1つ以上の登録済み関数と追加の内部関数で構成できます。登録された関数は、ライブラリのエントリポイントとアプリケーションの契約APIです。一方、内部関数は、コードの再利用性のためにライブラリ内でネイティブに呼び出すことができます。

Redis 7.0での機能の導入は、Redisのプログラマビリティを次の段階に進めるための大きな一歩になると期待しています。アプリケーションですでにLuaスクリプトを使用している場合、関数の使用への移行はオプションで簡単です(詳細については、Redis関数を参照してください)。さらに優れているのは、今後、関数がRedisのプログラマビリティを改善および革新するためのより良い基盤を提供することです。


  1. Windows 11 2022 Update が登場!

    Microsoft は、1 年前に Windows 11 で Windows の視覚的な再設計に関する最初の戦略を発表し、ユーザーからの反応は予想通り複雑でした。同社は、多くのユーザーが手付かずのままにしていると感じていたいくつかの粗いエッジを滑らかにしようとする次のアップデートで戻ってきました. 本日より、Windows 11 2022 Update (22H2) が 190 か国以上で展開され、アクセシビリティ機能、スナップ レイアウト、フォーカス セッション、ファイル エクスプローラー、自動 HDR、Xbox アプリ、Microsoft Store、Microsoft Defende

  2. Windows 11 – Windows の新時代の最初のバージョンがついに登場

    はい!マイクロソフトの CEO 兼会長のサティア ナデラが確認した Windows 11 がついに現実のものに この記事は、Windows 11 のライブ イベントを読むのに最適な場所です (すべての主要なポイントをカバーするのに 10 分 ) 見逃した場合。見たい方は、以下のリンクから 45 分間のイベントの再放送をご覧ください。 Windows 11 起動イベント リンク それを読みたい人には、2 つの選択肢があります Windows 11 の新機能の概要 – Panos Panay による紹介 Windows 11 がついに登場! Centre StartClo