真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

關(guān)于redis中的關(guān)系查詢的介紹

今天小編給大家分享的是關(guān)于redis中的關(guān)系查詢的介紹,很多人都不太了解,為了讓大家更加了解redis中的關(guān)系查詢,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會(huì)有所收獲的哦。

創(chuàng)新互聯(lián)主營(yíng)石首網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都App制作,石首h5小程序定制開(kāi)發(fā)搭建,石首網(wǎng)站營(yíng)銷推廣歡迎石首等地區(qū)企業(yè)咨詢

關(guān)于redis中的關(guān)系查詢的介紹

本文對(duì)Redis如何保存關(guān)系型數(shù)據(jù),以及如何對(duì)其匹配、范圍、模糊查詢進(jìn)行舉例講解。

1、關(guān)系型數(shù)據(jù)的存儲(chǔ)

以Staff對(duì)象為例,在關(guān)系型數(shù)據(jù)庫(kù)或類似GridGain的內(nèi)存網(wǎng)格產(chǎn)品中(底層使用H2數(shù)據(jù)庫(kù)的內(nèi)存模式存儲(chǔ)),我們以表形式保存對(duì)象的數(shù)據(jù)。因?yàn)閮?nèi)存網(wǎng)格是基于對(duì)象做緩存的,所以還要額外多出一列(Staff列)保存整個(gè)對(duì)象的編碼,例如序列化后的二進(jìn)制或者JSON格式等,便于直接返回給應(yīng)用后進(jìn)行反序列化。

而在Redis中,我們可以用id作為唯一標(biāo)識(shí),使用key-value、hash、zSet三種數(shù)據(jù)結(jié)構(gòu)進(jìn)行保存。Key-value是為了保存id和整個(gè)對(duì)象,確定id范圍后可根據(jù)它將對(duì)象返回給客戶端。

關(guān)于redis中的關(guān)系查詢的介紹

2、匹配查詢

利用hash表的hget或hmget可以實(shí)現(xiàn)dept='IT'或者dept in ('IT', 'QA')這種單值或多值的完全匹配查詢。拿到id列表后,再去查詢key-value獲得到對(duì)象。

3、范圍查詢

因?yàn)槲覀儗ge保存成zSet的score,value是id,所以可以利用zSet的zrangeByScore方法獲得score在某一區(qū)間范圍內(nèi)的value值。

4、模糊查詢

Redis 2.8.9后zSet加入了一個(gè)非常有用的方法zrangeByLex,我們將score都保存為0,value是姓名:id的格式,利用zrangeByLex可以獲得字母在某一區(qū)間內(nèi)的value值。例如,zrangeByLex name [A, (F,可以查詢出Allen, Aaron, Carter。

5、分頁(yè)查詢

同時(shí),zrangeByLex還支持分頁(yè)查詢,語(yǔ)法類似limit start, offset。

6、局限性

上述舉例說(shuō)明了幾種常見(jiàn)查詢?cè)赗edis的實(shí)現(xiàn)方式,但是Redis畢竟只是key-value存儲(chǔ),所以有很多局限性。

例如:

1)無(wú)法實(shí)現(xiàn)多條件組合的查詢,例如age>25 AND name like 'A%',硬要實(shí)現(xiàn)的話需要多條命令并計(jì)算并集或交集。

2)模糊查詢中文比較費(fèi)勁。

以上就是關(guān)于redis中的關(guān)系查詢的介紹的詳細(xì)內(nèi)容了,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎來(lái)創(chuàng)新互聯(lián)行業(yè)資訊!


分享題目:關(guān)于redis中的關(guān)系查詢的介紹
網(wǎng)頁(yè)網(wǎng)址:http://weahome.cn/article/jiogsj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部