欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Redis 存取 JSON 數(shù)據(jù)示例操作

 更新時(shí)間:2024年02月01日 11:00:29   作者:老王聊技術(shù)  
JSON 是我們常用的數(shù)據(jù)類型,當(dāng)我們需要在Redis中保存json數(shù)據(jù)時(shí)是怎么存放的呢?一般是用String或者Hash,但還是不太方便,無(wú)法靈活的操作json 數(shù)據(jù),下面通過(guò)本文給大家介紹Redis存取JSON 數(shù)據(jù)示例操作,感興趣的的朋友一起看看吧

Redis 存取 JSON 數(shù)據(jù)

本文來(lái)自網(wǎng)絡(luò),本人稍加修改

關(guān)于下面rejson安裝的修正!!!

rejson安裝我的按照下面的不行

我是下載rejson后,直接make,然后在src下發(fā)現(xiàn)有一個(gè)rejson.so,我直接用的這個(gè)

另外我啟動(dòng)的時(shí)候也不顯示rejson信息,但是啟動(dòng)redis后可以存取json格式

1. 簡(jiǎn)介

Redis 本身有比較豐富的數(shù)據(jù)類型,例如 String、Hash、Set、List

JSON 是我們常用的數(shù)據(jù)類型,當(dāng)我們需要在 Redis 中保存 json 數(shù)據(jù)時(shí)是怎么存放的呢?

一般是用 String 或者 Hash,但還是不太方便,無(wú)法靈活的操作 json 數(shù)據(jù)

在 Redis 4.0 中,有一個(gè)重大改進(jìn):modules 模塊系統(tǒng),可以讓我們開(kāi)發(fā)新的功能,集成到 redis 中

rejson 就是一個(gè)新的模塊,為 redis 提供了 json 存儲(chǔ)能力

2. 示例

2.1 基礎(chǔ)操作

127.0.0.1:6379> JSON.SET object . '{"foo": "bar", "ans": 42}'

OK

127.0.0.1:6379> JSON.GET object

"{\"foo\":\"bar",\"ans\":42}"

先看下第一條命令的含義:

  • JSON.SET 是json設(shè)置命令
  • object 是 key
  • . 是json文檔的root,后面的一串是具體的 json 數(shù)據(jù)值

第二條命令是獲取 key 為 object 的json數(shù)據(jù)

2.2 json 內(nèi)部操作

  • 獲取某字段的值

127.0.0.1:6379> JSON.GET object .ans

"42"

命令中的 .ans 是目標(biāo)路徑,表示 root 下面的 ans

  • 設(shè)置某字段值

127.0.0.1:6379> json.set object .name '"bill"'

OK

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":42,\"hi\":\"hello\",\"name\":\"bill\"}"

這個(gè)命令是在 root 下新增了一個(gè)字段 name,值為 bill

也可以修改已有字段的值,用法相同

  • 刪除字段

127.0.0.1:6379> json.del object .name

(integer) 1

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":42,\"hi\":\"hello\"}"

這個(gè)命令使用 del 把 root 下的 name 字段刪除了

  • 數(shù)字操作

ans 字段是數(shù)字類型,值為 42,下面對(duì)其執(zhí)行 +3 操作

127.0.0.1:6379> json.numincrby object .ans 3

"45"

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":45,\"hi\":\"hello\"}"

還可以進(jìn)行乘法操作

127.0.0.1:6379> json.nummultby object .ans 2

"90"

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":90,\"hi\":\"hello\"}"

直接刪除整個(gè)json串

127.0.0.1:6379> json.get object

"{\"foo\":\"bar\",\"ans\":90}"

127.0.0.1:6379> json.del object

(integer) 0

127.0.0.1:6379> json.get object

(nil)

127.0.0.1:6379>

還有很多其他操作命令,具體可以查看項(xiàng)目文檔

3. 安裝

因?yàn)槭褂昧四K功能,所以需要 redis 4.0 以上版本

3.1 安裝流程

  • 安裝 redis 4.0
  • 安裝相關(guān)系統(tǒng)依賴
  • 安裝 rejson 模塊
  • redis 加載 rejson 模塊

3.2 詳細(xì)安裝過(guò)程

安裝 redis 4.0

wget https://github.com/antirez/redis/archive/4.0-rc2.tar.gz
tar xzf 4.0-rc2.tar.gz
cd redis-4.0-rc2/
make

安裝依賴

yum groupinstall "Development Tools"

(這是 centos 中的安裝方法,ubuntu 可以使用這個(gè)命令 apt-get install build-essential )

安裝cmake

# wget https://cmake.org/files/v3.8/cmake-3.8.0-rc3.tar.gz
# tar -xzvf cmake-2.8.11.2.tar.gz
# cd cmake-2.8.11.2
# ./bootstrap
# make
# make install

直接下載rejson 模塊

建議直接下載

建議直接下載

建議直接下載

直接下載

wget https://github.com/RedisJSON/RedisJSON/releases/download/v1.0.4/rejson.so

啟動(dòng) redis 時(shí)加載 rejson.so

redis-server --loadmodule /path/to/module/rejson.so

在啟動(dòng)信息中會(huì)看到 rejson 的相關(guān)信息

...

<ReJSON> JSON data type for Redis

...

安裝完成,可以登錄 redis 執(zhí)行 json 命令了

4. 小結(jié)

rejson 讓我們可以在 redis 中存儲(chǔ)和操作 json 數(shù)據(jù),非常方便

而且通過(guò)體驗(yàn) rejson 模塊,還可以感受到 redis 模塊系統(tǒng)的強(qiáng)大,以后將會(huì)出現(xiàn)各種基于redis的強(qiáng)大功能

rejson 項(xiàng)目地址:

https://redislabsmodules.github.io/rejson/

到此這篇關(guān)于Redis 存取 JSON 數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Redis 存取 JSON 數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解決Redis報(bào)錯(cuò)MISCONF?Redis?is?configured?to?save?RDB?snapshots

    解決Redis報(bào)錯(cuò)MISCONF?Redis?is?configured?to?save?RDB?snap

    這篇文章主要給大家介紹了關(guān)于如何解決Redis報(bào)錯(cuò)MISCONF?Redis?is?configured?to?save?RDB?snapshots的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • Redis集合類型的常用命令小結(jié)

    Redis集合類型的常用命令小結(jié)

    這篇文章給大家整理了在操作Redis集合類型中的常用命令,文章總結(jié)的很全面,對(duì)大家學(xué)習(xí)Redis具有一定的參考借鑒價(jià)值,下面來(lái)一起看看吧。
    2016-09-09
  • Redis過(guò)期時(shí)間的設(shè)計(jì)與實(shí)現(xiàn)代碼

    Redis過(guò)期時(shí)間的設(shè)計(jì)與實(shí)現(xiàn)代碼

    在?Redis?中,鍵的過(guò)期時(shí)間設(shè)計(jì)與實(shí)現(xiàn)是一個(gè)重要的功能,這使得?Redis?可以自動(dòng)刪除在指定時(shí)間后不再需要的鍵,下面詳細(xì)介紹?Redis?過(guò)期時(shí)間的設(shè)計(jì)和實(shí)現(xiàn),包括設(shè)置過(guò)期時(shí)間、過(guò)期鍵的存儲(chǔ)結(jié)構(gòu)、過(guò)期鍵的刪除策略等,需要的朋友可以參考下
    2024-08-08
  • 如何高效使用Redis作為L(zhǎng)RU緩存

    如何高效使用Redis作為L(zhǎng)RU緩存

    這篇文章主要介紹了如何高效使用Redis作為L(zhǎng)RU緩存,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Redis Sentinel實(shí)現(xiàn)高可用配置的詳細(xì)步驟

    Redis Sentinel實(shí)現(xiàn)高可用配置的詳細(xì)步驟

    這篇文章主要介紹了Redis Sentinel實(shí)現(xiàn)高可用配置的詳細(xì)步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • redis主從連接不成功錯(cuò)誤問(wèn)題及解決

    redis主從連接不成功錯(cuò)誤問(wèn)題及解決

    這篇文章主要介紹了redis主從連接不成功錯(cuò)誤問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教<BR>
    2024-01-01
  • 基于Redis位圖實(shí)現(xiàn)用戶簽到功能

    基于Redis位圖實(shí)現(xiàn)用戶簽到功能

    這篇文章主要介紹了基于Redis位圖實(shí)現(xiàn)用戶簽到功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-05-05
  • redis-cli -p 6379 info命令詳解

    redis-cli -p 6379 info命令詳解

    這篇文章主要介紹了redis-cli -p 6379 info命令詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 推薦一款神仙顏值的 Redis 客戶端工具(速收藏)

    推薦一款神仙顏值的 Redis 客戶端工具(速收藏)

    這篇文章主要給大家推薦一款神仙顏值的 Redis 客戶端工具(速收藏),非常好用的redis桌面管理工具,可以運(yùn)行于Linux、Windows、Mac三大平臺(tái),并且當(dāng)加載大數(shù)量的key不會(huì)crash,感興趣的朋友跟隨小編一起看看吧
    2020-12-12
  • SpringBoot3+Redis實(shí)現(xiàn)分布式鎖的配置方法

    SpringBoot3+Redis實(shí)現(xiàn)分布式鎖的配置方法

    這篇文章主要介紹了SpringBoot3+Redis實(shí)現(xiàn)分布式鎖,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-07-07

最新評(píng)論