本頁面提供 FlexCache 功能的總覽。
關於 FlexCache
NetApp FlexCache 可加快資料存取速度、縮短 WAN 延遲時間,並降低讀取密集型工作負載的 WAN 頻寬成本,特別是當用戶端重複存取相同資料時。建立 FlexCache 磁碟區時,該磁碟區會做為現有 (原始) 磁碟區的遠端快取。這個快取只會儲存來源磁碟區中經常存取的熱資料。
當 FlexCache 磁碟區收到所含熱門資料的讀取要求時,回應速度會比原始磁碟區更快,因為資料傳輸到用戶端的距離較短。如果 FlexCache 磁碟區收到存取頻率較低的冷資料讀取要求,就會從原始磁碟區擷取所需資料並儲存,然後處理用戶端要求。後續對該資料的讀取要求,就會直接從 FlexCache 磁碟區提供。第一次要求後,資料就不再需要透過網路傳輸,也不會從負載過重的系統提供。
應用程式可以寫入 FlexCache 磁碟區,但這些寫入作業會傳送至原始磁碟區,以維持快取一致性。
將 FlexCache 與 Google Cloud NetApp Volumes 整合後,您就能在 Google 網路中佈建快取磁碟區,提升混合雲環境的效能。這項功能可將內部部署資料中心的資料快取至雲端,支援工作負載遷移至混合雲。
NetApp Volumes 中的磁碟區無法做為來源磁碟區。
FlexCache 具有下列特性:
寫入行為
FlexCache 可確保您從來源或任何快取讀取的資料一律為最新版本。如要在可將資料寫入來源或任何快取的環境中管理寫入作業,FlexCache 提供下列策略來處理這些寫入作業。
Write-around
預設快取設定為「Write-around」。建議用於讀取密集型工作負載的環境,或只寫入小型檔案的環境。
資料寫入 FlexCache 磁碟區時,寫入作業會傳遞至原始磁碟區。快取會在來源確認寫入作業後,回報寫入作業已完成。 寫入檔案會使快取副本失效,快取會在下次存取時再次擷取檔案。
這項策略可為快取資料提供類似區域網路的讀取延遲。不過,寫入輸送量取決於與來源的網路連線。如果來源與快取之間的網路發生故障,使用者仍可存取快取中的資料。
回寫
回寫功能僅適用於特定工作負載。可快速寫入大型檔案,如果工作負載會對多個檔案進行大量小型寫入作業,就不建議使用回寫功能,因為管理來源與所有快取之間資料一致性的負擔,會大幅降低效能。
啟用 FlexCache 的回寫功能前,請先參閱 ONTAP FlexCache 回寫指南,瞭解架構的影響,並確認您的環境符合文件中記載的工作負載設定檔。除非您能確認工作負載適合寫回,否則建議使用「寫入迴避」。
使用者可以選擇啟用回寫支援功能。啟用寫回功能後,用戶端就能以類似 LAN 的效能,將大量資料寫入快取。 快取會將這些變更傳送至來源。由於用戶端寫入快取的速度可能超過資料傳送至來源的速度,因此快取會暫時儲存變更,直到變更完全排清至來源為止。在用戶端寫入檔案期間,來源和其他所有快取都會封鎖該檔案的讀取呼叫,直到寫入作業完成為止。
回寫策略可為快取資料提供類似 LAN 的讀取和寫入效能。不過,如果快取或來源失去連線,所有讀取和寫入作業都會遭到封鎖。
因存取時間更新而導致快取失效
ONTAP 提供名為 -atime-update 的磁碟區層級欄位,可管理使用 READ、READLINK 和 READDIR 讀取的檔案和目錄存取時間更新。
更新來源或快取磁碟區的存取時間,可能會觸發檔案失效,導致快取效能降低,檔案存取速度緩慢且延遲時間較長。如要避免這種情況,請使用 ONTAP volume modify -atime-update 指令,在來源磁碟區上停用存取時間更新。如果需要存取時間反映最近的讀取作業,請使用 volume modify -atime-update-period 指令定義一段時間,在這段期間內停止更新存取時間。舉例來說,如果將值設為 86400 秒,存取時間就只會每天更新一次。
NetApp Volumes 中的 FlexCache 磁碟區會從來源繼承 -atime-update 設定,這可能會增加快取失效次數。因此,建議您停用來源磁碟區的存取時間更新。
全域檔案鎖定
全域檔案鎖定功能會對所有快取和原始磁碟區中的檔案,強制執行拒絕讀取和專屬位元組範圍鎖定。如果工作流程必須嚴格執行這些鎖定作業,才能維持資料一致性或避免存取衝突,請啟用全域檔案鎖定。
注意事項
只有在快取與來源之間有可靠的連線時,才啟用全域檔案鎖定。連線不穩定可能會延遲或暫停修改作業,如果 FlexCache 磁碟區處於離線狀態,則可能會導致逾時。
效能影響:啟用全域檔案鎖定功能會增加延遲時間,因為每次快取讀取作業都會觸發對來源的鎖定驗證要求,進而增加往返時間 (RTT)。
可用性影響:如果快取磁碟區離線,所有其他快取磁碟區都會遭到封鎖,無法讀取檔案,且在所有 FlexCache 磁碟區恢復連線前,系統會暫停對來源磁碟區的修改。
由於全域檔案鎖定功能可能會影響系統效能和可靠性,因此除非工作流程明確需要,否則請保持停用狀態。
CIFS 變更通知
SMB 通訊協定提供機制,可將其他用戶端對磁碟區所做的變更通知 SMB 用戶端。這樣一來,Windows 檔案總管等應用程式就能更新檢視畫面,不必輪詢磁碟區。這項選用功能適用於快取,互動式使用者可透過 Windows 檔案總管存取 SMB 磁碟區上的檔案。否則應停用這項功能,以減少通知負載。
快取預先填入
FlexCache 會在首次從來源讀取資料時快取資料,藉此加快讀取存取速度,並確保快取一致性,讓來源和所有快取保持同步。因此,初始檔案存取作業的讀取效能與 WAN 類似,但後續讀取作業的速度與本機讀取作業一樣快。
如果您知道快取中需要哪些特定資料,可以使用快取預先填入功能。預先填入功能可讓您指示快取在首次使用前擷取特定檔案和資料夾,加快首次存取時的讀取速度。
如要啟動預先填入工作,您必須提供快取檔案或目錄路徑清單。您也可以選擇啟用遞迴,擷取子目錄中的所有內容。
預先填入作業的執行時間會因預先填入的資料量,以及快取與來源之間的網路速度而異。FlexCache 可讓您監控預先填入作業的狀態,瞭解作業是否仍在執行中或已完成。