

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 如何計量 S3 檔案
<a name="s3-files-metering"></a>

S3 檔案是連結至 S3 儲存貯體的共用檔案系統，旨在提供低延遲的檔案存取，同時保持成本與作用中工作集成正比。檔案系統會維護儲存貯體中物件的檢視，並代表您將檔案系統操作智慧地轉換為有效的 S3 請求。當您透過檔案系統使用特定檔案和目錄時，相關聯的檔案中繼資料和內容會放置在檔案系統的高效能儲存體中，特別是受益於低延遲存取的部分。許多讀取操作完全繞過檔案系統，以 S3 GET 請求率直接從 S3 儲存貯體提供資料，無需 S3 檔案資料費用。您的授權資料一律會保留在您的 S3 儲存貯體中。當您寫入資料時，資料會存放在檔案系統的高耐用性高效能儲存體中，然後同步回 S3 儲存貯體，讓檔案系統和 S3 儲存貯體在兩個方向上保持一致。

使用 S3 檔案時，您需要為檔案系統高效能儲存上的部分作用中資料支付儲存費用，並在讀取和寫入檔案系統的高效能儲存體時支付資料存取費用。此頁面說明如何測量每個維度，以便您了解和最佳化成本。如需依 AWS 區域定價，請參閱 [Amazon S3 定價](https://aws.amazon.com/s3/pricing/)。

## 如何計量檔案系統儲存體
<a name="s3-files-metering-storage"></a>

當您存取資料時，檔案系統會隨需將部分檔案中繼資料和內容載入檔案系統的高效能儲存，提供快速讀取，而不會複製整個資料集。您可以設定檔案大小閾值 （預設 128 KiB)，以決定哪些檔案存放在高效能儲存體中。等於或低於此閾值的檔案大部分受益於低延遲存取。超過閾值的檔案會直接從 S3 儲存貯體串流，而且不會產生 S3 檔案儲存費用。在可設定的時段 (1 – 365 天，預設 30 天） 內未存取的資料會自動從高效能儲存過期。您為存放在高效能儲存體上的部分作用中資料支付儲存速率。一般而言，這部分很小，因為大型檔案直接從 S3 儲存貯體串流，過時的資料會自動過期，而且只有小型、延遲敏感的檔案會儲存在高效能儲存體中。高效能儲存體的最低可計費檔案大小為 10 KiB。

## 如何計量資料存取
<a name="s3-files-metering-data-access"></a>

您支付中繼資料操作和檔案系統高效能儲存的讀取和寫入的資料存取費用。即使資料存放在檔案系統的高效能儲存體上，大型檔案讀取 (1 MiB 或更大） 一律會直接從 S3 儲存貯體串流。S3 已針對高輸送量讀取進行最佳化，而高效能儲存則針對低延遲的小型檔案存取進行最佳化。直接讀取會產生 S3 GET 請求和 S3 檔案中繼資料讀取 (4 KiB)，無需支付檔案讀取費用。背景同步操作也會產生資料存取費用和 S3 請求費用。將資料匯入至高效能儲存體會產生寫入費用，而將變更匯出回 S3 儲存貯體會產生讀取費用。

## 如何從檔案系統計量資料存取
<a name="s3-files-metering-operations"></a>

S3 檔案會測量每個檔案系統操作的讀取或寫入，並套用至檔案或中繼資料。每個操作都有最小計量大小，然後四捨五入至下一個 1 KiB 增量。這表示每項操作都屬於四個類別的其中之一或兩個：資料讀取、中繼資料讀取、資料寫入或中繼資料寫入。例如，讀取檔案會同時計量為資料讀取和中繼資料讀取，而重新命名檔案則會計量為中繼資料讀取和中繼資料寫入。不會將單一操作計量為兩個以上的類別。

**高效能儲存中的檔案讀取**是以資料讀取的大小計量，每個讀取操作至少 32 KiB。

**高效能儲存體的檔案寫入**是以寫入資料的大小計量，每個寫入操作至少 32 KiB。

**中繼資料讀取**的計量大小下限為 4 KiB，並套用為 S3 檔案讀取。中繼資料讀取操作範例包括列出目錄和檢視檔案屬性。

**中繼資料寫入**會以 4 KiB 的最小大小計量，並套用為 S3 檔案寫入。中繼資料寫入操作範例包括建立或刪除檔案和目錄、重新命名、變更許可，以及呼叫 `fsync`。

## 如何測量直接從 S3 儲存貯體的串流
<a name="s3-files-metering-s3-reads"></a>

S3 檔案串流會在兩種情況下直接從 S3 儲存貯體讀取：檔案的資料不會儲存在高效能儲存體中，或讀取值為 1 MiB 或更大，即使資料也位於高效能儲存體中。此設計反映了每個儲存層的強度。S3 儲存貯體已針對高輸送量進行最佳化，而檔案系統已針對低延遲存取進行最佳化。

對於小型檔案 （預設為小於 128 KiB)，S3 檔案會以非同步方式將資料匯入至高效能儲存，以便以低延遲提供後續讀取。對於直接儲存貯體串流，您需要支付 S3 GET 請求和 S3 檔案中繼資料讀取 (4 KiB) 的費用，無需支付檔案讀取費用。

## 如何計量儲存貯體同步
<a name="s3-files-metering-sync"></a>

S3 檔案會自動讓檔案系統和連結的 S3 儲存貯體保持同步。同步計量方式為檔案讀取、檔案寫入和 S3 請求費用。如需詳細資訊，請參閱[了解同步的運作方式](s3-files-synchronization.md)。

**將資料匯入檔案系統：**當 S3 根據您的設定將資料從 S3 儲存貯體複製到高效能儲存體時，操作會計量為檔案系統寫入。當您第一次存取目錄、讀取未存放在高效能儲存體的檔案，以及當 S3 檔案反映直接對 S3 儲存貯體所做的變更時，就會發生匯入寫入。計量大小是寫入高效能儲存和中繼資料寫入的資料量。

**匯出變更至 S3 儲存貯體：**當 S3 檔案將檔案系統變更複製回 S3 儲存貯體時，操作會計量為檔案系統中繼資料和檔案讀取。只有從高效能儲存讀取的資料才會計入此費用。例如，如果您將資料附加至檔案，S3 檔案會使用 `UploadPartCopy` 來避免在附加之前將整個物件匯入高效能儲存體。這可最佳化您的高效能儲存成本。

**重新命名和移動操作：**S3 儲存貯體原生不支援目錄或重新命名。在 S3 檔案系統中顯示為目錄的項目，是由儲存貯體中的物件金鑰共用的常見字首，而 S3 物件是不可變的。因此，當您重新命名或移動檔案時，S3 檔案會使用更新的金鑰 （以 S3 PUT 請求計量） 將資料複製到新物件，並刪除原始物件。同步會計量為中繼資料讀取和根據資料位置的檔案讀取。如果檔案資料未存放在高效能儲存體，則只會套用 4 KiB 中繼資料讀取。對於檔案重新命名或目錄移動，S3 檔案會針對該字首下的每個物件重複此copy-and-delete。如需詳細資訊，請參閱[了解重新命名和移動操作的影響](s3-files-synchronization.md#s3-files-sync-rename-move)。

**檔案資料過期：**在 1 到 365 天 （預設 30 天） 的可設定時段內未存取的檔案資料會自動從高效能儲存過期。過期不會產生資料存取或中繼資料費用。

**中繼資料更新：**您的檔案系統中繼資料 (inodes) 會反映連結 S3 儲存貯體的內容。隨著儲存貯體變更，中繼資料會更新，以與儲存貯體的目前狀態保持一致。存取目錄的中繼資料永遠不會過期。您可以使用 Inodes CloudWatch 指標來監控中繼資料用量。中繼資料過期不會產生任何費用。

## 計量範例
<a name="s3-files-metering-examples"></a>

**第一次列出大型目錄**

當您首次列出目錄時，S3 檔案會匯入該目錄中所有檔案的中繼資料。每個檔案的中繼資料匯入會計量為 4 KiB 寫入。根據您的匯入組態 （預設 128 KiB)，S3 檔案也會預先擷取該目錄中小型檔案的資料，並將其複製到檔案系統的高效能儲存體，以最佳化最低延遲。每個檔案的資料匯入都會以檔案大小 （最低 32 KiB) 計算為寫入。您可以設定匯入規則來控制哪些檔案具有其資料匯入。如需詳細資訊，請參閱[自訂 S3 檔案的同步](s3-files-synchronization-customizing.md)。

**讀取未存放在高效能儲存體的小型檔案**

S3 檔案串流直接從 S3 儲存貯體讀取到用戶端，並以非同步方式將資料匯入到檔案系統的高效能儲存體，因此未來的讀取速度更快。這會計量為檔案系統讀取傳輸的資料大小 （最低 32 KiB)。將資料非同步匯入檔案系統的高效能儲存體時，會以傳輸的資料大小進行寫入計量。當您從檔案系統讀取其資料已過期的檔案時，會遵循類似的程序。當檔案從高效能儲存體過期時，不會產生任何檔案系統操作費用。

**寫入檔案系統**

所有檔案寫入都存放在高效能儲存體上，並以最小 32 KiB 的資料大小進行計量。S3 檔案會等待一段時間的非作用中寫入活動 (60 秒），以彙總相同檔案的連續變更，然後再複製到 S3 儲存貯體。快速寫入是在單一 S3 PUT 中擷取，而不是為每個個別變更產生新的物件版本。這可同時降低 S3 請求成本和檔案高效能儲存成本。此儲存貯體同步計量為檔案系統讀取，用於從高效能儲存體讀取資料，以及 S3 PUT 請求。