ディレクトリサイズとは
環境
- ONTAP 9
- ディレクトリメタファイル
回答
注記: この文脈における「ディレクトリサイズ」という用語は、特定のディレクトリ内のすべてのファイルの内容によって使用されるディスク容量の合計を指すものではありません。 むしろ、それは各ディレクトリ内のすべてのファイルのファイル名を格納するメタデータファイルのサイズに関するものです。
ディレクトリのサイズを理解するには、まずディレクトリが実際に何であるかを理解する必要があります。Unix系オペレーティングシステムには、一般的に3つの主要なファイルタイプがあります:
- 通常ファイル
- 特殊ファイル
- ディレクトリファイル
通常ファイルには、ユーザーやアプリケーションによって作成されたデータが含まれています。特殊ファイルについては、Linux/Unixにおけるファイルの種類について詳しく解説を参照してください。 この記事では、ディレクトリファイルについて説明します。
ディレクトリファイルとは何ですか?
ONTAP ファイルシステムは、すべてのファイルの名前、場所、およびその他のメタデータを追跡します。パフォーマンスを最大限に高めるため、ファイル名はディレクトリファイルと呼ばれる単一のインデックス付きメタファイルに格納されます。
注記:ファイルのメタデータ内容の例については、以下の「追加情報」を参照してください。また、 inodeとは何ですか?
ディレクトリファイルの内容には以下が含まれます:
- ファイル名
- CIFSで作成された場合のDOS 8.3名
- inumber
ディレクトリファイルのサイズを調べる方法
ディレクトリファイルのサイズは、単一ディレクトリ内に多数のファイルが存在する環境では重要になります。 最新のファイルシステムでは、長いファイル名とディレクトリ内の多数のファイルが可能です。 ファイル名の長さと単一ディレクトリ内のファイル数の両方が、ディレクトリファイルのサイズに影響します。
ディレクトリのファイルサイズを確認するには、クライアントから次のコマンドを使用します:
$ ls -l
-rwxr-xr-x 1 user group 98404 Nov 8 2021 application.png
drwxr-xr-x 3 user group 4096 Apr 13 2022 backup
-rw-rw-r-- 1 user group 2221823 Aug 30 2021 ems.log.0000000009.txt
-rwxr-xr-x 1 user group 1174298 Feb 12 2020 putty.log
drwxrwxr-x 4 user group 12288 Sep 17 2021 logs
- この出力の5列目には、各ファイルが使用している容量が表示されています。
- ハイライト表示されている項目は、ディレクトリファイルのサイズ(バイト単位)です。
- 新規作成されるディレクトリのデフォルトサイズは4096バイトです。
ディレクトリファイルにとって、どのくらいの容量が大きいとみなされるのでしょうか?
- ONTAP 9.14.1以降では、デフォルトのディレクトリファイルサイズは320MiBです。
- 以前のバージョンでは、デフォルトのサイズは2MiBです。
- デフォルトよりも大きいディレクトリファイルサイズは、大きいとみなされます。
- ONTAP 9.14.1以降では、ディレクトリサイズを最大1GiBまで調整できます。ディレクトリサイズを1GiB以上に設定した場合のシステムへのパフォーマンスへの影響を確認してください。(パフォーマンスへの影響が不明な場合は、テクニカルサポートにお問い合わせください。)
ONTAP は、1 つのボリューム内のすべてのディレクトリファイルが消費する容量をどこで計算しますか?
1つのボリューム配下のすべてのディレクトリのディレクトリファイル容量使用量は、コマンドvolume show-spaceからUser Data で集計されます。
ディレクトリファイルはFabricpoolクラウド階層に階層化されますか?
いいえ、ディレクトリファイルは常にFabricpool パフォーマンスティアに保持されます。
追加情報
- maxdir-sizeとは何ですか?
- 通常のファイルメタデータの例:
$ stat file.dat
File: file.dat
Size: 419430400 Blocks: 822432 IO Block: 65536 regular file
Device: 3bh/59d Inode: 99629125 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 1010/user) Gid: ( 80/ grp)
Context: system_u:object_r:nfs_t:s0
Access: 2017-01-16 04:54:15.115626000 -0800
Modify: 2013-01-09 02:48:00.000000000 -0800
Change: 2017-01-16 04:54:15.116631000 -0800
Birth: -
- ディレクトリファイルメタデータの例
$ stat fspopulate
File: fspopulate
Size: 4096 Blocks: 8 IO Block: 32768 directory
Device: 3bh/59d Inode: 89991994 Links: 4
Access: (2755/drwxr-sr-x) Uid: ( 1010/user) Gid: ( 80/ grp)
Context: system_u:object_r:nfs_t:s0
Access: 2022-05-30 03:45:53.110149000 -0700
Modify: 2017-01-16 04:54:15.538648000 -0800
Change: 2017-01-16 04:54:15.538648000 -0800
Birth: -