この記事では、Redis の 5 つの基本タイプをコマンドと応用シナリオを通して紹介します。コマンドと実践方法はたくさんあります。皆さんのお役に立てれば幸いです。
redis 従来の 5 つのビッグ データ タイプのアプリケーション
redis 従来の 5 つのビッグ データ タイプの実装
Redis の概要:
Redis は、データベース、キャッシュ、メッセージング ミドルウェアとして使用できるオープン ソース (BSD ライセンス) のインメモリ データ構造ストレージ システムです。範囲クエリ、ビットマップ、ハイパーログログ、および地理空間 (地理空間) インデックス半径クエリを使用して、文字列、ハッシュ、リスト、セット、ソートされたセットなどの多くのタイプのデータ構造をサポートします。 Redis にはレプリケーション、LUA スクリプト、LRU エビクション、トランザクション、さまざまなレベルのディスク永続性が組み込まれており、Redis Sentinel と自動パーティショニング (クラスター) を通じて高可用性を実現します。 [関連する推奨事項: Redis ビデオ チュートリアル ]
redis コマンド クエリ: http://www.redis.cn/commands.html
注: redis コマンドはサイズではありません書き込みは区別され、キーは大文字と小文字が区別されます。
クエリ コマンド ヘルプ:
help @type noun
例:
最も一般的に使用される## セットkey vuue
getkey
複数のキー値を同時に設定/取得MSET キー値 [key value .. .]
MGET key [key ,,,]
値を増減します値を増加させます数値増分キー
キー増分によって指定された整数を増加します
数値減分キーを減分します
指定された整数を減分キーによって減分します
文字長の取得STRLEN キー
##分散ロック##setnx キーの値set key value [EX 秒] [PX ミリ秒] [NX|XX]
EX: キーは何秒後に期限切れになりますか?
- NX: キーが存在しない場合、キーが作成されます。効果は setnx
- XX: と同等です。キーが存在する場合は、キーを上書きします
アプリケーション シナリオ
製品番号と順序番号は、INCR コマンドを使用して生成されます。
はい、記事と同じです。- 読み取りカウント: 残りのアドレスをクリックしている限り、incr キー コマンドを直接使用して追加します。数字の 1 を入力すると、数字の記録が完了します。
Map
## HSET キー フィールド値一度に 1 つのフィールド値を取得
HGET キー フィールド
一度に複数のフィールド値を設定
HMSET キー フィールド値 [フィールド値 ...]
複数のフィールド値を一度に取得
HMGET キー フィールド[フィールド ...]
すべてのフィールド値を取得
#hgetall key#キー内のすべての数量を取得hlen
キーの削除#hdel
##コマンドのデモ
アプリケーション シナリオ
ショッピング カートの初期の頃、現在中小規模の工場は次のことができます。 を使用して新しい製品を追加します --> hset shopcar:uid1024 334488 1
新しい製品を追加します --> hset shopcar:uid2014 334477 1製品数量を追加します- -> hincrby shopcar:uid1024 334477 1 product Total --> hlen shopcar:uid1024
すべて選択 --> hgetall shopcar:uid1024
list リストの種類
リストの左側に要素を追加します
lpush キーの値 [値 ...]
#リストの右側に要素を追加します
rpush key value [value ...]
リストを表示
lrange key start stop
要素を取得リスト番号
llenキー
コマンドの使用法
アプリケーションシナリオ
WeChat記事購読パブリックアカウント
1、[xx宝物]と[xx新聞]がそれぞれ記事11と22を公開
##2. 著者は両方をフォローしています。新しい記事が公開される限り、その記事は私のリストにプッシュされますlpush likearticle: uid1024 11 223. author 自分のサブスクリプション アカウントのすべての記事はページングに似ています。次の 0 ~ 10 は、一度に 10 個のアイテムを表示することを意味します lrange likearticle:uid1024 0 10set 非重複リスト タイプ
要素の追加
sadd key member [member ...]要素の削除
srem key member [member ...]コレクションのすべての要素を取得します
smembers keyコレクション内に要素があるかを判定
sismember key memberコレクション内の要素数を取得
scard keyコレクションから要素をランダムにポップアップします。要素は削除されません
srandmember key [番号]コレクションから要素をランダムにポップアップし、要素を 1 つ削除します
spop key [数値]操作を設定します
- ##セット A - B
- の差分演算 A に属するが B に属さない要素から構成されるセット
#A に属し、B にも属する要素。
simter key [key ...]
セットの結合操作 A v B
A または B
結合に属する要素の結合セットkey [key ...]
##WeChat 宝くじミニ プログラム1. ユーザー ID、すぐに参加、sadd キー ユーザー ID
2. 参加者数を表示 現在 67231 人が参加しています scard key
3. 抽選 (任意選択)セットから N 名が当選)
WeChat モーメントでの「いいね!」
1. いいねを追加;sadd pub:msgid like user id1 like user id2
2. Like をキャンセル; srem pub:msgid like user id
3. すべてのポイントを表示 メンバーにいいねをしたユーザー pub:msgid
一緒にフォローしている人
#sadd s1 1 1 2 3 4
sadd s2 2 3 6 8
#私がフォローしている人も彼をフォローしています (私たちは皆同じ趣味を持っています)
私は Yu をフォローしていますファーウェイの成東氏、余成東氏も張昭東氏に続き、余氏と私は同じ趣味を持っています
sadd s1 1 2 3 4 5
sadd s2 3 4 5 6 7
sismember s1 3
sismember s2 3
QQ 知り合いかもしれない人を推薦します
sadd s1 1 2 3 4 5
sadd s2 3 4 5 6 7
// 共通の友人
sinter s1 s2
// 差分セット
sdiff s1 s2
sdiff s2 s1
zset 順序付きセット
一般的なコマンド
##1. 要素とその要素のスコアを順序付きセットに追加します2. 要素を追加します#ZADD キー スコア メンバー [スコア メンバー ...]##3. strat から stop in までのインデックスを持つすべての要素を返します要素スコアの到着順
zrange key start stop [WITHSORES]
4. 要素のスコアを取得- zscoreキー メンバー [メンバー ...]
- zrem キー メンバー [メンバー ...]
- #zrangebyscore key min max [ WITHSCORES] [LIMIT offset count]
- zincrby キー インクリメント メンバー
- 9 の要素数のセットを取得します。指定したスコア範囲内の要素数を取得します
- 10. ランキング範囲に従って要素を削除します
- zremrangebyrank key start stop
11. 要素のランキングの取得
zrank key member
- Zrevrank の主要メンバー (大規模から小規模まで)
アプリケーション シナリオ
1. より多くの製品の販売 並べ替えて表示products
アイデア: 製品販売ランキング リスト (ソートされたセット) を定義します。キーはグッズ:sellsort、スコアは製品販売数量です。
製品番号 1001 の販売数量は 9、製品番号 1002 の販売数量は 15 | zadd Goods:sellsort 9 1001 15 1002
顧客が購入しましたさらに 2 個のアイテム 製品 1001、製品番号は 1001 です 大きく増加します 2 | Zincrby Goods:sellsort 2 10001
売上高で上位 10 製品を検索します zrange Goods:sellsort 0 10 withscores
2. Douyin hot search
1. 動画をクリックしてください
ZINCRBY hotavi:20220203 1 八百
ZINCRBY hotavi :20220203 15 Eight Hundred 2 Hua Mulan
2. その日の上位 10 件を表示
zrevrange hotavi:20220203 0 9 withscores
Forプログラミング関連の知識については、プログラミング入門をご覧ください。 !
以上がコマンドとアプリケーション シナリオを通じて、Redis の 5 つの基本タイプを理解できるようにガイドします。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Redis是现在最热门的key-value数据库,Redis的最大特点是key-value存储所带来的简单和高性能;相较于MongoDB和Redis,晚一年发布的ES可能知名度要低一些,ES的特点是搜索,ES是围绕搜索设计的。

本篇文章给大家带来了关于redis的相关知识,其中主要介绍了关于redis的一些优势和特点,Redis 是一个开源的使用ANSI C语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式存储数据库,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于redis的相关知识,其中主要介绍了Redis Cluster集群收缩主从节点的相关问题,包括了Cluster集群收缩概念、将6390主节点从集群中收缩、验证数据迁移过程是否导致数据异常等,希望对大家有帮助。

本篇文章给大家带来了关于redis的相关知识,其中主要介绍了Redis实现排行榜及相同积分按时间排序,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,希望对大家有帮助。

本篇文章给大家带来了关于redis的相关知识,其中主要介绍了关于原子操作中命令原子性的相关问题,包括了处理并发的方案、编程模型、多IO线程以及单命令的相关内容,下面一起看一下,希望对大家有帮助。

本篇文章给大家带来了关于redis的相关知识,其中主要介绍了bitmap问题,Redis 为我们提供了位图这一数据结构,位图数据结构其实并不是一个全新的玩意,我们可以简单的认为就是个数组,只是里面的内容只能为0或1而已,希望对大家有帮助。

本篇文章给大家带来了关于redis的相关知识,其中主要介绍了Redis实现排行榜及相同积分按时间排序,本文通过实例代码给大家介绍的非常详细,下面一起来看一下,希望对大家有帮助。

redis error就是redis数据库和其组合使用的部件出现错误,这个出现的错误有很多种,例如Redis被配置为保存数据库快照,但它不能持久化到硬盘,用来修改集合数据的命令不能用。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 中国語版
中国語版、とても使いやすい

WebStorm Mac版
便利なJavaScript開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

ホットトピック



