

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

# Amazon EFS 如何報告檔案系統和物件大小
<a name="metered-sizes"></a>

下列各節說明 Amazon EFS 如何報告檔案系統大小、檔案系統內的物件大小，以及檔案系統輸送量。

## 計量 EFS 檔案系統物件
<a name="metered-sizes-fs-objects"></a>

您可以在 EFS 檔案系統中檢視的物件包括一般檔案、目錄、符號連結和特殊檔案 (FIFOs和通訊端）。這些物件中的每一個都被計量為 2 kibibyte (KiB) 的中繼資料 (對其自己的 inode) 和一或多個 4 KiB 資料的增量。以下清單說明適用於不同類型檔案系統物件的計量資料大小：
+ **一般檔案**：一般檔案的計量資料大小是檔案的邏輯大小，四捨五入到下一個 4 KiB 遞增，只是它可能會低於稀疏檔案。

  *稀疏檔案*是一種在達到其邏輯大小之前，不會將資料寫入檔案所有位置的檔案。對於稀疏檔案，在某些情況下實際使用的儲存量少於四捨五入到下一個 4 KiB 遞增的邏輯大小。在這些情況下，Amazon EFS 會報告實際使用的儲存量做為計量的資料大小。
+ **目錄**：目錄的計量資料大小是用於目錄項目與存放該目錄項目資料結構的實際儲存量，會四捨五入到下一個 4 KiB 遞增。計量資料大小不包含檔案資料所使用的實際儲存量。
+ **符號連結和特殊檔案** – 這些物件的計量資料大小一律為 4 KiB。

當 Amazon EFS 報告物件佔用的空間時，透過 NFSv4.1 `space_used` 屬性，它將包括該物件目前的計量資料大小，但不包括其中繼資料的大小。您可以使用兩種公用程式來計量檔案的磁碟使用量，即 `du` 和 `stat` 公用程式。以下是如何在空檔案上使用 `du`公用程式的範例，其中包含以 KB 為單位傳回輸出`-k`的選項。

```
$ du -k file
4      file
```

下列範例示範如何在空白檔案上使用 `stat`公用程式來傳回檔案的磁碟用量。

```
$ /usr/bin/stat --format="%b*%B" file | bc
4096
```

若要計量目錄的大小，請使用 `stat` 公用程式。找出 `Blocks` 值，然後將該值乘以區塊大小。下面範例是泛如何在空白目錄上使用 `stat` 公用程式：

```
$ /usr/bin/stat --format="%b*%B" . | bc 
4096
```

## EFS 檔案系統的計量大小
<a name="metered-sizes-fs"></a>

EFS 檔案系統的計量大小包含所有 EFS 儲存類別中所有目前物件的大小總和。每個物件的大小是根據計量期間 (以小時為單位，例如從上午 8:00 至上午 9:00)，代表該物件大小的代表性抽樣而計算。

空白檔案佔用了其檔案系統計量大小的 6 KiB (2 KiB 中繼資料 \$1 4 KiB 資料)。檔案系統在建立時都擁有單一的空白根目錄，因此有 6 KiB 的計量大小。

特定檔案系統的計量大小，定義了該小時中的擁有者帳戶因檔案系統計費的使用量。

**注意**  
在該小時內的任何特定時間中，計算的計量大小並不代表檔案系統一致的快照。相反地，它代表在每小時內的不同時間點，存在於檔案系統的物件大小；或可能代表不同時間前的小時數。這些大小將會加總，以決定該小時的檔案系統計量大小。因此，當檔案系統沒有進行寫入時，檔案系統大小的計量大小最終將與儲存的物件計量大小一致。

您可以透過下列方式查看 EFS 檔案系統的計量大小：
+ 使用 [https://docs.aws.amazon.com/cli/latest/reference/efs/describe-file-systems.html](https://docs.aws.amazon.com/cli/latest/reference/efs/describe-file-systems.html) AWS CLI 命令和 [DescribeFileSystem](API_DescribeFileSystems.md) API 操作，回應包含下列項目：

  ```
  "SizeInBytes":{
              "Timestamp": 1403301078,
              "Value": 29313744866,
              "ValueInIA": 675432,
              "ValueInStandard": 29312741784
              "ValueInArchive": 327650
           }
  ```

  其中， 的計量大小`ValueInStandard`也用於判斷使用爆量輸送量的檔案系統的 I/O [輸送量基準和爆量](performance.md#throughput-modes)率。
+ 檢視 `StorageBytes` CloudWatch 指標，其會顯示每個儲存類別中資料的總計量大小。如需關於 `StorageBytes` 指標的詳細資訊，請參閱[Amazon EFS 的 CloudWatch 指標](efs-metrics.md)。
+ 在 Linux 中，在 EC2 執行個體終端提示上執行 `df` 命令。

  請勿在檔案系統的根目錄上使用 **du**命令進行儲存計量，因為回應不會反映用於計量檔案系統的完整資料集。

**注意**  
`ValueInStandard` 的計量大小也可用來判斷您的 I/O 輸送量基準和爆量率。如需詳細資訊，請參閱[爆量輸送量](performance.md#bursting)。

### 計量不常存取和封存儲存類別
<a name="metered-sizes-IA"></a>

EFS 不常存取 (IA) 和封存儲存類別以 4 KiB 遞增計量，每個檔案的最低計費費用為 128 KiB。IA 和封存檔案中繼資料 （每個檔案 2 KiB) 一律以標準儲存類別存放和計量。小於 128 KiB 的檔案支援僅適用於太平洋時間 2023 年 11 月 26 日下午 12：00 或之後更新的生命週期政策。IA 和封存儲存體的資料存取以 128 KiB 遞增計量。

您可以使用 `StorageBytes` CloudWatch 指標來檢視每個儲存類別中資料的計量大小。指標也會顯示 IA 和封存儲存類別中小檔案四捨五入所耗用的位元組總數。如需檢視 CloudWatch 指標的相關資訊，請參閱 [存取 Amazon EFS 的 CloudWatch 指標](accessingmetrics.md)。如需關於 `StorageBytes` 指標的詳細資訊，請參閱[Amazon EFS 的 CloudWatch 指標](efs-metrics.md)。

## 計量輸送量
<a name="metering-throughput"></a>

Amazon EFS 對讀取請求輸送量的計量速率是其他檔案系統 I/O 操作的三分之一。例如，如果您要實現每秒 30 MiB (MiB/s) 的讀取和寫入輸送量，則讀取部分會計為 10 MiB/s 的有效輸送量，寫入部分會計為 30 MiB/s 的有效輸送量，因此綜合輸送量為 40 MiB/s。根據消費率調整的綜合輸送量會反映在 `MeteredIOBytes` CloudWatch 指標中。

### 計量彈性輸送量
<a name="metering-elastic-throughput"></a>

為檔案系統啟用彈性輸送量模式時，您只需為從檔案系統讀取或寫入的中繼資料和資料量付費。使用彈性輸送量模式計量器和 計費中繼資料的 EFS 檔案系統讀取為讀取操作，中繼資料寫入為寫入操作。中繼資料操作在前 4 KiB 之後以 1 KiB 遞增計量。資料操作在前 32 KiB 之後以 1 KiB 遞增計量。

**注意**  
雖然彈性輸送量旨在根據您的輸送量彈性擴展，但我們建議您透過使用 CloudWatch (MeteredIOBytes) 監控指標和用量提醒作為操作最佳實務的一部分來實作適當的控管。這可協助您維持最佳資源使用率，並保持在規劃的操作參數內。如需詳細資訊，請參閱[使用 Amazon CloudWatch 監控指標](monitoring-cloudwatch.md)。

### 計量佈建輸送量
<a name="metering-provisioned-throughput"></a>

對於使用佈建輸送量模式的檔案系統，您只需支付啟用輸送量的時間。Amazon EFS 會測量每小時啟用一次佈建輸送量模式的檔案系統。對於佈建輸送量模式設定為不到一小時時的計量，Amazon EFS 會使用毫秒精確度計算時間平均值。