Redis 數據類型

来源:http://www.cnblogs.com/one--way/archive/2016/08/03/5733833.html
-Advertisement-
Play Games

Redis數據類型 官網說明文檔:http://www.redis.io/topics/data-types-intro Redis keys Redis keys are binary safe, this means that you can use any binary sequence as ...


Redis數據類型

官網說明文檔:http://www.redis.io/topics/data-types-intro

 

 

Redis keys

Redis keys are binary safe, this means that you can use any binary sequence as a key, from a string like "foo" to the content of a JPEG file. The empty string is also a valid key.

Redis key是二進位安全的,這意味著你可以使用任何二進位序列作為一個key,從一個字元串”foo”到JPEG文件的內容。空字元串也是合法的key。

 

規則

  • Key不要太長,消耗記憶體,在數據集中查找key可能會需要更多的匹配成本。
  • Key不要太短,可讀性較差,
  • 追尋一種模式"object-type:id"  "comment:1234:reply.to" or "comment:1234:reply-to"
  • Key允許的最大值為512M

 

Redis客戶端 Redis-Cli

查看幫助

redis-cli  --help

指定數據塊編號

redis-cli -n 0

 

獲取命令的幫助信息

官網幫助文檔:http://www.redis.io/commands

help @string  獲取數據類型string的相關操作命令

help @list 獲取數據類型list的相關操作命令

help set

help <tab>鍵 有提示信息

 

String

這裡簡單介紹下String類型:

help @string

  APPEND key value
  summary: Append a value to a key
  since: 2.0.0

  BITCOUNT key [start] [end]
  summary: Count set bits in a string
  since: 2.6.0

  BITOP operation destkey key [key ...]
  summary: Perform bitwise operations between strings
  since: 2.6.0

  BITPOS key bit [start] [end]
  summary: Find first bit set or clear in a string
  since: 2.8.7

  DECR key
  summary: Decrement the integer value of a key by one
  since: 1.0.0

  DECRBY key decrement
  summary: Decrement the integer value of a key by the given number
  since: 1.0.0

  GET key
  summary: Get the value of a key
  since: 1.0.0

  GETBIT key offset
  summary: Returns the bit value at offset in the string value stored at key
  since: 2.2.0

  GETRANGE key start end
  summary: Get a substring of the string stored at a key
  since: 2.4.0

  GETSET key value
  summary: Set the string value of a key and return its old value
  since: 1.0.0

  INCR key
  summary: Increment the integer value of a key by one
  since: 1.0.0

  INCRBY key increment
  summary: Increment the integer value of a key by the given amount
  since: 1.0.0

  INCRBYFLOAT key increment
  summary: Increment the float value of a key by the given amount
  since: 2.6.0

  MGET key [key ...]
  summary: Get the values of all the given keys
  since: 1.0.0

  MSET key value [key value ...]
  summary: Set multiple keys to multiple values
  since: 1.0.1

  MSETNX key value [key value ...]
  summary: Set multiple keys to multiple values, only if none of the keys exist
  since: 1.0.1

  PSETEX key milliseconds value
  summary: Set the value and expiration in milliseconds of a key
  since: 2.6.0

  SET key value [EX seconds] [PX milliseconds] [NX|XX]
  summary: Set the string value of a key
  since: 1.0.0

  SETBIT key offset value
  summary: Sets or clears the bit at offset in the string value stored at key
  since: 2.2.0

  SETEX key seconds value
  summary: Set the value and expiration of a key
  since: 2.0.0

  SETNX key value
  summary: Set the value of a key, only if the key does not exist
  since: 1.0.0

  SETRANGE key offset value
  summary: Overwrite part of a string at key starting at the specified offset
  since: 2.2.0

  STRLEN key
  summary: Get the length of the value stored in a key
  since: 2.2.0

 

設置Key-value值

SET key value [EX seconds] [PX milliseconds] [NX|XX]

EX  過期時間,秒  等同於 SETEX key seconds value

PX  過期時間,毫秒  等同於 PSETEX key milliseconds value

NX  鍵不存在,才能設置  等同於 SETNX key value

XX  鍵存在時,才能設置

 

設置多個Key和value

MSET key value [key value ...]
MSETNX key value [key value ...]   鍵不存在時,才設置值

 

過期設置

設置多少秒或毫秒後過期

EXPIRE key seconds    秒
PEXPIRE key milliseconds  毫秒

 

設置在指定unix時間戳過期

EXPIREAT key timestamp     秒
PEXPIREAT key milliseconds-timestamp    毫秒
PERSIST key  刪除過期的key

 

查看剩餘時間

TTL key
PTTL key

-1 沒有設置TTL

-2找有找到key

 

查找key

KEYS pattern

*任意長度字元

?任意一個字元

[]字元集合

 

增量計數

INCR key

例子:

set counter 100

INCR counter

101

INCRBY key increment  根據給定的值進行增量計數
DECR key
DECRBY key increment 

 


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

-Advertisement-
Play Games
更多相關文章
  • 文件下載主要代碼也不多,使用原生的DownloadManage來實現該功能: AndroidManifest中添加許可權 <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:na ...
  • 寫的例子比較簡單,是用xutils3.0來進行下載項目更新 1.先通過網路請求,判斷版本是否要更新 2.若要更新,則彈出一個彈窗,我用的是系統自帶的Dialog,將下載的版本號及下載的內容提示展示出來 3.當用戶點擊下載時,開始下載,下載時展示一個水平的進度條 4.下載完成後,進度條消失,調用系統安 ...
  • NSDate * senddate=[NSDate date]; NSDateFormatter *dateformatter=[[NSDateFormatter alloc] init]; [dateformatter setDateFormat:@"YYYYMMdd"]; NSString * ...
  • ...
  • 原來Activity和Fragment中實現同樣功能的上千行代碼竟然能簡化成100多行!!! 而且如果是Fragment,有一個XListView預設佈局,連layout都不再需要寫了!!! ...
  • MySQL線程池只在Percona,MariaDB,Oracle MySQL企業版中提供。Oracle MySQL社區版並不提供。 在傳統方式下,MySQL線程調度方式有兩種:每個連接一個線程(one-thread-per-connection)和所有連接一個線程(no-threads)。在實際生產 ...
  • 在分散式存儲系統中,系統可用性是最重要的指標之一,需要保證在機器發生故障時,系統可用性不受影響。本文主要介紹數據備份的方式,以及如何保證多個數據副本的一致性,在系統出現機器或網路故障時,如何保持系統的高可用性。 ...
  • 1. mysql最開始使用是沒有密碼的,要求輸入密碼時直接回車就可以,但是自己設置密碼後就要輸入密碼才能登陸。下麵就寫一下在知道舊密碼的情況下改密碼。 進入mysql系統:set password for root@localhost = password('newpassword');將root的 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...