Redis基礎和安裝教程
阿新 • • 發佈:2018-12-21
為什麼使用NoSQL?
今天我們可以通過第三方平臺,可以很容易的訪問和抓取資料。使用者的個人資訊,社交網路,地理位置,使用者生成的資料和使用者操作日誌已經成倍的增加。我們如果要對這些使用者資料進行挖掘,那SQL資料庫已經不適合這些應用了, NoSQL資料庫的發展也卻能很好的處理這些大的資料。
NoSQL資料庫四大分類
- 鍵值儲存資料庫
- 相關產品:Tokyo Cabinet/Tyrant、Redis、Voldemort、Berkeley DB
- 典型應用:內容快取,主要用於處理大量資料的高訪問負載
- 資料模型:一系列鍵值對
- 優勢:快速查詢
- 劣勢:儲存的資料缺少結構化
- 列儲存資料庫
- 相關產品:Cassandra、HBase、Riak
- 典型應用:分散式檔案系統
- 資料模型:以列簇式儲存,將一列資料存在一起
- 優勢:查詢速度快,可擴充套件性強,更容易進行分散式擴充套件
- 劣勢:功能相對侷限
- 文件型資料庫
- 相關產品:
- 典型應用:
- 資料模型:一系列鍵值對
- 優勢:資料結構要求不嚴格
- 劣勢:查詢效能不高,而且缺乏統一的查詢語法
- 圖形資料庫
- 相關產品:
- 典型應用:社交網路
- 資料模型:圖結構
- 優勢:利用圖結構相關演算法
- 劣勢:需要對整個圖做計算才能得出結果,不容易做分散式的叢集方案
NoSQL的特點
- 易擴充套件
- 大資料量,高效能
- 靈活的資料模型
- 高可用
目前Redis支援的鍵值資料型別
- 字串型別
- 雜湊型別
- 列表型別
- 集合型別
- 有序集合型別
Redis應用場景
- 快取(資料查詢、短連結、新聞內容,商品內容等)
- 聊天室的線上好友列表
- 任務列隊(秒殺、搶購、12306等)
- 應用排行榜
- 網站訪問統計
- 資料過期處理(精確到毫秒)
- 分散式叢集架構中的session分離
Redis的安裝和使用
Redis建議安裝在Linux伺服器上執行測試
- 安裝redis編譯的c環境,yum install gcc-c++
- 將redis-2.6.16.tar.gz上傳到Linux系統中
- 解壓到/usr/local下 tar -xvf redis-2.6.16.tar.gz -C /usr/local
- 進入redis-2.6.16目錄 使用make命令編譯redis
- 在redis-2.6.16目錄中 使用make PREFIX=/usr/local/redis install命令安裝 redis到/usr/local/redis中
- 拷貝redis-2.6.16中的redis.conf到安裝目錄redis中
- 啟動redis 在bin下執行命令redis-server redis.conf
- 如需遠端連線redis,需配置redis埠6379在linux防火牆中開發
/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT
/etc/rc.d/init.d/iptables save
後端模式
修改redis.conf配置檔案,daemonize yes以後端模式啟動。
vim/usr/local/redis/redis.conf
啟動時,指定配置檔案
cd/usr/local/redia/
.bin/redis-server./redis.conf
Redis啟動
./redis-server redis.conf
./redis-cli
Redis預設埠6379,通過當前服務進行檢視
ps -ef | grep -i redis
Redis停止
- 強制結束程式(可能會導致redis持久化資料丟失)
kill -9 31475 #pid需要通過“ps aux | grep -i redis”進行查詢
- 正確停止Redis的方式應該是向Redis傳送SHUTDOWN命令,方法為:(關閉預設埠)
cd/usr/local/redis
./bin/redis-cli/shutdown