Redis のデータベース概念とは何ですか

WBOY
リリース: 2023-05-28 12:13:06
転載
779 人が閲覧しました

1. 16 のデータベースの起源

Redis は、辞書構造のストレージ サーバーです。Redis インスタンスは、データを保存するための複数の辞書を提供します。クライアントは、データを保存する辞書を指定できます。 これは、リレーショナル データベース インスタンスで複数のデータベースを作成する方法 (次の図を参照) に似ているため、各辞書を独立したデータベースとして理解できます。

Redis のデータベース概念とは何ですか

MySQL インスタンスを例に挙げます

Redis はデフォルトで 16 のデータベースをサポートしますが、これは Redis 構成ファイル redis/redis でデータベースを調整することで変更できます。 .conf この値を設定した後、Redis を再起動して構成を完了します。

Redis のデータベース概念とは何ですか

クライアントが Redis との接続を確立すると、データベース No. 0 がデフォルトで選択されますが、SELECT コマンドを使用していつでもデータベースを変更できます。

実際のプロジェクトでは、次の図に示すように、Redis 構成ファイルの形式でデータベースを指定できます。

Redis のデータベース概念とは何ですか

2. Redisの「データベース」の概念を正しく理解する

Redis はカスタム データベース名をサポートしていないため、各データベースには番号が付けられます。 開発者は、保存されたデータとデータベースの間の対応関係を記録する必要があります。 さらに、Redis はデータベースごとに異なるアクセス パスワードの設定をサポートしていないため、クライアントはすべてのデータベースにアクセスできるか、すべてのデータベースにアクセス権限がないかのいずれかになります。 ただし、Redis の「データベース」概念を正しく理解するには、次のコマンドについて言及する必要があります。

Redis のデータベース概念とは何ですか

このコマンドは、インスタンス内のすべてのデータベース データをクリアできます。これは、Redis の「データベース」概念とは異なります。私たちが話しているのは、よく知られているリレーショナル データベースとは異なります。 リレーショナル データベースの複数のライブラリは、さまざまなアプリケーションのデータを保存するためによく使用されますが、インスタンス内のすべてのライブラリ データを同時にクリアする方法はありません。 したがって、Redis の場合、これらのデータベースは名前空間に似ており、さまざまなアプリケーションからのデータを保存するのには適していません。 たとえば、アプリケーションの本番環境ではデータベース 0 にデータを格納し、テスト環境ではデータベース 1 にデータを格納することができますが、データベース 0 にアプリケーションのデータを格納するのは適切ではありません。アプリケーション A のデータを格納し、アプリケーション B のデータを格納するデータベース No. 1 は異なります。アプリケーションはデータを格納するために異なる Redis インスタンスを使用する必要があります。 Redis は非常に軽量で、空の Redis インスタンスは約 1M しか消費しないため、複数の Redis インスタンスが余分なメモリを大量に消費することを心配する必要はありません。

3. 1 つのインスタンスはクラスター内の複数の DB をサポートしますか?

上記はすべて単一の Redis に基づいていることに注意してください。 クラスターの場合、Redis クラスター モードには db0 が 1 つしかないため、select コマンドを使用した db の切り替えはサポートされません。 クラスターとスタンドアロン Reid の違いを詳しく説明するために、興味のある友人は関連情報を調べて理解を深めてください。ただし、ここでは説明しません。

  • キー バッチ操作のサポートは制限されています。たとえば、mget と mset はスロット内に存在する必要があります。

  • キー トランザクションと Lua のサポートは制限されています。操作のキーはノードにある必要があります

  • キーはデータ パーティションの最小粒度です: Bigkey パーティションはサポートされていません

  • サポートされていません複数のデータベースをサポートします: クラスター モードでは db0 が 1 つだけあります

  • コピーは 1 つのレベルのみをサポートします: ツリー コピー構造はサポートされません

以上がRedis のデータベース概念とは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!