Redis介紹與基本配置(第一章)

本章目錄:java

  一,Redis介紹與基本配置mysql

  1. Redis介紹
  2. Redis安裝與配置(Window下安裝)
  3. Redis基

  

  1.Redis介紹git

    1.1:數據庫分類github

      -----關係類數據庫redis

        關係類數據庫模型是把複雜的數據庫結構歸結爲簡單的二元關係(即二維表格形式)。包含Mysql,Oeacle,SqlServer等。sql

        隨着互聯網WEB.2.0時代的到來,面臨着高併發,高性能的一系列的挑戰。mongodb

        ------非關係類數據庫數據庫

        新型的數據庫模型,也被稱爲NoSql數據庫,NoSql本意是「NOTONLY SQL」,並非完全要否認關係型數據庫,而是做爲傳統關係型數據庫的一個有效補充。windows

        包含memcached(純內存),redis(持久化緩存),mongodb (文檔的數據庫)緩存

    1.2:非關係型數據庫的分類

      1.key-value存儲數據庫

        鍵值數據庫就相似傳統語言使用哈希表,能夠經過key來添加,查詢或刪除數據,由於使用key主鍵訪問,因此會得到很高的性能及擴展性。

        典型產品:Memcached,Redis,MemcacheDB,BerKeleyDB

      2.列儲存(Colum-oriedted)數據庫

        瞭解便可,通常公司用不着,典型產品:Cassandra,HBase。

      3.面向文檔(Docment-Oriedted)數據庫

        面向文檔數據庫會將數據以文檔的形式儲存。每一個文檔都是自包含的數據單元,是一系列數據項的集合。典型產品:MorgoDB,CouchDB

      4.圖形(Graph)數據庫

    1.3:Redis介紹

      1.Redis 是徹底開源免費的,遵照BSD協議,是一個高性能的key-value數據庫。

      2.在Redis的存儲體系中,沒有表的概念,它至關於java中的map,由無數個key-value來存儲數據,一個key能夠存儲的value能夠是字符串、哈希表、列表、集合等Redis支持的數據類型。

      3.在Redis中的數據查找中,只須要給定查找的key,就能夠找到對應存儲的value值,Redis在同一個數據庫中,key是惟一不重名的。

      4.在redis的安裝當中,redis會默認建立db0~db15一共16個數據庫,絕大部分狀況下只須要使用默認的數據庫db0就能夠。      

      傳統關係型數據中,數據是以表的組織形式進行存儲,其中表內通常又含有多個字段,一個表能夠存儲多條記錄。

          

      在redis數據庫中,數據是以鍵值對的形式進行存儲,一個數據庫中只有多個key,每個key只有一個對應的value。

  2.Redis安裝   

      2.1,Window下安裝:
      下載地址:https://github.com/MSOpenTech/redis/releases

      選擇64位的ZIP壓縮包點擊下載,下載完成後解壓,並將解壓後的文件夾重命名爲redis,方便後面使用

      2.2,運行Redis服務

        2.2.1,使用cmd命令行進入解壓後的redis目錄

        2.2.2,在redis目錄下 運行redis-server redis.windows.conf,啓動redis服務,此時當關閉命令窗口redis服務也會關閉,其中後面的redis.window.conf能夠省略

            

        2.2.3,能夠將redis服務安裝成windows服務,在redis目錄下的命令窗口輸入:redis-server --service-install redis.windows.conf便可

            

 

 

          2.2.4, 查看服務是否配置成功,右鍵計算機—管理—服務,查找是否有Redis服務,若是啓動,表明windows上的redis服務已經配置成功,redis服務已經啓動。

  3.Redis命令

      3.1,遠程鏈接本地Redis

        啓動本機Redis客戶端:redis–cli ,此命令鏈接到本機的Redis服務,同時用PING命令檢測本機Redis服務是否啓動

             

        鏈接遠程Redis服務: redis–cli –h host –p port –a 「password」
        其中host爲遠程主機IP地址
        Port爲遠程Redis服務端口號
        Password爲遠程Redis服務密碼

        

 

        用客戶端鏈接了redis服務以後,就能夠在當前命令行裏使用redis命令來操做redis數據庫了

      3.2,Redis數據類型

        Redis支持五種數據類型:String(字符串),Hash(哈希),list(列表),set(集合) 及zset(有序集合)

        

        String(字符串)(最經常使用)
        string是redis最基本的類型,是二進制安全的。意思是redis的string能夠包含任何數據。好比jpg圖片或者序列化的對象 。
        string類型l是Redis最基本的數據類型,一個鍵最大能存儲512MB。

        

        Hash(哈希)(經常使用)
        Redis hash 是一個鍵值(key=>value)對集合。
        Redis hash 是一個 string 類型的 key和 value 的映射表,hash 特別適合用於存儲對象,至關於java中的Map集合。

            

        List(列表)
        Redis 列表是簡單的字符串列表,按照插入順序排序。你能夠添加一個元素到列表的頭部(左邊)或者尾部(右邊)。
        列表最多可存儲 232 - 1 元素 (4294967295, 每一個列表可存儲40多億)。

     

        Set(集合)
        Redis的Set是string類型的無序集合。
        集合是經過哈希表實現的,因此添加,刪除,查找的複雜度都是O(1)。

   

        zset(sorted set:有序集合)(瞭解)
        Redis zset 和 set 同樣也是string類型元素的集合,且不容許重複的成員。
        不一樣的是每一個元素都會關聯一個double類型的分數。redis正是經過分數來爲集合中的成員進行從小到大的排序。
        zset的成員是惟一的,但分數(score)卻能夠重複。

  

     3.3,Redis命令 

        在關係型數據庫中,各類數據庫都有本身對應操做命令,通常而言都是通用的SQL語句,

        在redis中,也有一套專用的「SQL」語句,咱們通常稱其爲redis命令。   

        例如:
        在mysql中想要查詢某張表的數據
        Select * from tablename tablename爲表名
        在redis中想要查詢某個key存儲的數據
        Get keyname keyname爲key名
        Redis中有5種支持的數據類型,針對不一樣的數據類型,Redis有不一樣的操做命令,接下來將會一一介紹。

      Redis鍵命令

      

 

        Redis字符串命令

      

 

       Redis哈希(hash)命令

      

 

       Redis列表(list)命令

      

 

       Redis集合(set)命令

      

 

    

    Redis緩存特性

    性能極高 
      – Redis能讀的速度是110000次/s,寫的速度是81000次/s ,而關係型數據庫MYSQL讀寫速度僅爲2000次/s左右。

    豐富的數據類型
      – Redis支持二進制安全的 Strings, Lists, Hashes, Sets 及 Ordered Sets 數據類型操做。

    原子 性
      – Redis的全部操做都是原子性的,意思就是要麼成功執行要麼失敗徹底不執行。單個操做是原子性的。多個操做也支持事務,即原子性,經過MULTI和EXEC指令包起來。

    豐富的特性       – Redis還支持 publish/subscribe通知訂閱模式, key 過時等等特性。

相關文章
相關標籤/搜索