redisfs – Redis+FUSE 構建的檔案系統)

來源:互聯網
上載者:User

Redis 是高效的記憶體資料庫,FUSE 是Linux核心的一個模組,利用它可以用自訂的底層儲存建立自己的檔案系統(如之前提到過的MongoDB 的 gridfs-fuse)。本文要介紹的是一個甚至Redis儲存系統的檔案系統實現:redisfs

使用方法

安裝好redisfs後運行下面命令,指定Redis伺服器的host和port,指定掛載目錄,即可在此目錄下掛載一個以Redis作為儲存支援的檔案系統

redisfs --host=localhost --port=6379 --mount=/mnt/redis  [--read-only] [--debug] [--prefix=skx]

同步機制

redisfs 選擇redis的主要原因是想利用redis的高效能及其同步機制,作者提供了兩種方法用於構建兩個同步的檔案系統:

1.使用redisfs將兩個不同機器上的不同目錄mount到同一個redis

2.上面一種方式可能導致至少一個檔案系統與Redis不在同一台機器上,從而導致不必要的網路開銷。的方式是在不同的機器上,設定主從兩台Redis,再直接用redisfs 去 mount 原生Redis,資料同步通過Redis自己的同步機制去做,但這樣做的代價是在Slave對應的機器上的檔案系統就變成唯讀了。

快照功能

redisfs 提供一個對檔案系統做快照的功能,快照功能的實現非常簡單,只需要將當前Redis中儲存的所有key(相當於檔案名稱)掃描一次,並且複製到新到key上面即可。如下:

$ redisfs-snapsot --from=skx --to=copy

上面操作就是把所有skx開頭的key複製到一份為copy開頭的key,下面再使用mount參數就可以用這個快照構建一個新的檔案系統了,操作如下:

# mkdir /tmp/safe# redisfs --prefix=copy --mount=/tmp/safe

具體安裝使用方式請參見官方頁面:http://www.steve.org.uk/Software/redisfs/

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.