我們如何在今天的生活中存儲、訪問和利用數據規則?

許多人每天需要花費大量的時間訪問數據,而我們訪問的數據主要存儲在中央服務器上。這種集中式的模式,統治着當今數據存儲的世界。隨着去中心化創新的蔓延,出現了一些有趣的替代方案。

區塊鏈技術徹底改變了金錢的概念,以及我們如何使用它的想法。在數據存儲方面,簡單地將數據存儲在區塊鏈上將很難確認,另外區塊鏈中數據的不可更改特性,並不是完全是一個優點。從另一方面說,以幾美元的價格在以太坊智能合約上存儲 1kb 數據,它的價格也是昂貴的。

令人感到高興的是,其它能夠顛覆我們現有存儲和訪問數據模式的,分佈式存儲技術正在建立。其中包括對等節點文件系統、分散式雲存儲和分佈式數據庫技術。

對等節點文件系統

IPFS:數據存儲世界最大的顛覆者!

行星際文件系統(IPFS)由 Protocol Labs (協議實驗室)創建,旨在解決當今統治網絡的超文本傳輸協議(HTTP)的一些缺點。它提出了一種基於對等網絡的差異化模型。

協議實驗室是一個用於網絡協議的研發公司,也是前 Y-Combinator 初創公司,其中所有項目都是開源項目。

基於 HTTP 的集中式模型效率不高,主要依賴於一臺計算機進行文件下載。而 IPFS 是基於一個更快速和高效的不同模型,是一種點對點的超媒體協議。

IPFS:數據存儲世界最大的顛覆者!

IPFS 中有兩個關鍵屬性。首先,它是一個分佈式文件系統;其次,它是一個版本化的文件系統,不僅可以存儲文件,還可以跟蹤它們的版本。這兩個屬性的組合是 IPFS 提出的新模型,與 HTTP 相比具有很多優點。

HTTP 是請求-響應協議。每臺計算機都會輸入自己的請求,然後連接到服務器進行檢索數據。在 HTTP 中訪問相同內容的計算機,與物理距離的遠近是不相關的。

IPFS:數據存儲世界最大的顛覆者!

IPFS 是如何運作的?

將文件添加到 IPFS 時,它們會被賦予一個加密哈希。這意味着當你查找文件時,可以要求網絡查找,存儲唯一哈希後面的內容的節點。唯一哈希充當地址,類似於在 HTTP 中鍵入網絡地址的方式。還應用了一個稱爲 IPNS 的分散命名系統,以便每個文件都具有一個可讀的名稱。

因此,它不使用 HTTP 中的位置地址,而是使用內容的表示(加密哈希)來訪問實際內容。通過使用此係統,IPFS 可以利用物理的鄰近性。如果一個生物醫學班的 100 名學生,都被告知訪問同一網頁,通過 HTTP 訪問他們都需要單獨連接到中央服務器;如果完全依賴於中央服務器來訪問內容,這可能會導致一些問題。

使用 IPFS,相同的節點之間可以相互提取數據。所需要的只是訪問數據的起點,即加密哈希。這就是 IPFS 如何利用物理距離,並實現比 HTTP 更高效的系統。

IPFS:數據存儲世界最大的顛覆者!

將數據存儲在加密哈希後面,這實際上是,允許網站將數據託管在客戶端瀏覽器上。客戶端是指,在客戶端 – 服務器關係中執行的操作。在 HTTP 中,是客戶端向中央服務器發送內容請求。在 IPFS 中,是客戶端尋找,由網絡中另一客戶端所託管內容的加密哈希。

區塊鏈中也使用加密哈希。在 IPFS 中,使用加密哈希值,是爲了向網絡請求文件時,可以找到存儲它的節點。而在區塊鏈中,加密哈希用於將每個新塊鏈接到前一個塊,以便如果一個節點要更改分類帳,則在更改分類帳點之後的每個塊也將被更改。這是區塊鏈技術的安全特性之一。

與區塊鏈技術相似,IPFS 也帶來了去中心化的一些好處,其中主要好處之一是沒有單一的失敗點。在 HTTP 中,如果服務器出現故障,則無法訪問內容。而在 IPFS 中,節點是分散的,一個節點的故障不會影響到整個網絡。

去中心化的另一個好處是沒有審查阻力。在服務器 -客戶端模型中,中央服務器可以輕鬆地審查或拒絕保留你的內容。如果網絡中至少有一個節點願意承載內容,那麼內容就會沒有審查阻力。

IPFS 的缺點之一是它只能提供靜態文件,這限制了 IPFS 託管內容的應用。例如,託管內容將無法接收來自用戶的請求,並根據服務器中的數據生成響應。想象一下,用戶希望看到最新的芭蕾舞劇還剩下多少座位,這種請求在 IPFS 中是無法進行的。

IPFS:數據存儲世界最大的顛覆者!動態數據示例

IPFS 的另一個缺點是需要保持在線以共享你的文件。由於加密哈希指向可以找到數據的方向,因此必須保持聯機狀態,以確保你的數據可以隨時進行訪問。

最後一點,IPNS 名稱不是非常受用戶歡迎,關於這一點問題目前正在解決中。雖然使用域名系統可以更受用戶歡迎,但這樣做會引入外部故障點。IPNS 將如下所示。

IPFS:數據存儲世界最大的顛覆者!IPNS 示例

對於想要深入研究構成 IPFS 的技術組件的朋友,下表包括主要組件及其相應的功能。

IPFS:數據存儲世界最大的顛覆者!

IPFS 提出了一個有趣的替代方案,它優於與 HTTP 的請求-響應模型。點對點協議帶來了與分散化相關的一些關鍵優勢,例如:沒有單點故障和審查阻力,物理鄰近度的利用,是 HTTP 模型無法利用的方面。

分散式雲文件存儲

對於那些使用過 Dropbox 的用戶來說,分散式雲存儲可以被認爲與其是相同的,除了內容是存儲在用戶的硬盤上,而不是在中央服務器上。用戶基本上出租了他們的硬盤空間,並且開發了許多加密技術以促進這種商業模式。

分散式雲存儲旨在實現分散的好處,例如沒有單點故障和審查阻力。在典型的集中模型(如 Google、Amazon 和 Dropbox 運行的服務)中,如果服務器出現問題,則可以限制對數據的訪問。在這些模型中,數據的隱私也值得懷疑。分散式模型沒有單點故障,可以提供對數據的無限制訪問,並使用加密來增強隱私。

但是,它也會帶來分散性的缺點,例如可伸縮性問題。就成本而言,僅僅在區塊鏈上存儲會很昂貴,但在這些分散的雲存儲模型中,許多已經開發出一種免費的市場模式,使其更加實惠。你可以對自己說,可以免費使用谷歌驅動器,但你需要權衡數據隱私的問題。在集中式模型中,公司擁有控制你的文件以及訪問它們的能力。

IPFS:數據存儲世界最大的顛覆者!

以太坊要想實現世界計算機的理念,需要存儲作爲基礎。雖然智能合約是應對分散式的方法,通過加密應對分散式信息傳遞,但 Swarm Network (羣集網絡)是分散存儲的願景。

IPFS:數據存儲世界最大的顛覆者!來自以太坊博客的圖表

與 IPFS 類似,文件通過其內容的哈希來尋址。但是,與 IPFS 的不同之處在於,由於是構建在以太坊的鏈上,它實際上是不可變的。IPFS 是可編輯的,因爲它使用分佈式哈希表和版本控制系統。

此外,在 IPFS 中,哈希指向可以定位數據的位置,而在 Swarm 中,哈希指向實際上是數據本身。

羣集網絡是如何工作的?它已經建立了可以分成兩大類的激勵機制,分別是帶寬激勵和存儲激勵。

帶寬激勵是通過 Swarm 帳戶協議(SWAP)設計的,包含:網絡中的每個節點設置、每塊數據的最高價格、以及提供的塊價格。每塊數據的最高價格是你準備爲存儲中的數據塊一共支付多少,而提供的塊是你爲傳遞數據塊而支付的價格。每個節點都需要保持均衡支付,因爲在此模型中,負債過多的節點將會形成不良聲譽,從而會導致激勵模型發揮作用。

存儲激勵是基於這樣的一種想法,即願意提供長期存儲的節點,需要提供了保證金。如果他們受到質疑,最終證明他們沒有存儲數據,他們將失去保證金。

雖然 Swarm 網絡帶來了分散化的好處,但是由於它與 blockcahin 進行深度整合,也將爲以太坊帶來侷限性。以太坊最大侷限之一是,吞吐量最大可達 15tps。

建立在以太坊區塊鏈上的另一個項目是 Storj。Storj 是一個開源軟件,任何人都可以自由分叉自己的版本。它由 Storj labs 創建,是一家營利性公司,經營着自己的版本,開發了強大的用戶基礎。他們收取使用其版本的費用,用戶從提供的網絡效果中獲取價值。

Storj 的關鍵技術組件包括加密、文件分片和分佈式哈希表。Storj 的目標是更快、更便宜、更私密。

文件分片需要在使用 Storj 上傳文件時,將整個文件分割成較小的碎片(稱之爲分片)。這樣做的潛在好處是,沒有任何一個位置存儲有整個文件。此外,只有上傳者知道分片的位置。訪問該文件需要一個私鑰,如果沒有此密鑰幾乎不可能找到分片。數據在上傳之前也被進行了加密,並且只有具有私鑰的用戶才能讀取,從而進一步增強了隱私。

在 Storj 中,文件分片的好處是雙重的,因爲它們可以增強隱私,也可以更快地訪問內容。與從中央服務器檢索一個大文件相比,一個文件的碎片可以同時從多個源檢索,使其更快。該過程如下所示。

IPFS:數據存儲世界最大的顛覆者!Storj 評論

Storj 制定了激勵措施,以確保數據的安全和網絡的正常運行。定期進行審覈,並通過接收小額款項以成功通過審覈。

IPFS:數據存儲世界最大的顛覆者!

Storj 是最廣泛採用的分佈式雲存儲項目之一。IPFS 正在開發自己的分佈式雲存儲項目 Filecoin,並設想一個免費的市場模式,使存儲費用更便宜。Storj 是最受歡迎的,它證明了自由市場模式對利率的有效性。Storj 也是用於參與生態系統的加密貨幣。

Storj 模式應用的侷限性是什麼?

假設你使用 Storj 存儲一個文件,並將數據拆分爲不同的分片,然後發送到不同的硬盤驅動器。如果其中有一個硬盤驅動器壞了,將使得內容無法訪問。出於這一原因,需要將這些分片(稱之爲奇偶校驗分片)進行復制,然後發送到其他硬盤驅動器。如果頻繁使用它,將減慢網絡速度。用戶可以自由選擇他們想要拆分的奇偶校驗分片數量,但隨着時間的推移,一些用戶丟失分片的概率還是會增加。

另一個弱點是 Storj 用戶爲租用的內容付費,因此如果租戶消失,用戶可能不再爲他們存儲的內容付費。

另一個分散式雲存儲選擇,Storj 的有效競爭對手,Sia。它是一個點對點存儲生態系統,任何人都可以租用或使用備用硬盤空間。Siacoin 是生態系統的加密貨幣,這是用於支付租用備用硬盤空間的費用。

在 Sia 中,你需要知道訪問該文件的人員和哈希,這是與 IPFS 相比是一條額外所需的文件信息。

Sia 有自己的區塊鏈。雖然 Storj 使用文件分片技術解決了可擴展性問題,但 Sia 正在嘗試使用該方法在整個網絡中達成共識。Sia 的共識機制是存儲證明,而工作證明則放在以太坊鏈上。這種具有不同共識機制的實驗,可能有助於解決與工作量證明相關的一些,可擴展性和可持續性問題。

如果在存儲數據時出現任何問題,或者主機未按其指示執行,將會受到處罰。這爲生態系統發揮應有的作用提供了貨幣激勵。處罰將在每次進行存儲操作時,開發的文件合同中指定,合同存儲在 Sia 自己的區塊鏈中。

Sia 的一些關鍵賣點是隱私增強技術元素和自由市場結構。在下表中,可以看到它在分散和成本方面,相對於集中式結構所具有的一些優勢。雖然,它尚未達到與 Storj 相同的採用水平,但 Sia 仍然爲大量數據存儲提供了更低的費率。

IPFS:數據存儲世界最大的顛覆者!

Sia 沒有帶來去中心化的好處之一是審查抵制制度,主機可以選擇拒絕存儲一些數據。這有助於 Sia 生態系統的道德要素,主機有權拒絕非法或可疑數據。

在吞吐量和可擴展性方面,Sia 的有效性依賴於存儲證明作爲共識機制的功效。共識機制的實驗仍然是一門新興的科學,工作證明在很大程度上被認爲是最安全的,時間將證明存儲證明是否是可行的替代方案。

分散式雲存儲正在利用,加密貨幣和區塊鏈技術爲數據存儲提供不同的模型。Filecoin 將成爲 IPFS 的分散式雲存儲選項。它被設想作爲自由市場,但它是否真的會以這種方式運作還有待觀察。Storj 是加密貨幣領域中最接近的比較,迄今爲止最廣泛採用。Storj 通過使用文件分片解決了吞吐量限制,並且還具有一些強大的隱私增強優勢。

分佈式數據庫技術

通過區塊鏈技術建模,BigchainDB 旨在成爲具有區塊鏈屬性的分佈式數據庫。BigchainDB 的結構是不可變的、分散的,併爲開發人員提供了一個構建應用程序的平臺。

BigchainDB 是否分散是一個很有爭議的問題。BigchainDB 建立在 RethinkDB 集羣之上。RethinkDB 優先考慮節點的可用性超過一致性。具體事項由第一個可用節點處理,然後在之後的階段將實現一致性。

IPFS:數據存儲世界最大的顛覆者!

這種系統架構實際上導致 BigchainDB 無法實現拜占庭容錯,一個惡意節點可能會崩潰整個網絡。

BigchainDB 犧牲了安全性和分散化的吞吐量,這與可擴展性三難困境(指一種特定的情形,有三種選擇,但任一個選擇都是無法接受或不想要的)是一致的。在分散式系統中,每個節點處理的每個事務,其三個屬性中只有兩個可以實現。三個屬性分別是塊生產的分散化、可擴展性和網絡的安全性。

IPFS:數據存儲世界最大的顛覆者!

在正常的區塊鏈中,存在一個吞吐量的問題,這使得用於數據存儲成爲了問題。BigchainDB 更像是一個私有區塊鏈,它提供了一些類似區塊鏈的元素,通過這些元素增加了吞吐量和低的延遲。真正的問題是,是否值得在安全性和去中心化之間進行權衡,並且通過權衡這些犧牲,我們不僅僅是首先使用集中式系統。

下表是 BigchainDB 如何證明其使用的案例優於傳統數據庫和區塊鏈。

IPFS:數據存儲世界最大的顛覆者!

儘管有關是否分散和安全方面的爭論,但 BigchainDB 一直都在積極發展。Ocean 是基於 BigchainDB 構建的一個協議,它是一個用於數據存儲和計算的標記化生態系統。

Ocean (海洋)協議設想了許多用於其生態系統的用例,目標是解開正在生成的大量數據,以影響人工智能(AI)行業。由於只有少數公司能夠正確的使用數據,以及擁有 AI 的能力,因此這些公司處於一個非常強大的位置。

當大量數據可用時,AI 的進展能夠提高六倍,並且隨着大量數據的解鎖,Ocean 協議設想 AI 的影響能夠橫跨多個行業,包括:自動駕駛汽車、醫療數據和計算機視覺等。Ocean 協議指出的一個優點是,許多數據所有者不信任與其數據的集中交換。將 BigchainDB 透明和不可變的分類帳特性用於交易,對於這一方面的問題將會有所幫助。

現在與未來的數據存儲

集中式服務器長期以來一直統治着數據存儲領域。雖然許多服務都是免費使用的,但需要權衡有關個人隱私泄露的問題。分散式模式旨在改善集中型模式的一些低效率,並幫助增強隱私安全。

分散式技術能否在數據存儲行業中大規模採用,仍有待觀察。提出的不同模式,包括:對等節點文件系統、分散式雲存儲和分佈式數據庫技術;其中一個關鍵限制是在可擴展性、安全性和分散性之間進行權衡。爲了提高吞吐量,分佈式系統通常需要犧牲安全性和分散性。在加密領域,提出了不同解決方案,包括:文件分片和改變共識機制。

這些分散式的系統,在其集中式系統之上提供了許多優勢。集中型模式仍然是當前的主導模式,但隨着越來越多的用戶和開發人員嘗試使用分佈式系統,分散式存儲模式將會是數據存儲的未來。