Redis 小白指南(二)- 基礎命令和五大類型:字元串、散列、列表、集合和有序集合

来源:http://www.cnblogs.com/liqingwen/archive/2017/05/31/6919308.html
-Advertisement-
Play Games

Redis 小白指南(二)- 基礎命令和五大類型:字元串、散列、列表、集合和有序集合 引言 開篇已經介紹了 Redis 安裝、GUI 和 C# 驅動等基本知識,這一篇主要是梳理一下 Redis 的 5 種類型的信息與指令。 目錄 字元串類型 散列類型 列表類型 集合類型 有序集合類型 其它命令 字元 ...


Redis 小白指南(二)- 聊聊五大類型:字元串、散列、列表、集合和有序集合

引言

  開篇《Redis 小白指南(一)- 簡介、安裝、GUI 和 C# 驅動介紹》已經介紹了 Redis 的安裝、GUI 和 C# 驅動等基本知識,這一篇主要是梳理一下 Redis 的 5 種類型的信息與指令。

 

目錄

  • 字元串類型(String)
  • 散列類型(Hash)
  • 列表類型(List)
  • 集合類型(Set)
  • 有序集合類型(SortedSet)
  • 其它命令

 

字元串類型(String)

  1.介紹:

  字元串類型是 Redis 中最基本的數據類型,可以存儲二進位數據、圖片和 Json 的對象。

  字元串類型也是其他 4 種資料庫類型的基礎,其它數據類型可以說是從字元串類型中進行組織的,如:列表類型是以列表的形式組織字元串,集合類型是以集合的形式組織字元串。

  

  2.命令:

  【備註】包括 INCR 在內的所有 Redis 命令都是原子操作。

 

  3.命令測試:

圖:簡單的命令測試

 

  4.命名:

  建議:“對象類型:對象ID:對象屬性”命名一個鍵,如:“user:1:friends”存儲 ID 為 1 的用戶的的好友列表。對於多個單詞則推薦使用 “.” 進行分隔。

 

  5.應用:

  (1)訪問量統計:每次訪問博客和文章使用 INCR 命令進行遞增;

  (2)將數據以二進位序列化的方式進行存儲。

  

散列類型(Hash)

  1.介紹:

  散列類型採用了字典結構(k-v)進行存儲。

  散列類型適合存儲對象。可以採用這樣的命名方式:對象類別和 ID 構成鍵名,使用欄位表示對象的屬性,而欄位值則存儲屬性值。如:存儲 ID 為 2 的汽車對象。

 

  2.命令:

 

  3.命令測試:

圖:簡單的命令測試

 

  4.應用:

  (1)文章內容存儲:

 

列表類型(List)

  1.介紹:

  列表類型(list)可以存儲一個有序的字元串列表,常用的操作是向兩端添加元素。

  列表類型內部是使用雙向鏈表實現的,也就是說,獲取越接近兩端的元素速度越快,代價是通過索引訪問元素比較慢。

 

  2.命令:

 

  3.命令測試:

  【解析】向列表的左邊添加元素“1”,再依次加入“2”、“3”

  然後:

  在列表的右邊依次加入兩個元素“0”、“-1”:

 

  4.應用:

  (1)顯示社交網站的新鮮事、熱門評論和新聞等;

  (2)當隊列使用;

  (3)記錄日誌。

 

集合(Set)

  1.介紹:  

  字元串的無序集合,不允許存在重覆的成員。

  多個集合類型之間可以進行並集、交集和差集運算。

 

  2.命令:

 

  3.圖解交、並、差集:

 

  4.命令測試:

  

  5.應用:

  (1)文章標簽。

 

有序集合(SortedSet)

  1.介紹:

  在集合類型的基礎上添加了排序的功能。

 

  2.命令:

 

  3.命令測試:  

 

 

  4.應用:

  (1)點擊量排序

 

其它命令

  1.獲得符合規則的鍵名列表

KEYS pattern

  pattern 支持 glob 風格通配符:

 

  2.判斷一個鍵是否存在

EXISTS key

  如果鍵存在則返回整數類型 1,否則返回 0

 

  3.刪除鍵

DEL key [key ...]

  可以刪除一個或者多個鍵,返回值是刪除的鍵的個數

 

  4.獲得鍵值的數據類型

TYPE key

 

  這裡只是進行了一些命令的整理,具體的使用很多時候還是需要自己進行到官方文檔進行學習和搜索。

 

系列

  《Redis 小白指南(一)- 簡介、安裝、GUI 和 C# 驅動介紹

  《Redis 小白指南(二)- 聊聊五大類型:字元串、散列、列表、集合和有序集合

  《Redis 小白指南(三)- 事務、過期、消息通知、管道、優化記憶體空間》

  《Redis 小白指南(四)- 數據的持久化保存

 

 


【博主】反骨仔

【原文】http://www.cnblogs.com/liqingwen/p/6919308.html 

【GitHub】https://github.com/liqingwen2015/Wen.Helpers/blob/master/Wen.Helpers.Common/Redis/RedisHelper.cs

【參考】《Redis 入門指南》

 


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

-Advertisement-
Play Games
更多相關文章
  • /Users/longyongping/Desktop/WX20170531-114430.png ...
  • 說到Picasso,相信Android開發人員絕不陌生,它是Square公司開發的一款圖片載入神器。使用過它的coder絕對是愛不釋手:對它本身而言,輕量安全,有效載入圖片並防止OOM;對我們開發者來說,簡單方便,一行代碼搞定圖片載入。因此它備受Android開發人員的鐘愛,那麼今天我們就從源碼的角... ...
  • K-Means演算法是一種基於距離的聚類演算法,採用迭代的方法,計算出K個聚類中心,把若幹個點聚成K類。 用Spark實現K-Means演算法,首先修改pom文件,引入機器學習MLlib包: 代碼: 使用textFile()方法裝載數據集,獲得RDD,再使用KMeans.train()方法根據RDD、K值 ...
  • 介紹 使用 zabbix 的 low-level 自動發現功能完成單主機多埠的監控, 詳見low_level_discovery, 整體上監控類似 percona 的 zabbix 監控插件, 不過使用 mymonitor.pl 替換了腳本 ss_get_mysql_stats.php, 而且配置 ...
  • 計數行 直接上慄子:客戶想要知道有多少pet了, 腫麽辦?(需要用到一個COUNT(*)的函數) 操作如下: SELECT COUNT(*) FROM pet; mysql> SELECT COUNT(*) FROM pet;+ +| COUNT(*) |+ +| 9 |+ +1 row in se ...
  • 一、 創建用戶: 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 說明:username - 你將創建的用戶名, host - 指定該用戶在哪個主機上可以登陸,如果是本地用戶可用localhost, 如果想讓該用戶可以從任意遠程主 ...
  • 在MySQL 中,主要有四種類型的索引,分別為:B-Tree 索引,Hash 索引,Fulltext 索引和RTree索引 1、B-Tree 索引 B-Tree 索引是MySQL 資料庫中使用最為頻繁的索引類型,除了Archive 存儲引擎之外的其他所有的存儲引擎都支持B-Tree 索引。不僅僅在M ...
  • 2017年5月31日,天氣陰。近期事情頗多,心情比較沉重。 端午剛過,早上上課,很多同學還處在端午的疲憊狀態中沒有回過神來,當然我也不例外。端午奔波三天,加上畢設的事情,可以說身心俱疲。狀態不佳,整理了一下以前的筆記,發現很多知識點記憶不清了,甚至有些幾乎沒印象了。下麵把自己對DDL、DML和DCL ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...