Redis組件介紹(二)

来源:https://www.cnblogs.com/cjybigdatablog/p/18387456
-Advertisement-
Play Games

寫在前面 今天我們繼續學習 Redis。 Redis 常用數據類型 在 Redis 中,每個存儲的鍵值對中,鍵是 String 類型,值可以是不同的數據類型。Redis 的索引是含頭含尾的。 String 記憶體模型 常用指令 設置值 SET key value: 設置一個 key/value。 MS ...


寫在前面

今天我們繼續學習 Redis。

Redis 常用數據類型

在 Redis 中,每個存儲的鍵值對中,鍵是 String 類型,值可以是不同的數據類型。Redis 的索引是含頭含尾的。

String

記憶體模型

常用指令

  • 設置值

    • SET key value: 設置一個 key/value。
    • MSET key1 value1 [key2 value2 ...]: 一次設置多個 key/value。
    • SETEX key seconds value: 設置一個 key 的有效期(秒),可以設置不存在的鍵。
    • PSETEX key milliseconds value: 設置一個 key 的有效期(毫秒)。
    • SETNX key value: 如果 key 不存在則設置值。
    • MSETNX key1 value1 [key2 value2 ...]: 同時設置多個 key,只有當所有 key 不存在時才會保存。
  • 獲取值

    • GET key: 根據 key 獲取對應的 value。
    • MGET key1 [key2 ...]: 一次獲取多個 key 的 value。
    • GETSET key value: 獲取原始 key 的值,同時設置新值。
    • GETRANGE key start end: 截取 value 的內容,從 start 到 end(含頭含尾)。
  • 其他操作

    • STRLEN key: 獲取對應 key 存儲 value 的長度。
    • APPEND key value: 為對應 key 的 value 追加內容,返回修改後的總字元串長度。
    • DECR key: 數值類型的 -1 操作。
    • DECRBY key decrement: 根據提供的數據進行減法操作。
    • INCR key: 數值類型的 +1 操作。
    • INCRBY key increment: 根據提供的數據進行加法操作。
    • INCRBYFLOAT key increment: 根據提供的數據加入浮點數(不進行四捨五入)。

List

記憶體模型

常用指令

  • 操作列表

    • LPUSH key value [value ...]: 將某個值加入到列表的頭部。如果列表不存在,會創建新列表。
    • LPUSHX key value: 在列表存在時,將值加入到列表的頭部。
    • RPUSH key value [value ...]: 將某個值加入到列表的末尾。
    • RPUSHX key value: 在列表存在時,將值加入到列表的末尾。
  • 獲取和刪除

    • LPOP key: 從列表左邊返回並移除第一個元素。
    • RPOP key: 從列表右邊返回並移除第一個元素。
    • LRANGE key start stop: 獲取指定範圍內的元素。
    • LLEN key: 獲取列表元素個數。
    • LSET key index value: 設置指定索引的值。
    • LINDEX key index: 獲取指定索引位置的元素。
    • LREM key count value: 刪除列表中指定的元素。
    • LTRIM key start stop: 保留列表中特定區間內的元素,刪除其他元素。
    • LINSERT key BEFORE|AFTER pivot value: 在指定元素之前或之後插入新元素。

Set

記憶體模型

Set 是無序且不可重覆的。

常用指令

  • 操作集合

    • SADD key member [member ...]: 向集合添加元素。
    • SMEMBERS key: 顯示集合中所有元素。
    • SCARD key: 返回集合中元素的個數。
    • SPOP key: 隨機返回並刪除一個元素。
    • SMOVE source destination member: 從一個集合移動元素到另一個集合(必須是同種類型)。
    • SREM key member [member ...]: 從集合中刪除指定元素。
    • SISMEMBER key member: 判斷集合中是否包含某個元素。
    • SRANDMEMBER key [count]: 隨機返回集合中的元素。
  • 集合運算

    • SDIFF key [key ...]: 返回第一個集合中不在其他集合中的元素。
    • SINTER key [key ...]: 求集合的交集。
    • SUNION key [key ...]: 求集合的並集。

Sorted Set (ZSet)

記憶體模型

Sorted Set 是可排序的集合,元素不可重覆,並且具有分數。

常用指令

  • 操作有序集合
    • ZADD key score member [score member ...]: 添加元素到有序集合。
    • ZCARD key: 返回集合的元素個數。
    • ZRANGE key start stop [WITHSCORES]: 返回指定範圍內的元素(升序)。
    • ZREVRANGE key start stop [WITHSCORES]: 返回指定範圍內的元素(降序)。
    • ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]: 按分數查找範圍內的元素。
    • ZRANK key member: 返回元素的排名(升序)。
    • ZREVRANK key member: 返回元素的倒序排名。
    • ZSCORE key member: 顯示元素的分數。
    • ZREM key member [member ...]: 移除某個元素。
    • ZINCRBY key increment member: 為元素增加分數。

Hash

記憶體模型

Hash 的 value 是一個 map 結構,存儲鍵值對。Redis 中的 Hash 類似於 Map 類型,鍵無序。

常用指令

  • 操作哈希

    • HSET key field value [field value ...]: 設置一個或多個 key/value 對。
    • HMSET key field value [field value ...]: 設置多個 key/value 對。
    • HSETNX key field value: 設置一個不存在的 key 的值。
  • 獲取哈希值

    • HGET key field: 獲取指定 field 對應的 value。
    • HGETALL key: 獲取所有的 key/value 對。
    • HMGET key field [field ...]: 獲取多個 field 對應的 value。
  • 其他操作

    • HDEL key field [field ...]: 刪除指定的 field。
    • HEXISTS key field: 判斷 field 是否存在。
    • HKEYS key: 獲取所有的 key。
    • HVALS key: 獲取所有的 value。
    • HINCRBY key field increment: 為指定 field 的 value 執行加法操作。
    • HINCRBYFLOAT key field increment: 為指定 field 的 value 執行浮點數加法操作。

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • FFmpeg是一個開源的多媒體框架,它可以處理各種音頻和視頻格式的轉換、解碼、編碼和流處理。它提供了一套豐富的庫和工具,廣泛應用於視頻點播、直播、多媒體處理、游戲開發等領域。 FFmpeg的主要組件包括: libavformat - 用於音頻和視頻的多媒體容器的多路復用和解復用。支持多種格式,如MP ...
  • 寫在前面 今天繼續學習redis後面的知識。 Redis 哨兵機制 哨兵 Sentinel 機制 Sentinel(哨兵)是 Redis 的高可用性解決方案。由一個或多個 Sentinel 實例組成的 Sentinel 系統可以監視任意多個主伺服器,以及這些主伺服器屬下的所有從伺服器。當被監視的主服 ...
  • 我們欣喜地宣佈,Apache SeaTunnel 2.3.7 版本現已正式發佈!作為一個廣受歡迎的下一代開源數據集成工具,Apache SeaTunnel 一直致力於為用戶提供更加靈活、高效的數據同步和集成能力。此次版本更新不僅引入瞭如 LLM(大型語言模型)數據轉換支持、增強的 SQL 支持和新連 ...
  • 轉載自神龍大俠 我是用olphinScheduler 3.2.1版本做源代碼編譯部署(部署方式參考我的另外一篇文檔《源代碼編譯,Apache DolphinScheduler前後端分離部署解決方案》) 二進位文件部署本文也適用,只需要修改相對應的配置即可。 資源管理底層基座替換成hdfs Flink ...
  • 在ByteHouse的支持下,目前該公司在銷售數據的非ACL查詢和ACL查詢兩個方向上,都實現了查詢效率的顯著提升。以ACL查詢的60M廣告客戶DI場景為例,查詢效率已經從從優化前的16秒大幅縮短至如今的1秒,效率提升高達16倍。 ...
  • 寫在前面 今天來繼續學習 Redis。 Redis 持久化機制 快照 (Snapshot) 特點 快照持久化可以將某一時刻的所有數據寫入硬碟,預設開啟,保存為 .rdb 文件,也稱為 RDB 持久化。 快照生成方式 客戶端方式 BGSAVE 使用 BGSAVE 命令創建快照,Redis 會創建一個子 ...
  • Redis概述安裝與基本數據類型 1. 什麼是NoSQL NoSQL( Not Only SQL ),意即不僅僅是SQL, 泛指非關係型的資料庫。Nosql這個技術門類,早期就有人提出,發展至2009年趨勢越發高漲。 2. NoSQL的廣泛應用 隨著大數據的興起,數據量的暴增,數據類型的豐富,傳統的 ...
  • CRISP-DM是一個數據挖掘項目規劃的開放標準流程框架模型,主要分為業務理解、數據理解、數據準備、建模、評估、部署六個階段。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...