成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

新版redis特性以及Stream流數(shù)據(jù)類型使用的簡(jiǎn)單教程

2023-11-08    分類: 網(wǎng)站建設(shè)

事實(shí)上Redis的數(shù)據(jù)類型一直都是二進(jìn)制安全的,幾乎每一種數(shù)據(jù)類型都是可以用來(lái)存儲(chǔ)流的。那為什么Redis 5.0要引用Stream數(shù)據(jù)類型呢? 具體如何使用?

Stream是什么

在一般的編程概念里,流是一種主要用于優(yōu)化內(nèi)存的數(shù)據(jù)類型,它不需要一次性把大量數(shù)據(jù),比如說(shuō)大文件一次性讀取到內(nèi)存再處理,可以邊讀取邊處理,這樣可以用少量?jī)?nèi)存就可以處理大文件。

因此簡(jiǎn)單地說(shuō),流是Redis一種新的數(shù)據(jù)結(jié)構(gòu),不需要讀取原有key的值,就可以在此key中添加新內(nèi)容的數(shù)據(jù)類型。

Stream添加

Stream可以用更抽象的方式來(lái)記錄數(shù)據(jù),比如說(shuō)日志。

Stream類型存儲(chǔ)的不是一個(gè)字符串,而是多個(gè)鍵值對(duì),比如:

XADD mystream * sensor-id 1234 temperature 19.8
> 1518951480106-0

代表往mystream添加新的數(shù)據(jù) { "sensor-id": 1234, "temperature": 19.8 }, *代表服務(wù)器端生成一個(gè)新的EntryID

1518951480106-0 是代表這組數(shù)據(jù)的EntryID值,可以理解為日志中的行號(hào)。1518951480106是當(dāng)前時(shí)間的毫秒值,0代表這一時(shí)侯的第幾個(gè)數(shù)據(jù)??梢杂肵LEN查看總數(shù)據(jù)個(gè)數(shù)。

> XLEN mystream
(integer) 1

也可以自己指定EntryID的值,如:

> XADD somestream 0-1 field value
0-1
> XADD somestream 0-2 foo bar
0-2

流是只增不減的,所以如果entryid值比之前的小,則會(huì)報(bào)錯(cuò):

> XADD somestream 0-1 foo bar
(error) ERR The ID specified in XADD is equal or smaller than the target stream top item

Stream查詢

可以用 XRANGE/XREVRANGE 來(lái)查找,- + 代表查找所有的。

> XRANGE mystream - +
1) 1) 1518951480106-0
   2) 1) "sensor-id"
      2) "1234"
      3) "temperature"
      4) "19.8"
2) 1) 1518951482479-0
   2) 1) "sensor-id"
      2) "9999"
      3) "temperature"
      4) "18.2"

可以指定EntryID的值范圍,可以理解為取某個(gè)時(shí)間段的日志內(nèi)容

> XRANGE mystream 1518951480106 1518951480107
1) 1) 1518951480106-0
   2) 1) "sensor-id"
      2) "1234"
      3) "temperature"
      4) "19.8"

可以只取前兩個(gè)

> XRANGE mystream - + COUNT 2
1) 1) 1519073278252-0
   2) 1) "foo"
      2) "value_1"
2) 1) 1519073279157-0
   2) 1) "foo"
      2) "value_2"

Redis流介紹 https://redis.io/topics/streams-intro

Redis 5.0的主要改進(jìn):

1.新的Stream數(shù)據(jù)類型。

2.新的Redis模塊ApI:Timers and Cluster ApI。

3.RDb 現(xiàn)在可存儲(chǔ) LFU 和 LRU 信息

4.集群管理器從Ruby(redis-trib.rb)遷移到C。`redis-cli —cluster help`了解更多。

5.新sorted set命令:ZpOpMIN / MAX 和 (blocking variants)

6.升級(jí) Active defragmentation V2。

7.增強(qiáng)HyperLogLog實(shí)現(xiàn)。

8.更好的內(nèi)存統(tǒng)計(jì)報(bào)告。

9.許多帶有子命令的命令現(xiàn)在都有一個(gè)HELp子命令。

10.改進(jìn)客戶端經(jīng)常連接斷開(kāi)時(shí)的性能

11.錯(cuò)誤修復(fù)和改進(jìn)。

12. 升級(jí)Jemalloc到5.1版

13. 引入 CLIENT UNbLOCK 和 CLIENT ID

14. 新增 LOLWUT 命令 http://antirez.com/news/123

15. 在不存在需要保持向后兼容性的地方,棄用 "slave" 術(shù)語(yǔ)

16. 網(wǎng)絡(luò)層優(yōu)化

17. Lua 相關(guān)的改進(jìn)

18. 引入 Dynamic HZ 平衡CpU空閑時(shí)的使用率和響應(yīng)性

19. 重構(gòu)了Redis 核心代碼,并進(jìn)行多方面改進(jìn)

詳情: https://raw.githubusercontent.com/antirez/redis/5.0/00-RELEASENOTES

當(dāng)前文章:新版redis特性以及Stream流數(shù)據(jù)類型使用的簡(jiǎn)單教程
路徑分享:http://jinyejixie.com/news46/293046.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、靜態(tài)網(wǎng)站、云服務(wù)器、面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
高邑县| 莆田市| 江陵县| 东乡县| 易门县| 壶关县| 盘锦市| 陈巴尔虎旗| 芒康县| 融水| 临猗县| 绥滨县| 渑池县| 汨罗市| 高唐县| 藁城市| 竹北市| 崇州市| 榆社县| 鹤庆县| 梅河口市| 卢湾区| 田阳县| 大连市| 襄樊市| 洛南县| 新沂市| 南充市| 大兴区| 兴国县| 安乡县| 阳西县| 中江县| 鹤山市| 茂名市| 醴陵市| 九龙坡区| 平塘县| 夏邑县| 阿尔山市| 天台县|