非關(guān)系型數(shù)據(jù)庫(kù)(NOSQL)

數(shù)據(jù)與數(shù)據(jù)之間沒(méi)有關(guān)聯(lián)關(guān)系?。?!

1、數(shù)據(jù)模型簡(jiǎn)單

2、需要靈活性更強(qiáng)的IT系統(tǒng)

3、對(duì)數(shù)據(jù)庫(kù)性能要求高

4、不需要高度的數(shù)據(jù)一致性

5、對(duì)于給定key,比較容易映射復(fù)雜值的環(huán)境

CAP:

? ? C:Consistency? ? 強(qiáng)一致性

? ? A:Availability? ? 可用性

? ? P:Partition tolerance? ? 分區(qū)容錯(cuò)性

(Zookeeper保證CP)、(Eureka保證AP)

NoSQL數(shù)據(jù)庫(kù)分類

1、鍵值(Key-Value)存儲(chǔ)數(shù)據(jù)庫(kù):Redis等

2、列存儲(chǔ)數(shù)據(jù)庫(kù):HBase等

3、文檔型數(shù)據(jù)庫(kù):MongoDb等

4、圖形(Graph)數(shù)據(jù)庫(kù):Neo4J等

Redis命令:

del key:刪除鍵? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? set key value:設(shè)置一個(gè)鍵值對(duì)

keys *:打印所有的鍵? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? exists key:檢查key是否存在

expire key seconds:給key設(shè)置過(guò)期時(shí)間? ? ? ? ? ?ttl key:查看key的剩余生存時(shí)間

pttl key:以毫秒為單位返回剩余生存時(shí)間? ? ? ? ? ??

persist key:移除key的過(guò)期時(shí)間,永久保存

randomkey:從當(dāng)前數(shù)據(jù)庫(kù)返回隨機(jī)一個(gè)key

rename keyOldName keyNewName:給key重新起個(gè)名字

move key database:把key移到database數(shù)據(jù)庫(kù)中(相當(dāng)于剪切),key的位置支持表達(dá)式

typekey:返回key的類型

????key的命名:

不要太長(zhǎng),也不要太短 ,可以使用? “ : ” 來(lái)進(jìn)行命名,如:user:name、user:password

key的名稱區(qū)分大小寫?。。?/i>

Redis數(shù)據(jù)類型:

String(字符串)

String(字符串)

? ? 二進(jìn)制安全,可把文件作為字符串來(lái)存儲(chǔ)、計(jì)數(shù)器

? ? 取值:get key

? ? setnx key value:只有key不存在的時(shí)候才會(huì)把value賦值給key(可解決分布式鎖)

? ? getrange key start end:獲取key的value值,結(jié)果是從start到end結(jié)束

? ? getset key_name value:用于設(shè)置指定的值,并返回key的舊址,如果key不存在,返回null;

? ? strlen key:返回key值得長(zhǎng)度

? ? incr key_name:將key中的值自增1,當(dāng)沒(méi)有這個(gè)key時(shí),會(huì)先創(chuàng)建key,并初始化值為1

? ? decr key_name:將key中的值減1

? ? incrby key_name num:設(shè)置key自增數(shù)num

? ? decrby key_name num:設(shè)置key自減數(shù)num


List(列表)

Set(集合)

Sorted Set(有序集合)

hash(散列)

非常適合存儲(chǔ)JavaBean對(duì)象

命令:

? ? hset key field value:存入設(shè)置值

? ? hget key field:取值

? ? hmset key field value field value...:一次給一個(gè)對(duì)象的多個(gè)屬性賦值

? ? hmget key field field ...:一次獲取多個(gè)屬性的值

? ? hgetall key:獲取key得所有屬性和值

? ? hkeys key:獲取key得所有屬性

? ? hlen key:獲取key中得屬性個(gè)數(shù)

? ? hdel key field...:刪除key中的屬性field

? ? hincrby key field count:給key中屬性的值自增count

? ? hexists key field:判斷key中field屬性是否存在

? ??

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容