為了解決高併發、高可擴充套件、高可用、大資料儲存問題而產生的資料庫解決方案,就是nosql資料庫。
nosql,泛指非關係型的資料庫,nosql即not-only sql,它可以作為關係型資料庫的良好補充。
2.1 鍵值(key-value)儲存資料庫
、voldemort、berkeley db
典型應用: 內容快取,主要用於處理大量資料的高訪問負載。
資料模型: 一系列鍵值對
優勢: 快速查詢
劣勢: 儲存的資料缺少結構化
2.2 列儲存資料庫
,riak
典型應用:分布式的檔案系統
資料模型:以列簇式儲存,將同一列資料存在一起
優勢:查詢速度快,可擴充套件性強,更容易進行分布式擴充套件
劣勢:功能相對侷限
2.3 文件型資料庫
典型應用:web應用(與key-value類似,value是結構化的)
資料模型: 一系列鍵值對
優勢:資料結構要求不嚴格
劣勢:查詢效能不高,而且缺乏統一的查詢語法
2.4 圖形(graph)資料庫
典型應用:社交網路
資料模型:圖結構
劣勢:需要對整個圖做計算才能得出結果,不容易做分布式的集群方案。
redis是用c語言開發的乙個開源的高效能鍵值對(key-value)資料庫。它通過提供多種鍵值資料型別來適應不同場景下的儲存需求,
目前為止redis支援的鍵值資料型別如下:
string字元型別
map雜湊型別
list列表型別
set集合型別
sortedset有序集合型別
2023年,義大利的一家創業公司merzia推出了一款基於mysql的**實時統計系統lloogg,然而沒過多久該公司的創始人 salvatoresanfilippo
便 對mysql的效能感到失望,於是他決定親自為lloogg量身定做乙個資料庫,並於2023年開發完成,這個資料庫就是redis。
不過salvatoresanfilippo並不滿足只將redis用於lloogg這一款產品,而是希望更多的人使用它,於是在同一年salvatoresanfilippo將redis開源發布,
並開始和redis的另一名主要的**貢獻者pieternoordhuis一起繼續著redis的開發,直到今天。
salvatoresanfilippo自己也沒有想到,短短的幾年時間,redis就擁有了龐大的使用者群體。hacker news在2023年發布了乙份資料庫的使用情況調查,
vmware公司從2023年開始贊助redis的開發, salvatore sanfilippo和pieternoordhuis也分別在3月和5月加入vmware,全職開發redis。
快取(資料查詢、短連線、新聞內容、商品內容等等)。(最多使用)
分布式集群架構中的session分離。
任務佇列。(秒殺、搶購、12306等等)
應用排行榜。
**訪問統計。
資料過期處理(可以精確到毫秒)
redis是c語言開發,建議在linux上執行,本教程使用centos6.4作為安裝環境。
第二步:在linux下安裝gcc環境(該步驟可以省略,centos中預設自帶c環境)
[root@linux02 redis-3.0.0]# yum install gcc-c++
【需要切換到sftp視窗】
sftp> put -r "e:\redis\res\redis-3.0.0.tar.gz"
第四步:解壓縮redis原始碼包
[root@linux02 ~]# tar -zxf redis-3.0.0.tar.gz
第五步:編譯redis原始碼
[root@linux02 ~]# cd redis-3.0.0
[root@linux02 redis-3.0.0]# make
第六步:安裝redis
[root@linux02 redis-3.0.0]# make install prefix=/usr/local/redis0707
第七步:檢視是否安裝成功
啟動方式:
直接執行bin/redis-server將以前端模式啟動。
[root@linux02 bin]# ./redis-server
啟動缺點:
ssh命令視窗關閉則redis-server程式結束,不推薦使用此方法
啟**例:
前端啟動的關閉:
強制關閉:ctrl+c
正常關閉:[root@hcx bin]# ./redis-cli shutdown
前端啟動的問題:
一旦客戶端關閉,則redis服務也停掉。
第一步:將redis原始碼包中的redis.conf配置檔案複製到/usr/local/redis/bin/下
[root@linux02 /]# cd /root/redis-3.0.0
[root@linux02 redis-3.0.0]# cp redis.conf /usr/local/redis0707/bin/
第二步:修改redis.conf,將daemonize由no改為yes
第三步:執行命令
[root@linux02 bin]# ./redis-server redis.conf
後端啟動的關閉方式
[root@localhost-0723 bin]# kill 5528
正常關閉:
[root@localhost-0723 bin]# ./redis-cli shutdown
在專案中,建議使用正常關閉。
因為redis作為快取來使用的話,將資料儲存到記憶體中,如果使用正常關閉,則會將記憶體資料持久化到本地之後,再關閉。
如果是強制關閉,則不會進行持久化操作,可能會造成部分資料的丟失。
Redis安裝及使用介紹
tar xvzf redis 3.0.3.tar.gz cd redis 3.0.3 make make install 測試執行 開啟服務端 usr local bin redis server 使用6379埠號 開啟客戶端 usr local bin redis cli set name hah...
redis 安裝及配置介紹
1.2 解壓縮剛下好的redis包tar zxvf redis 5.0.3.tar.gz 1.3 進入剛才解壓好的redis資料夾中cd redis 5.0.3 1.4 make,友情提示,如果make被中斷,最好是刪除解壓好的資料夾,重新解壓縮一遍,否則可能make失敗 1.5 實驗啟動cd sr...
Redis基礎介紹及安裝
redis的特性非常多,我們先羅列出來然後一項一項介紹 速度快 支援持久化 支援多種資料結構 支援多種客戶端語言 功能豐富 使用簡單 支援主從複製 支援高可用和分布式。redis的使用場景沒有特定的乙個規定,在實際的工作動作,可以結合redis的功能特性和實際的需求使用,不侷限於某些經典的使用場景,...