计量:Amazon EFS 如何报告文件系统和对象大小 - Amazon Elastic File System
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

计量:Amazon EFS 如何报告文件系统和对象大小

下面的章节介绍 Amazon EFS 如何报告文件系统大小和文件系统内对象的大小。

计量 Amazon EFS 文件系统对象

您可以在 Amazon EFS 系统中查看的对象包括常规文件、目录、符号链接和特殊文件(FIFO 和套接字)。其中的每个对象按照 2 千位二进制字节 (KiB) 元数据(对于其 inode)以及一个或多个 4 KiB 数据增量进行计量。以下列表说明了不同类型的文件系统对象的计量数据大小:

  • 常规文件 – 常规文件的计量数据大小是舍入到下一个 4 KiB 增量的文件逻辑大小,但稀疏文件可能较小。

    稀疏文件 具有这样一种特点:在达到其逻辑大小之前,不会将数据写入文件的全部位置。对于稀疏文件,在某些情况下,使用的实际存储小于舍入到下一个 4 KiB 增量的逻辑大小。在这些情况下, Amazon EFS 将使用的实际存储报告为计量的数据大小。

  • 目录 – 目录的计量数据大小是用于目录条目和保存这些条目的数据结构的实际存储,舍入到下一个 4 KiB 增量。计量的数据大小不包含文件数据使用的实际存储。

  • 符号链接和特殊文件 – 这些对象的计量数据大小始终为 4 KiB。

当 Amazon EFS 通过 NFSv4.1 space_used 属性报告用于对象的空间时,它包括对象的当前计量数据大小,但不包括其元数据大小。您可以使用以下两个实用程序测量文件的磁盘使用情况:dustat 实用程序。下例说明了如何对空文件使用 du 实用程序,利用 -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

计量 Amazon EFS 文件系统

Amazon EFS 文件系统的计量大小包括 Standard 和 IA 存储类别中所有当前对象的大小之和。每个对象的大小根据表示计量小时内的对象大小的代表性取样计算得出。例如,从上午 8 点到上午 9 点这一个小时时间。

例如,空文件对其文件系统计量大小贡献 6 KiB (2 KiB 元数据 + 4 KiB 数据)。在创建时,文件系统有一个空的根目录,因此计量大小为 6 KiB。

特定文件系统的计量大小定义这一小时内针对该文件系统对所有者账户计费的使用量。

注意

计算的计量大小不表示文件系统在该小时内的任何特定时间的一致快照。相反,它表示每小时内的不同时间(也可能是前一小时)在文件系统中存在的对象的大小。这些大小的总和确定该小时的文件系统计量大小。因此,文件系统的计量大小最终与没有在文件系统中写入内容时存储的对象的计量大小一致。

您可通过以下方式查看 Amazon EFS 文件系统的这一计量大小:

  • 使用开发工具包、HTTP 或 AWS CLI 调用 DescribeFileSystems 操作

  • 对于 AWS 管理控制台中列出的每个文件系统,查看文件系统表。

  • 在 Linux 中,可在 EC2 实例的终端提示符下运行 df 命令。

    请使用 df 命令,而不是 du 命令。不要在文件系统的根目录中使用 du 命令以进行存储计量。这些结果不会提供完整数据。

注意

Standard 存储类别的计量大小还用于确定您的 I/O 吞吐量基准值和突发速率。有关更多信息,请参阅 随突增模式扩展的吞吐量

Infrequent Access 的计量

Infrequent Access (IA) 存储以 4 KiB 为增量进行计量。IA 文件元数据(每个文件 2 KiB)始终存储在 Standard 存储类别中并在 Standard 存储类别中计量。IA 存储的数据访问以 1 MiB 为增量进行计量。