1. 程式人生 > >Redis初體驗

Redis初體驗

redis

Redis是一個速度非常快的非關系型數據庫,它不僅性能強勁,而且還具有復制特性以及為解決問題而生的獨一無二的數據模型。作為鍵值型數據庫,Redis支持5中數據類型:字符串,列表,集合,Hash散列和有序集合,各式各樣的問題都可以很自然的映射到這些數據結構上,Redis的數據結構致力於幫助用戶解決問題,而不像其他數據庫那樣要求用戶扭曲問題來適應數據庫。這幾種數據模型及其對應的操作命令和強類型編程語言對應的類型更為相似,方便理解和使用。

Redis與其它軟件的對比

對於關系型數據庫在查詢數據時,有時候需要進行多表操作來完成數據查詢,但是在Redis中並不存在表的概念,它的數據庫也不會預定義或者強制去要求用戶對Redis存儲的不同數據進行關聯。談起Redis就不得不說另一個高性能的鍵值緩存服務器 Memcached,它們經常用來進行相互比較。但是Redis可以將內存中緩存的數據同步到磁盤上,除了支持字符串上更多的操作外,Redis還支持其余四種類型,通過更多的數據結構解決更多的問題,在實際應用中既可以作為主數據庫也可以用為其他存儲系統的輔助數據庫使用。

具體對比一下兩者的區別:
技術分享

使用Redis的理由

數據庫的一個常見用法是用來存儲長期報告的數據,並將這些數據存儲在不同的表中,對數據的插入操作會執行的很迅速,只需要在數據行的末尾追加一行即可。但是對於更新操作就相對比較慢一些,因為更新不僅會涉及讀取操作還會涉及寫入操作,當數據量大的時候,更新操作會更慢從而出現性能瓶頸。而Redis是將數據存儲在內存中的,發給Redis的請求並不需要經過查詢分析器和查詢優化器進行處理,所以對Redis存儲的數據執行寫操作的速度非常快。使用Redis而不是其它關系數據庫或者其它硬盤存儲數據庫,可以避免寫入不必要的臨時數據,也免去了對臨時數據的掃描和刪除的麻煩,並最終改善程序的性能。

Redis的安裝和使用

技術分享
下載成功之後運行: src/redis-server 打開服務器,結果如圖:
技術分享

重新打開窗口運行 src/redis-cli打開客戶端,結果如圖所示:
技術分享
在後續練習命令的過程中,使用客戶端是一個很不錯的選擇,在查看命令結果的同時還可以練習命令,在後續的更新中,會經常使用客戶端進行交互,除非必要會使用Python進行交互。


Redis初體驗