ホームページ  >  記事  >  データベース  >  Redis はどのようなデータ構造をサポートしていますか?

Redis はどのようなデータ構造をサポートしていますか?

anonymity
anonymityオリジナル
2019-06-05 16:48:423144ブラウズ

Redis は、高性能のキー/値データベースです。 Redis の出現により、memcached などのキー/値ストレージの欠点が大幅に補われ、状況によってはリレーショナル データベースに対して非常に優れた補完的な役割を果たすことができます。 Java、C/C、C#、PHP、JavaScript、Perl、Object-C、Python、Ruby、Erlang およびその他のクライアントを提供しており、非常に使いやすいです。

redis の台頭は偶然ではありません。それには独自の新しい機能が含まれています。Memcached とは異なり、データはメモリにのみ保存できます。ダウンタイムを回避するための永続化メカニズムとデータ同期が提供されます。アバランシェの問題マシンの背後にあるのは、サーバーに問題が発生すると、メモリに保持されていた元のデータがすべて失われ、データをメモリ内で再編成する必要があるためです。このとき、Memcached は非常に遅いプロセスを実行します。

Redis はどのようなデータ構造をサポートしていますか?

Redis の永続性のサポートは、その武器の 1 つにすぎません。さらに、Redis は、最大の効率を達成するために、さまざまなニーズに対応する最大 5 つのデータ ストレージ方法も提供します。必要に応じて、これらのデータ型を以下に紹介します。

文字列

文字列は最も単純な型で、Memcached と同じものとして理解できます。 まったく同じ型です。 key は 1 つの値に対応し、サポートされる操作は Memcached の操作と同様です。しかし、それははるかに機能が豊富です。

2 リスト (二重リンク リスト)

リストはリンク リスト構造であり、その主な機能はプッシュ、ポップ、範囲内のすべての値の取得などです。 。双方向である理由は、リンクされたリストの左側と右側をそれぞれ操作できるためです。

三dict(ハッシュ テーブル)

Set は集合です。の数学に似ています。コレクションの概念は似ています。コレクションに対する操作には、要素の追加と削除、複数のコレクションに対する交差演算と差分演算の実行が含まれます。操作では、キーはセットの名前として理解されます

4 つの zset (ソート セット)

zset は set のアップグレード版であり、シーケンスを追加します。この属性は、set Attribute に基づいて要素の追加および変更時に指定することができ、指定するたびに、zset は新しい値に従って順序を自動的に再調整します。指定したキーの値に対してソートの重みを設定できます。ランキング モジュールを使用します。詳細

5 ハッシュ タイプ

Redis は、複数の属性のデータを保存できます。もちろん、これらの属性を json 形式で保存し、文字列型として直接操作することもできますが、これはパフォーマンスに影響するため、redis はハッシュ型を提案します。

以上がRedis はどのようなデータ構造をサポートしていますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。