1. 程式人生 > >NoSQL之redis(介紹+叢集搭建)

NoSQL之redis(介紹+叢集搭建)

一、NoSQL的介紹

  1. 什麼是NoSQL
    NoSQL,叫非關係型資料庫,它的全名Not only sql。它不能替代關係型資料庫,只能作為關係型資料庫的一個良好補充。
  2. NoSQL的分類:
  • 鍵值對(K-V)儲存資料庫

相關產品: Tokyo Cabinet/Tyrant、Redis、Voldemort、Berkeley DB

典型應用: 內容快取,主要用於處理大量資料的高訪問負載。

資料模型: 一系列鍵值對

優勢: 快速查詢

劣勢: 儲存的資料缺少結構化

  • 列儲存資料庫

相關產品:Cassandra, HBase

, Riak

典型應用:分散式的檔案系統

資料模型:以列簇式儲存,將同一列資料存在一起

優勢:查詢速度快,可擴充套件性強,更容易進行分散式擴充套件

劣勢:功能相對侷限

  • 文件性資料庫

相關產品:CouchDB、MongoDB

典型應用:Web應用(與Key-Value類似,Value是結構化的)

資料模型: 一系列鍵值對

優勢:資料結構要求不嚴格

劣勢: 查詢效能不高,而且缺乏統一的查詢語法

  • 圖形資料庫

相關資料庫:Neo4J、InfoGrid、Infinite Graph

典型應用:社交網路

資料模型:圖結構

優勢:利用圖結構相關演算法。

劣勢:需要對整個圖做計算才能得出結果,不容易做分散式的叢集方案

 

二、redis

  1. redis的介紹:redis是使用c語言編寫的一個高效能鍵值對NoSQL資料庫。Redis可以通過一些鍵值對型別來儲存資料。如:string、map、list、set、sortedset…
  2. redis的應用場景:快取(大資料處理時,中間快取)、分散式叢集架構中的session的分離、任務佇列(秒殺、搶購、12306等等)、網站訪問統計、應用排行。
  3. redis資料庫的安裝(單節點)***
①下載redis包:
官網地址:
http://redis.io/

下載地址:http://download.redis.io/releases/

在這裡我使用的是redis-3.0.0

 

②將下載的redis安裝包,放置在自己的叢集中

 

③檢視是否有gcc的語言環境:

yum list |grep gcc

如果沒有則下載:yum install gcc-c++

 

④解壓軟體包:tar -zxf redis-3.0.0.tar.gz

 

⑤編譯redis:

[[email protected] ~]# cd redis-3.0.0

[[email protected] redis-3.0.0]# make

 

⑥ 安裝redis:

[[email protected] redis-3.0.0]# make install PREFIX=/usr/local/redis

 

⑦測試是否安裝成功:

進入:cd REDIS_HOME/bin

開啟redis:./redis-server

看到以下的介面表示安裝成功!!

image

 

補充:redis的後臺啟動

第一步:需要將redis解壓之後的原始碼包中的redis.conf檔案拷貝到bin目錄下

[[email protected] bin]# cp /xxx/redis-3.0.0/redis.conf ./

 

第二步:修改redis.conf檔案,將daemonize改為yes

image

 

第三步:使用命令後端啟動redis

[[email protected] bin]# ./redis-server redis.conf

 

第四步:檢視是否啟動成功

ps –aux|grep redis

image

 

4.redis的簡單使用

  • 使用客戶端連線工具:[[email protected] bin]# ./redis-cli -h 127.0.0.1 -p 6379   (redis的自帶的連線工具)

              -h:指定訪問的redis伺服器的ip地址(如果是單機版,需要和redis配置檔案中繫結的一致)

              -p:指定訪問的redis伺服器的port埠

  • 第二種則是使用Windows端的連線工具,小編這裡使用的是redis-desktop-manager (個人感覺挺好用)