ホームページ  >  記事  >  データベース  >  Redis データベースにはデータ型がありますか?どんなタイプ

Redis データベースにはデータ型がありますか?どんなタイプ

尚
オリジナル
2019-07-01 15:16:342636ブラウズ

Redis データベースにはデータ型がありますか?どんなタイプ

Redis は、string (string)、hash (hash)、list (list)、set (set)、および zset (sorted set: Ordered Set) の 5 つのデータ型をサポートします。

はじめに:

1. 文字列:

String は Redis の最も基本的なタイプであり、Memcached とまったく同じタイプとして理解できます。1 つのキーが 1 つのキーに対応します価値。

文字列型はバイナリ セーフです。これは、redis の文字列には任意のデータを含めることができることを意味します。たとえば、jpg 画像やシリアル化されたオブジェクトなどです。

文字列型は Redis の最も基本的なデータ型で、文字列型の値は最大 512MB まで保存できます。

例:

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

2. ハッシュ

Redis ハッシュは、キーと値 (key=>value) ペアのコレクションです。

Redis ハッシュは文字列型のフィールドと値のマッピング テーブルであり、オブジェクトの保存に特に適しています。

例:

redis 127.0.0.1:6379> DEL runoobredis 127.0.0.1:6379> HMSET myhash field1 "Hello" field2 "World"
"OK"
redis 127.0.0.1:6379> HGET myhash field1
"Hello"
redis 127.0.0.1:6379> HGET myhash field2
"World"

3, list

Redis リストは、挿入順に並べ替えられた文字列の単純なリストです。リストの先頭 (左) または末尾 (右) に要素を追加できます。

例:

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

リストには最大 232 - 1 個の要素を保存できます (4294967295、各リストには 40 億以上を保存できます)。

4. Set (セット)

Redis の Set は、文字列型の順序付けされていないコレクションです。

セットはハッシュ テーブルを通じて実装されるため、追加、削除、検索の複雑さは O(1) です。

sadd コマンド

文字列要素をキーに対応するセット セットに追加します。成功した場合は 1 を返し、要素がすでにセット内にある場合は 0 を返し、キーに対応するセットの場合はエラーを返します。存在しない。

sadd key member

例:

redis 127.0.0.1:6379> DEL runoob
redis 127.0.0.1:6379> sadd runoob redis
(integer) 1
redis 127.0.0.1:6379> sadd runoob mongodb
(integer) 1
redis 127.0.0.1:6379> sadd runoob rabitmq
(integer) 1
redis 127.0.0.1:6379> sadd runoob rabitmq
(integer) 0
redis 127.0.0.1:6379> smembers runoob
1) "redis"
2) "rabitmq"
3) "mongodb"

5. zset (並べ替えられたセット: 順序付けされたセット)

Redis zset も set と同様に文字列型要素のコレクションであり、重複は許可されていないメンバーです。

違いは、各要素が double 型のスコアに関連付けられていることです。 Redis はスコアを使用して、コレクションのメンバーを小さいものから大きいものまで並べ替えます。

zset のメンバーはユニークですが、スコアは繰り返すことができます。

zadd コマンド

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

Instance:

redis 127.0.0.1:6379> DEL runoob
redis 127.0.0.1:6379> zadd runoob 0 redis
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 mongodb
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 rabitmq
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 rabitmq
(integer) 0
redis 127.0.0.1:6379> > ZRANGEBYSCORE runoob 0 1000
1) "mongodb"
2) "rabitmq"
3) "redis"

Redis 関連のその他の知識については、Redis 使用法チュートリアル 列をご覧ください。

以上がRedis データベースにはデータ型がありますか?どんなタイプの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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