自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MemoryFS 存儲(chǔ)系統(tǒng)的一些構(gòu)想

存儲(chǔ) 存儲(chǔ)架構(gòu)
我們對(duì)存儲(chǔ)介質(zhì)的速度和容量的需求在不斷增長(zhǎng),總是追求更快、更經(jīng)濟(jì)、更大容量的存儲(chǔ)解決方案。這種需求的增長(zhǎng)將推動(dòng)市場(chǎng)平衡點(diǎn)的移動(dòng),催生新的需求,同時(shí)也促進(jìn)了存儲(chǔ)技術(shù)的創(chuàng)新與發(fā)展。

1. 使用內(nèi)存作為存儲(chǔ)介質(zhì)

圖片圖片

如上圖是存儲(chǔ)金字塔,展示了存儲(chǔ)介質(zhì)價(jià)格與速度的關(guān)系。

目前,企業(yè)之所以廣泛采用磁帶和磁盤作為存儲(chǔ)介質(zhì),主要是因?yàn)樗鼈兊膬r(jià)格優(yōu)勢(shì)。市場(chǎng)價(jià)格受市場(chǎng)供需影響,即便是價(jià)格較高的存儲(chǔ)介質(zhì),如果生產(chǎn)成本低廉,具有足夠大的市場(chǎng),生產(chǎn)過(guò)程中的良品率高,那么其市場(chǎng)價(jià)格也會(huì)降下來(lái)。

市場(chǎng)的平衡點(diǎn)在于,存儲(chǔ)介質(zhì)能夠滿足消費(fèi)者的需求,同時(shí)消費(fèi)者愿意支付的價(jià)格能夠覆蓋生產(chǎn)成本。然而,這種平衡并非一蹴而就,產(chǎn)能的投入需要較長(zhǎng)周期,而價(jià)格競(jìng)爭(zhēng)卻是瞬息萬(wàn)變,這種長(zhǎng)短周期的不匹配導(dǎo)致了市場(chǎng)價(jià)格的波動(dòng)。

我們對(duì)存儲(chǔ)介質(zhì)的速度和容量的需求在不斷增長(zhǎng),總是追求更快、更經(jīng)濟(jì)、更大容量的存儲(chǔ)解決方案。這種需求的增長(zhǎng)將推動(dòng)市場(chǎng)平衡點(diǎn)的移動(dòng),催生新的需求,同時(shí)也促進(jìn)了存儲(chǔ)技術(shù)的創(chuàng)新與發(fā)展。

將內(nèi)存作為存儲(chǔ)介質(zhì)存在兩大挑戰(zhàn):成本高昂和斷電后數(shù)據(jù)丟失。

價(jià)格的問(wèn)題,要交給需求,如果需求端大爆發(fā),內(nèi)存作為存儲(chǔ)介質(zhì)的價(jià)格就會(huì)降下來(lái)。掉電易失,可以從軟硬件層面解決。軟件層面,可以通過(guò)冗余、糾刪碼重建等方式提高數(shù)據(jù)的可靠性;硬件層面有英特爾的傲騰作為先烈可以借鑒。當(dāng)然,也可以不解決掉電易失的問(wèn)題,掉電易失只是在傳統(tǒng)場(chǎng)景下是缺點(diǎn),如果在一個(gè)需要保密的場(chǎng)景下呢?掉電易失,可能成為一個(gè)很好的解決方案。尋找新的場(chǎng)景、高附加值的需求,也是一個(gè)不錯(cuò)的思路。

基于以上考慮,我認(rèn)為直接使用內(nèi)存作為存儲(chǔ)介質(zhì),在未來(lái)是一個(gè)可選的方案。但這不意味著,會(huì)成為主流方案,而只是在某些場(chǎng)景下,會(huì)帶來(lái)很大的便利或收益。

2. 分布式的內(nèi)存存儲(chǔ)

如果僅僅只是在一臺(tái)設(shè)備上創(chuàng)建一個(gè)存儲(chǔ)區(qū)域,那么使用 tmpfs 就可以做到。

因此,分布式、支持橫向擴(kuò)展是 MemoryFS 的一個(gè)必要的特性。

圖片圖片

如上圖是 MemoryFS 的元數(shù)據(jù)與數(shù)據(jù)分離的存儲(chǔ)架構(gòu)。

直接使用 Redis 存儲(chǔ)元數(shù)據(jù),其實(shí)是一個(gè)非常不錯(cuò)的選擇。在使用 JuiceFS 社區(qū)版時(shí),我首選也是使用 Redis 作為元數(shù)據(jù)存儲(chǔ),Redis 只需要 1GB 的內(nèi)存就能夠支持約 2TB 的數(shù)據(jù)存儲(chǔ)。

另外一種方案是,使用 RocksDB 和 Raft 實(shí)現(xiàn)一個(gè)分布式的元數(shù)據(jù)存儲(chǔ),這樣會(huì)帶來(lái)更加便捷的部署、更加可定制的存儲(chǔ)方案。

3. 支持 POSIX 協(xié)議

在 Linux 系統(tǒng)上,支持 POSIX 協(xié)議的存儲(chǔ)能夠掛載到文件系統(tǒng)中,提供遠(yuǎn)程訪問(wèn)能力,能夠擴(kuò)展應(yīng)用場(chǎng)景。

而常見的支持 POSIX 協(xié)議的方式是使用 Fuse,JuiceFS、SeaweedFS 也都是基于 Fuse 提供的 POSIX 協(xié)議。

在 https://github.com/torvalds/linux/tree/master/fs 中可以看到一般的文件系統(tǒng) ext4、btrfs 等都是內(nèi)核中實(shí)現(xiàn)的。而 Fuse 提供了一種不用修改內(nèi)核,就能實(shí)現(xiàn)自定義文件系統(tǒng)的方法。

圖片圖片

如上圖,使用 Fuse 主要分為如下步驟:

  • 掛載到文件系統(tǒng)中。執(zhí)行 ./hello /tmp/fuse, 將文件系統(tǒng)掛載到 /tmp/fuse 中。圖中使用的是 libfuse 庫(kù),但其實(shí)也有其他語(yǔ)言庫(kù),比如 golang 的 https://github.com/hanwen/go-fuse。在 ./hello 程序中需要實(shí)現(xiàn)指定的接口,對(duì)接到外部的存儲(chǔ)介質(zhì)中。
  • 使用文件系統(tǒng)。執(zhí)行 ls /tmp/fuse,可以看到文件系統(tǒng)中的文件列表。在執(zhí)行命令時(shí),通過(guò) libc 進(jìn)行系統(tǒng)調(diào)用,經(jīng)過(guò)內(nèi)核中的 Fuse 模塊轉(zhuǎn)發(fā)給 hello 程序,然后 hello 程序響應(yīng) ls 命令對(duì)應(yīng)的文件系統(tǒng) API。

圖片圖片

如上圖,需要?jiǎng)?chuàng)建 MemoryFS Workers 組成的 Cluster 提供存儲(chǔ)服務(wù),使用時(shí),通過(guò)一個(gè)本地 Fuse 程序掛載到當(dāng)前目錄即可。

4. 總結(jié)

本篇主要是記錄一些構(gòu)想,將內(nèi)存作為存儲(chǔ)介質(zhì)對(duì)外提供存儲(chǔ)能力,主要內(nèi)容如下:

  • 內(nèi)存介質(zhì)作為存儲(chǔ)介質(zhì),在未來(lái)是一個(gè)可選的存儲(chǔ)方案
  • 分布式、支持橫向擴(kuò)展是 MemoryFS 的一個(gè)必要的特性
  • MemoryFS 需要支持 POSIX 協(xié)議,提供遠(yuǎn)程訪問(wèn)能力
責(zé)任編輯:武曉燕 來(lái)源: 陳少文
相關(guān)推薦

2024-01-09 13:36:44

存儲(chǔ)數(shù)據(jù)存儲(chǔ)

2018-09-29 14:08:04

存儲(chǔ)系統(tǒng)分布式

2022-12-27 09:56:34

架構(gòu)系統(tǒng)

2010-08-05 13:54:36

NFS協(xié)議

2020-03-04 17:37:09

存儲(chǔ)系統(tǒng)硬件層

2018-01-31 08:44:20

數(shù)據(jù)存儲(chǔ)存儲(chǔ)設(shè)備存儲(chǔ)系統(tǒng)

2018-01-19 08:35:47

存儲(chǔ)系統(tǒng)SAS

2017-07-04 10:58:57

SAN存儲(chǔ)網(wǎng)絡(luò)存儲(chǔ)系統(tǒng)架構(gòu)

2017-11-08 11:22:46

存儲(chǔ)趨勢(shì)系統(tǒng)

2017-07-10 09:02:24

NAS存儲(chǔ)云存儲(chǔ)

2020-02-03 09:09:23

機(jī)器學(xué)習(xí)ML深度學(xué)習(xí)

2013-03-18 10:24:50

系統(tǒng)架構(gòu)

2010-01-13 08:51:20

Windows 7系統(tǒng)開發(fā)

2010-05-10 15:41:38

Unix系統(tǒng)

2013-10-12 16:38:38

存儲(chǔ)虛擬化

2018-05-31 08:39:18

單機(jī)存儲(chǔ)系統(tǒng)

2017-10-24 05:20:13

推薦系統(tǒng)數(shù)據(jù)算法

2021-10-26 13:55:53

搞定系統(tǒng)設(shè)計(jì)

2018-01-19 08:54:18

存儲(chǔ)系統(tǒng)SILT

2011-08-12 14:01:21

SQL Server存儲(chǔ)過(guò)程
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)