ホームページ  >  記事  >  データベース  >  Redis の set と hset の違いと使用シナリオ

Redis の set と hset の違いと使用シナリオ

藏色散人
藏色散人転載
2020-08-12 13:28:146317ブラウズ

次のコラム redis チュートリアル では、redis における set と hset の違いと使用シナリオを紹介します。友人の役に立てば幸いです。必要としている!

Redis の set と hset の違いと使用シナリオ

redisデータを Redis に保存するときに hset を使用する場合データ保存時の設定との違いは?

set は、データを保存するための通常のキーと値のメソッドであり、有効期限を設定できます。時間計算量は O(1) で、もう 1 つのセットを実行すると、redis にはもう 1 つのキーが存在し、hset はハッシュ テーブルの形式で保存されます。タイムアウトは大きなキーにのみ設定でき、単一のフィールドには設定できません。Baidu の多くの記事では O(1) であると書かれていますが、以下に示した参考記事では、時間計算量は実際には O(1) であると書かれています。 . (N) N 値は 1 つのハッシュ上のフィールドの数であるため、1 つのハッシュは多数のフィールドを格納するのには適していません。フィールドが多すぎると、より多くの CPU を消費します。ただし、それらをハッシュ テーブルはメモリを節約します。

したがって、実際の使用では、単一の大きなテキストの非構造化データを格納するために set を使用する必要があります。hset は構造化データを格納し、ハッシュはデータの一部を格納し、フィールドはデータの一部の属性を格納し、値属性に対応する値です。

たとえば、データベースには、id、名前、年齢、性別の 4 つの属性を含むテーブル user があり、400 万個のデータが含まれています。

id、名前、年齢、性別

1, 1, チャン・サン, 16, 1

2, 2, リー・シー, 22, 1

3, 3, ワン・ウー, 28, 0

4, 4, Zhao Liu, 32, 1

...

テーブル全体を Redis にキャッシュしたい場合は、ハッシュを使用します。1 つのデータには 1 つのハッシュがあります。ハッシュであり、各ハッシュには 4 つのフィールドが含まれます。

hset user_1 id 1 名前 Zhang San 年齢 16 性別 1

hset user_2 id 2 名前 Li Si 年齢 16 性別 1

...

This way ストレージでは、ユーザーの特定の属性値が変更された場合、個別に変更することもできます。

たとえば、Zhang San の年齢を 30 歳に変更する場合、次のコマンドを使用できます: hset user_1 age 30

#たとえば、キャッシュしたい場合は、アプリケーションのホームページ全体の HTML または、特定の製品の詳細な紹介 (一般的に、製品の詳細な紹介は、makdown 構文のリッチ テキスト情報、または HTML 形式のリッチ テキスト情報です)。

## または特定のホット データの場合、set を使用してデータの大部分を保存できます。

以上がRedis の set と hset の違いと使用シナリオの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。