中文字幕av高清_国产视频一二区_男女羞羞羞视频午夜视频_成人精品一区_欧美色视_在线视频这里只有精品

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > Redis用select選擇數(shù)據(jù)庫有什么意義?

Redis用select選擇數(shù)據(jù)庫有什么意義?

來源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-10-13 15:24:41 1697181881

一、Redis用select選擇數(shù)據(jù)庫的意義

1、數(shù)據(jù)是隔離的

Redis的不同數(shù)據(jù)庫之間是互相隔離的,每個(gè)數(shù)據(jù)庫中的命名空間都是獨(dú)立的,數(shù)據(jù)不會(huì)互相干擾,可以提供更好的數(shù)據(jù)管理和保護(hù)。

2、能夠提高效率

使用不同的數(shù)據(jù)庫可以避免數(shù)據(jù)之間的相互干擾,減少系統(tǒng)的競(jìng)爭(zhēng),并提高系統(tǒng)的并發(fā)能力和性能。

3、數(shù)據(jù)可以進(jìn)行分類

可以基于業(yè)務(wù)需要將數(shù)據(jù)分門別類地存儲(chǔ)在不同的數(shù)據(jù)庫中,方便對(duì)不同類型的數(shù)據(jù)進(jìn)行分類管理和查詢。

二、Redis介紹

1、定義

redis是一個(gè)key-value存儲(chǔ)系統(tǒng)。和Memcached類似,它支持存儲(chǔ)的value類型相對(duì)更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set –有序集合)和hash(哈希類型)。這些數(shù)據(jù)類型都支持push/pop、add/remove及取交集并集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎(chǔ)上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數(shù)據(jù)都是緩存在內(nèi)存中。區(qū)別的是redis會(huì)周期性的把更新的數(shù)據(jù)寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎(chǔ)上實(shí)現(xiàn)了master-slave(主從)同步。

Redis 是一個(gè)高性能的key-value數(shù)據(jù)庫。 redis的出現(xiàn),很大程度補(bǔ)償了memcached這類key/value存儲(chǔ)的不足,在部分場(chǎng)合可以對(duì)關(guān)系數(shù)據(jù)庫起到很好的補(bǔ)充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。

Redis支持主從同步。數(shù)據(jù)可以從主服務(wù)器向任意數(shù)量的從服務(wù)器上同步,從服務(wù)器可以是關(guān)聯(lián)其他從服務(wù)器的主服務(wù)器。這使得Redis可執(zhí)行單層樹復(fù)制。存盤可以有意無意的對(duì)數(shù)據(jù)進(jìn)行寫操作。由于完全實(shí)現(xiàn)了發(fā)布/訂閱機(jī)制,使得從數(shù)據(jù)庫在任何地方同步樹時(shí),可訂閱一個(gè)頻道并接收主服務(wù)器完整的消息發(fā)布記錄。同步對(duì)讀取操作的可擴(kuò)展性和數(shù)據(jù)冗余很有幫助。

redis的官網(wǎng)地址,非常好記,是redis.io。(域名后綴io屬于國家域名,是british Indian Ocean territory,即英屬印度洋領(lǐng)地),Vmware在資助著redis項(xiàng)目的開發(fā)和維護(hù)。從2010年3月15日起,Redis的開發(fā)工作由VMware主持。從2013年5月開始,Redis的開發(fā)由Pivotal贊助。

2、數(shù)據(jù)模型

Redis的外圍由一個(gè)鍵、值映射的字典構(gòu)成。與其他非關(guān)系型數(shù)據(jù)庫主要不同在于:Redis中值的類型不僅限于字符串,還支持如下抽象數(shù)據(jù)類型:

字符串列表無序不重復(fù)的字符串集合有序不重復(fù)的字符串集合鍵、值都為字符串的哈希表

值的類型決定了值本身支持的操作。Redis支持不同無序、有序的列表,無序、有序的集合間的交集、并集等高級(jí)服務(wù)器端原子操作。

三、Redis中的數(shù)據(jù)結(jié)構(gòu)

1、string(字符串)

string是最簡(jiǎn)單的類型,你可以理解成與Memcached一模一樣的類型,一個(gè)key對(duì)應(yīng)一個(gè)value,其上支持的操作與Memcached的操作類似。但它的功能更豐富。redis采用結(jié)構(gòu)sdshdr和sds封裝了字符串,字符串相關(guān)的操作實(shí)現(xiàn)在源文件sds.h/sds.c中。

數(shù)據(jù)結(jié)構(gòu)定義如下:

typedefchar*sds;structsdshdr{longlen;longfree;charbuf[];};

2、list(雙向鏈表)

list是一個(gè)鏈表結(jié)構(gòu),主要功能是push、pop、獲取一個(gè)范圍的所有值等等。操作中key理解為鏈表的名字。對(duì)list的定義和實(shí)現(xiàn)在源文件adlist.h/adlist.c,相關(guān)的數(shù)據(jù)結(jié)構(gòu)定義如下:

//list迭代器typedefstructlistIter{listNode*next;intdirection;}listIter;//list數(shù)據(jù)結(jié)構(gòu)typedefstructlist{listNode*head;listNode*tail;void*(*dup)(void*ptr);void(*free)(void*ptr);int(*match)(void*ptr,void*key);unsignedintlen;listIteriter;}list;

3、dict(hash表)

set是集合,和我們數(shù)學(xué)中的集合概念相似,對(duì)集合的操作有添加刪除元素,有對(duì)多個(gè)集合求交并差等操作。操作中key理解為集合的名字。在源文件dict.h/dict.c中實(shí)現(xiàn)了hashtable的操作,數(shù)據(jù)結(jié)構(gòu)的定義如下:

//dict中的元素項(xiàng)typedefstructdictEntry{void*key;void*val;structdictEntry*next;}dictEntry;//dict相關(guān)配置函數(shù)typedefstructdictType{unsignedint(*hashFunction)(constvoid*key);void*(*keyDup)(void*privdata,constvoid*key);void*(*valDup)(void*privdata,constvoid*obj);int(*keyCompare)(void*privdata,constvoid*key1,constvoid*key2);void(*keyDestructor)(void*privdata,void*key);void(*valDestructor)(void*privdata,void*obj);}dictType;//dict定義typedefstructdict{dictEntry**table;dictType*type;unsignedlongsize;unsignedlongsizemask;unsignedlongused;void*privdata;}dict;//dict迭代器typedefstructdictIterator{dict*ht;intindex;dictEntry*entry,*nextEntry;}dictIterator;

dict中table為dictEntry指針的數(shù)組,數(shù)組中每個(gè)成員為hash值相同元素的單向鏈表。set是在dict的基礎(chǔ)上實(shí)現(xiàn)的,指定了key的比較函數(shù)為dictEncObjKeyCompare,若key相等則不再插入。

4、zset(排序set)

zset是set的一個(gè)升級(jí)版本,他在set的基礎(chǔ)上增加了一個(gè)順序?qū)傩?,這一屬性在添加修改元素的時(shí)候可以指定,每次指定后,zset會(huì)自動(dòng)重新按新的值調(diào)整順序??梢岳斫饬擞袃闪械膍ysql表,一列存value,一列存順序。操作中key理解為zset的名字。數(shù)據(jù)結(jié)構(gòu)的定義如下:

typedefstructzskiplistNode{structzskiplistNode**forward;structzskiplistNode*backward;doublescore;robj*obj;}zskiplistNode;typedefstructzskiplist{structzskiplistNode*header,*tail;unsignedlonglength;intlevel;}zskiplist;typedefstructzset{dict*dict;zskiplist*zsl;}zset;

延伸閱讀1:Redis的文件格式

redis使用了兩種文件格式,即全量數(shù)據(jù)和增量請(qǐng)求。全量數(shù)據(jù)格式是把內(nèi)存中的數(shù)據(jù)寫入磁盤,便于下次讀取文件進(jìn)行加載;增量請(qǐng)求文件則是把內(nèi)存中的數(shù)據(jù)序列化為操作請(qǐng)求,用于讀取文件進(jìn)行replay得到數(shù)據(jù),序列化的操作包括SET、RPUSH、SADD、ZADD。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
foxmail 7.2使用的是什么方式存儲(chǔ)的郵件?

一、foxmail 7.2使用的是什么方式存儲(chǔ)的郵件1、foxmail郵件存儲(chǔ)位置在大家的安裝目錄下,我們可以直接右擊foxmail圖標(biāo)然后我們點(diǎn)擊“打開文件位...詳情>>

2023-10-13 17:08:36
數(shù)據(jù)庫中關(guān)系代數(shù)與關(guān)系運(yùn)算的區(qū)別是什么?

一、數(shù)據(jù)庫中關(guān)系代數(shù)與關(guān)系運(yùn)算的區(qū)別關(guān)系代數(shù)可以理解為一種抽象的查詢語言,它用對(duì)關(guān)系的運(yùn)算來表達(dá)查詢。運(yùn)算對(duì)象、運(yùn)算符、運(yùn)算結(jié)果是運(yùn)算...詳情>>

2023-10-13 17:00:59
如何建立數(shù)據(jù)庫,利用什么軟件建立數(shù)據(jù)庫?

一、如何建立數(shù)據(jù)庫CREATE DATABASE:MySQL語法示例應(yīng)該提到的在MySQL中創(chuàng)建數(shù)據(jù)庫的名列前茅種方法是使用CREATE DATABASE語句。該語句以指定的...詳情>>

2023-10-13 16:56:43
為什么使用Redis做緩存而不會(huì)使用關(guān)系型數(shù)據(jù)庫?

一、為什么使用Redis做緩存而不會(huì)使用關(guān)系型數(shù)據(jù)庫首先要知道緩存緩存是干什么的,緩存是指可以進(jìn)行高速數(shù)據(jù)交換的存儲(chǔ)器,它先于內(nèi)存與CPU交換...詳情>>

2023-10-13 16:43:22
mysql 非少數(shù)索引的等值查詢?yōu)槭裁匆觛ap鎖?

一、mysql 非少數(shù)索引的等值查詢?yōu)槭裁匆觛ap鎖mysql 中非少數(shù)索引使用的也是 B+ 樹來組織數(shù)據(jù)結(jié)構(gòu)。假設(shè) id 的索引結(jié)構(gòu)在葉子節(jié)點(diǎn)從左到右的...詳情>>

2023-10-13 16:33:11
快速通道
主站蜘蛛池模板: 在线免费观看激情视频 | 国产69精品99久久久久久宅男 | 久久久久国产 | 久久精选| av一区二区三区在线观看 | 色婷婷综合在线 | 一本一道久久a久久精品综合 | 可以看黄的视频 | 99精品亚洲国产精品久久不卡 | 91视频免费在线看 | 九色在线 | 欧美一区二区三区四区五区 | 视频精品一区二区 | 在线视频91 | 97伦理网| 国产成人免费在线 | 国产一区二区黑人欧美xxxx | 国产在线一区二区三区 | 九九九九精品九九九九 | 久免费视频 | 一二三区精品 | 免费色网 | 亚洲成人另类 | 日韩国产| 午夜精品一区二区三区免费视频 | 日本在线一二 | 在线中文字幕av | 2020亚洲视频 | 天堂视频中文字幕 | 9999亚洲| 日韩成人精品 | 一区二区久久久 | 亚洲性视频| 日韩成人在线播放 | 青草青草 | 久久久久av| 中文字幕av一区 | 欧美午夜电影 | 成人影院av| 守护甜心中文版 | 狠狠色噜噜狠狠色综合久 |