關係型資料庫和非關係型資料 (redis命令操作)
mysql sql oracle 這些都是關係型資料庫,你要分析裡面有哪些表,表裡面有哪些欄位。這些都是有通用的語法,SQL語法
開發中用的最多的就是拿redis來做快取(讀寫非常快)
NoSQL (一類新出現的資料庫(not only sql )) ,它的的特點:
儲存結構跟傳統關係型資料庫中的那種關係表完全不同,nosql 中儲存的資料都是KV形式
NoSQL 的世界中沒有一種通用的語言,每種nosql 資料庫都有自己的api和語法,以及擅長的業務場景
NoSQL 中的產品種類相當多:
Mongodb redis hbase hadoop Cassandra hadoop 都是非關係型資料庫
sql 資料庫適用於關係特別複雜的資料查詢場景,nosql反之,sql對事務的支援非常完善,而nosql基本不支援事務
事務的理解:一組sql操作,要麼都成功,要麼都失敗。就像銀行取錢。
鍵的命令都是通用的。可以為字串的,也可以為雜湊的。
可以用keys * 檢視redis資料庫裡面有哪些鍵 keys a* (檢視以a開頭的所有鍵)
setex aa 3 aa (setex 設定過期時間 這裡的是設定aa 的過期時間為3秒)
mset key1 value1 key2 value2 .... (設定多個值,一一對應)
mget key1 key2 key3.... (根據對個的key獲取多個值) mget a1 a2 a3( 這裡的意思是獲取 a1 a2 a3 的值)
append key value (往對應的key裡面新增value ) append 'a' 'haha' (這裡的意思是往a 裡面新增haha a對應的值後面就多了haha字串)
exists key1 (判斷某個鍵是否在資料庫中) exists a1 (判斷 a1鍵 是否在資料庫了)
type key (檢視key 對應value 的型別)
expire 'a1' 3 (設定鍵a1的過期時間為3秒)
ttl a (檢視key的有效時間)
string型別的鍵對應的值是string 雜湊型別 (屬性和值的方式) 屬性對應的值也是string
list 裡面的型別也是string
redis 裡面list 操作
集合,有序集合