平行檔案系統

已完成

NFS 是從企業逐漸發展而來的。 其設計旨在處理規模不斷增長的同時檔案存取。 但使用 NFS 解決方案來取得的效能和規模有上限。 另外還有一些工作負載的類別需要對檔案進行更好的平行存取,包括多個同時處理序寫入至檔案某個區段的能力。

在過去二十年間,大量讀取及寫入的需求大幅增加。 平行檔案系統解決方案是加速最大高效能工作負載的主要選擇。 平行檔案系統源自於超級運算中心。 它們現在已廣泛部署於各種案例中。 例如,主要石油與天然氣公司所使用的震測處理及判讀解決方案,以及基因資料的二級/三級分析。

此單元提供平行檔案系統的輕量處理。 如果您已執行此類工作負載,您可能很熟悉這些解決方案的驅動因素、需求與架構。 分散式 NAS 解決方案之間有一個灰色區域,可提供 NFS 和平行檔案系統。 使用平行檔案系統可能更符合您的需求。

完成此單元之後,您將更熟悉平行檔案系統的主要功能。

平行檔案系統過去一直都是一個完整的功能類別,需要具備應用程式 I/O 的深度知識。 此資訊可協助您建立理解,而非專業知識。

分散式 NAS (NFS) 與平行檔案系統的比較

分散式 NAS 與平行檔案系統都是共用檔案系統。 多個用戶端會同時讀取檔案、將檔案寫入並鎖定、可以修改中繼資料等等。

您可以透過新增或升級儲存體硬體技術、新增前端伺服器以調整用戶端存取規模,或改善網路連線能力,來調整這兩個系統的規模。

比較網路連接儲存裝置與平行檔案系統架構的圖表。

平行 I/O

平行檔案系統會將檔案分成不同的區塊或等量,然後將這些檔案分散到多部儲存體伺服器上。 有分散式檔案系統可等量處理資料。 差別在於,平行檔案系統接著會透過與裝載儲存體伺服器本身通訊,直接向用戶端公開等量。 等量處理可讓您透過標準分散式 NAS 系統進行大量平行 I/O。 使用最常見的擴增 NAS 環境執行的 NFS 用戶端必須透過單一伺服器存取檔案。 當用戶端存取單一伺服器時,若「同時要求」數目增長超過了伺服器可處理的範圍,就會造成問題。 此外,可處理平行存取及進行等量處理的平行檔案系統方法讓此類檔案系統非常適合需要跨大量同時用戶端存取大型檔案的工作負載。

以下是三個主要的平行檔案系統:

  • IBM 的 GPFS,稱為 Spectrum Scale
  • Lustre,其為開放原始碼,但有一些商業實作
  • BeeGFS

這些系統會以不同方式實現平行 I/O。 GPFS 使用稱為「網路存放裝置 (NSD)」且連線到高效能存放區域網路 (SAN) 的伺服器。 因此,GPFS 伺服器具有原始磁碟 I/O 作為其支援儲存體。 BeeGFS 有許多與 Lustre 相同的架構元件,但也具備強固的分散式中繼資料架構。 BeeOND (BeeGFS On Demand 的簡稱) 可讓您啟用使用每個用戶端之儲存體的隨選 BeeGFS 環境。 此類暫存檔案系統環境可用於高載緩衝處理。

不過,在這兩種情況下,平行檔案系統可透過新增更多儲存體伺服器來調整規模,進而提供更多平行 I/O 給用戶端。 用戶端總計數可能很大,範圍可達數萬。

中繼資料

NFS 用戶端會直接與 NFS 伺服器連接,NFS 伺服器會提供中繼資料資訊並擷取用戶端的資料。 您必須根據用戶端數量和預期的流量速率來調整伺服器元件的大小。 此元件可能會成為瓶頸。 NAS 廠商可以實作一些中繼資料最佳化,但大部分的 NFS 實作都無法辨識個別的中繼資料服務。

相比之下,平行檔案系統通常會實作策略,更妥善地調整用戶端資料存取規模。 例如,Lustre 會實作個別的中繼資料伺服器 (MDS)。 用戶端會從該系統擷取所有中繼資料。 Lustre 用戶端可以直接存取指定檔案所在的儲存體伺服器,而且可以讀取/寫入多個平行執行緒。 這種方法可讓架構根據已部署的儲存體伺服器數目調整頻寬。

區塊大小

我們稍早已在 NFS 的內容中討論過區塊大小。 平行檔案系統區塊大小可能大於 NFS 區塊大小。 NFS 用戶端的預設 rsize/wsize 通常是 64,000。 例如,Lustre 的區塊大小單位為 MB。 這個較大的大小有兩種效果。 首先,大型檔案的讀取/寫入在平行檔案系統中更勝一籌。 但是,當檔案大小很小且檔案數目很大時,平行檔案系統幾乎就沒有優勢。

簡化

執行 NFS 的分散式檔案系統解決方案很容易就能針對常見的使用案例進行設定並執行。 就像任何系統一樣,它們可以針對效能進行微調,包括根據工作負載處理用戶端伺服器區塊大小 (rsize/wsize)。

平行檔案系統通常會在大規模環境中針對複雜的工作負載運作。 它們更可能需要設定及微調,以確保有足夠的效能與規模。

部署考量

Azure 提供數個您可下載來使用的平行檔案系統供應項目。 您可以移至 Azure Marketplace 來查看選項,其中包括 BeeGFS 與 Lustre (搜尋 Whamcloud)。您也可以在標準的 Linux 虛擬機器上安裝 Lustre,或使用在 Azure 快速入門網站上找到的 Azure Resource Manager (ARM) 範本。

檢定您的知識

1.

哪一個選項反映了平行檔案系統的絕佳使用方式?