Redisの共通データは、データ構造の種類に対応します

Redisのデータ・タイプは主に、データ構造の種々によって達成される時間と空間の理由で最速の配列インデックスによってアクセスされる少量のデータが、メモリの最小量は、[、圧縮リストはバリアント配列が可能です異なるデータサイズが格納されています ]

配列は連続したメモリ空間を占有する必要があるので、大量のデータを使用して、リストを使用して、順番にする必要があるとき時に組み合わせた彼らが必要とするスピードと、配列を確保するために、ハッシュテーブルを持つことになりますので。

1、文字列

図2に示すように、リスト(リスト):支援データのセットを格納する一つで、このデータ型は、2つの方法に対応する、圧縮されたリスト、他方は双方向円形のリンクリスト

パッキングリスト:圧縮リストを使用した場合、データセットは比較的小さいです

ストレージ構造Redisのは、配列と同様の設計を所有する連続したメモリ空間に格納されたデータによって、それは、異なるデータサイズ記憶を可能にします

条件:

  • リストに格納された個人データは、64バイト未満であります
  • データの数が512未満である一覧表示します

利点:

  • 保存メモリ
  • これは、データストレージの種類をサポートしています
  • 連続したメモリ空間に格納されたデータは、効率を読み取ることは非常に高く、キーによりデータ値の種類のリストを取得します。
双方向循環リスト :大量のデータ、双方向循環リンクリストの実装のリストを使用して
 
図3に示すように、辞書(ハッシュ):一連の記憶 データを 鍵2つの部分を含む、各データペア。

パッキングリスト:圧縮リストを使用した場合、データセットは比較的小さいです

条件:

  • リスト保存ボタン値とサイズが64バイト未満です
  • 一覧キーと値のペア 512未満の数

ハッシュテーブル:データのより大きな量は、上記条件を満たさない、ハッシュテーブルを使用して実装。

Redisのは、このMurmurHash2を使用し、高速、良いランダム性のハッシュ関数としてハッシュアルゴリズムのハッシュ衝突は、Redisの使用listメソッドを解決するために。

Redisのは、ハッシュテーブル、フェルトの動的拡張をサポートします。

図4に示すように、コレクション(集合):一方が基づいている規則配列、一方が基づいているハッシュテーブル

注文した配列:

条件:

  • 格納されたデータは整数であり、
  • これ以上512以下に格納されたデータ要素の数

ハッシュテーブル:

5は、(ソートセット)順序集合します:

データのセットを格納し、各データのスコアが設けられているため。サイズをスコア付けすることによって、我々は、データ取得の迅速スコアに応じて、スコアの範囲をサポートするために、ジャンプテーブルそのようなデータ構造にデータを整理します。

パッキングリスト:圧縮リストを使用した場合、データセットは比較的小さいです 

条件:

  • 格納されたデータは、64バイト未満であります
  • 要素の数が128未満であります

テーブルを移動:

 

おすすめ

転載: www.cnblogs.com/wjh123/p/11439705.html