-
Redis
查看全部 -
NoSQL特點(diǎn)
易擴(kuò)展
靈活的數(shù)據(jù)模型
大數(shù)據(jù)量,高性能
高可用
查看全部 -
4種類型數(shù)據(jù)庫比較
查看全部 -
Redis,鍵值對(duì)存儲(chǔ),優(yōu)勢(shì):查詢快,劣勢(shì):存儲(chǔ)缺少結(jié)構(gòu)化。
mongoDB,文檔存儲(chǔ),優(yōu)勢(shì):數(shù)據(jù)結(jié)構(gòu)要求不高,劣勢(shì):查詢性能低,缺少統(tǒng)一查詢語法。
查看全部 -
保存配置查看全部
-
NoSQL叫N O SQL ,非關(guān)系型數(shù)據(jù)庫查看全部
-
NoSQL 概述
查看全部 -
數(shù)據(jù)庫比較
查看全部 -
daemonize yes
查看全部 -
redis的5中數(shù)據(jù)結(jié)構(gòu):
字符串? (string)
字符串列表(list)
有序的字符串集合(sorted set)
哈希(hash)
字符串集合(set)
查看全部 -
Redis數(shù)據(jù)結(jié)構(gòu)之列表list
定義:它是按照插入順序排序存儲(chǔ)的一個(gè)字符串的鏈表,可以在頭部和外部添加新的元素。所以它適合在頭尾操作,在鏈表中間操作效率較低。
list常用存儲(chǔ)方式:
使用ArrayList數(shù)組方式
使用LinkedList雙向鏈接方式
使用雙向鏈表增加數(shù)據(jù)
使用雙向鏈表刪除數(shù)據(jù)
存儲(chǔ)list常用命令:
鏈表左側(cè)添加數(shù)據(jù):lpush?listKey?value(注意這里先存入的在后面)
鏈表右側(cè)添加數(shù)據(jù):rpush listKey value(先存入的即先得到的)
查看鏈表:lrange listKey start end(注意:start為0時(shí)表示從第一個(gè)元素查看,如果為-1那么就是倒數(shù)第一個(gè)元素,以此類推)
左邊彈出:lpop listKey,表示返回并彈出指定key所關(guān)聯(lián)的鏈表第一個(gè)元素,彈出之后該鏈表就沒有該元素了,如果不存在就返回nil。
右邊彈出:rpop?listKey。
獲取列表中元素個(gè)數(shù):llen mylist(查詢沒有的返回0)
擴(kuò)展命令:
lpushx:向指定的list列表中的頭部插入值,如果關(guān)聯(lián)的列表存在就插入,不存在不創(chuàng)建不插入,和lpush不同在于如果列表不存在,就不會(huì)創(chuàng)建。
rpush:向指定的list列表中的尾部插入值。
lrem?listKey Count?value:如果Count大于0,從頭遍歷刪除Count個(gè)value,如果小于0,則從尾部便利刪除Count個(gè)元素,如果等于0,刪除所有為value的元素。
從頭到尾刪除兩個(gè)3舉例:
從后往前遍歷刪除兩個(gè)1舉例:
刪除所有2舉例:
設(shè)置列表中某個(gè)角標(biāo)的值:0表示第一個(gè)元素,1表示第二個(gè),如果角標(biāo)不存在就會(huì)拋出異常。
某個(gè)元素前或者后插入某個(gè)元素:linsert listKey before 某個(gè)value 插入的值
彈出右并壓縮左:rpoplpush listKey1 listKey2(應(yīng)用場(chǎng)景:消息隊(duì)列中傳遞消息的備份)
查看全部 -
Redis的Hash數(shù)據(jù)結(jié)構(gòu)
定義:可以理解為Redis中有一個(gè)存放String Key和String Value的map容器,每一個(gè)hash可以存儲(chǔ)多個(gè)Entry。
常用Hash命令:
一次存一個(gè)值:hset hash?key1 value1(hset myhash username jack)
一次存多個(gè)Entry:hmset hash?key1 value1 key2 value2(hmset myhash2 username rose age 21)
一次取一個(gè)值:hget hash?key1(hget myhash username)
一次取多個(gè)值:hmget hash?key1 key2(hmget myhash username age)
hgetall key:獲取該hash所有的key和value
hdel hash key1:刪除指定key
del hash:刪除hash的所有key
hincrby hash key 值:給key對(duì)應(yīng)的value增加指定值。
判斷指定的key中的某個(gè)屬性是否存在:hexists hash?key,如果存在就返回1,不存在就返回0
獲取某個(gè)Hash屬性的數(shù)量:hlen hash
獲取某個(gè)Hash所有的屬性名稱:hkeys hash
獲取某個(gè)Hash所有的值:hvalues hash
查看全部 -
打開防火墻
查看全部 -
Redis的數(shù)據(jù)結(jié)構(gòu):
1、字符串(String):最為基本的數(shù)據(jù)存儲(chǔ)類型,它在redis中以二進(jìn)制方式進(jìn)行操作的,這意味著存入和獲取的數(shù)據(jù)是相同的,Redis中字符串類型的Value最多容納數(shù)據(jù)的長(zhǎng)度是512兆。
存儲(chǔ)String常用命令:
a、賦值:set key value(key是字符串,value也為字符串類型,但不需要手動(dòng)添加"")。
b、取值:get key(這里的key為字符串,但不需要手動(dòng)添加"")。
c、刪除:del key(如果key不存在,會(huì)返回nil)。
d、數(shù)值增減:incr key(incr為數(shù)值增減符號(hào),將指定key的value值進(jìn)行遞增1,如果這個(gè)值不存在就設(shè)置為0再進(jìn)行遞增1,如果不能轉(zhuǎn)換成整形,那么就會(huì)提示相應(yīng)錯(cuò)誤信息)。
遞減:decr key,它是指定key的value進(jìn)行遞減1。
e、擴(kuò)展命令
incrby key:將指定key的value增加指定的數(shù)值。
decrby key:將指定key的value減少指定的數(shù)值。
append key:拼湊字符串,他返回的是字符串的長(zhǎng)度。
2、字符串列表(list)
3、有序字符串集合(sorted set)
4、哈希(hash)常用
5、字符串集合(set)
key使用注意:
1、不要太長(zhǎng),盡量不要超過1024個(gè)字節(jié)(如果超過會(huì)降低內(nèi)存和查找的效率)。
2、命名要規(guī)范,也不要太短,要滿足可讀性。
查看全部 -
Jedis:通常情況下,不是直接在linux服務(wù)器上進(jìn)行存值和取值的,而是通過程序進(jìn)行操作的,而Jedis就是用來連接Redis的,我們可以在Redis的官網(wǎng)上看到Redis支持很多連接客戶端方式的語言,其中Java支持的如下圖。
通過指定的Jedis操作Redis
發(fā)生連接超時(shí)的可能原因:Linux系統(tǒng)并沒有打開6379這個(gè)端口,可以通過打開6379端口,開啟之后還需要重新打開防火墻。
通過Redis連接池方式
查看全部
舉報(bào)