Latest web development tutorials

Redisのデータ型

文字列(文字列)、ハッシュ(ハッシュ)、リスト(リスト)、(セット)を設定し、ZSET(ソートセット::順序集合)Redisのは、5つのデータ型をサポートしています。


文字列(String)を

Redisの文字列は、最も基本的なタイプである、あなたがmemcachedの、値に対応するキーとまったく同じタイプを理解することができます。

文字列型はバイナリセーフです。 文字列Redisの意味は、任意のデータを含めることができます。 このようなJPG画像やオブジェクトのシーケンスとして。

Redisの文字列型は、基本データ型であり、キーは、最大512メガバイトを記憶することができます。

redis 127.0.0.1:6379> SET name "w3big"
OK
redis 127.0.0.1:6379> GET name
"w3big"

例では、SETのRedisのを使用して、コマンドをGETの上。 キーは、対応する値のw3big名です

注:キーは最大512メガバイトを保存することができます。


ハッシュ(ハッシュ)

Redisのハッシュはキーと値のペアのコレクションです。

Redisのハッシュは、ハッシュオブジェクトを格納するために特に適しており、フィールドの文字列型と値のマッピングテーブルです。

127.0.0.1:6379> HMSET user:1 username w3big password w3big points 200
OK
127.0.0.1:6379> HGETALL user:1
1) "username"
2) "w3big"
3) "password"
4) "w3big"
5) "points"
6) "200"

ユーザスクリプトが含まれているユーザーオブジェクトのハッシュに格納されている上記のデータタイプの例。 キーとして1:例として、我々はRedisの HMSET、HGETALLコマンド、ユーザーを使用します。

各ハッシュは、キーと値のペア232 - 1(4000000000)を保存することができます。


一覧(リスト)

Redisのリストは、挿入順にソート文字列の単純なリストです。 あなたは、リストの先頭(左)または背面(右)に要素を追加することができます。

redis 127.0.0.1:6379> lpush w3big redis
(integer) 1
redis 127.0.0.1:6379> lpush w3big mongodb
(integer) 2
redis 127.0.0.1:6379> lpush w3big rabitmq
(integer) 3
redis 127.0.0.1:6379> lrange w3big 0 10
1) "rabitmq"
2) "mongodb"
3) "redis"
redis 127.0.0.1:6379>

一覧は232--1要素(4294967295保存することができ、各リストを超える40億)まで保存することができます。


セット(コレクション)

Redisのは、Setの文字列型の順不同のコレクションです。

達成するために、ハッシュテーブルによって設定されているので、追加、削除、複雑さはO(1)です見つけます。

サッドコマンド

文字列要素、キー対応するセットコレクション、成功リターン1エラーが存在しないセットに対応する既にコレクション内の要素は、キーが返された場合、戻り0に追加します。

sadd key member

redis 127.0.0.1:6379> sadd w3big redis
(integer) 1
redis 127.0.0.1:6379> sadd w3big mongodb
(integer) 1
redis 127.0.0.1:6379> sadd w3big rabitmq
(integer) 1
redis 127.0.0.1:6379> sadd w3big rabitmq
(integer) 0
redis 127.0.0.1:6379> smembers w3big

1) "rabitmq"
2) "mongodb"
3) "redis"

注:上記の例のrabitmqは二回追加しましたが、第2挿入要素内の要素の固有のセットに基づいて無視されます。

(各セットには4000万人以上のメンバーを格納することができます4294967295)232--1メンバーの最大数を設定します。


ZSET(ソートセット:順序付きコレクション)

RedisのはZSETとstring型の要素のコレクションとして設定され、重複したメンバーを許可していません。

違いは、ダブルスコアの要素の各タイプに関連付けられていることです。 これは、コレクション・メンバーの大量注文に小さいためRedisのスコアを介して行われます。

ZSET部材は一意であるが、得点(スコア)は繰り返すことができます。

zaddコマンド

コレクションに要素を追加し、要素がコレクション内に存在する対応するスコアを更新

zadd key score member 

redis 127.0.0.1:6379> zadd w3big 0 redis
(integer) 1
redis 127.0.0.1:6379> zadd w3big 0 mongodb
(integer) 1
redis 127.0.0.1:6379> zadd w3big 0 rabitmq
(integer) 1
redis 127.0.0.1:6379> zadd w3big 0 rabitmq
(integer) 0
redis 127.0.0.1:6379> ZRANGEBYSCORE w3big 0 1000

1) "redis"
2) "mongodb"
3) "rabitmq"