IOPS(Input/Output Per Second)はストレージシステムの性能を評価するための指標で、これは1秒あたりに行える読み取りまたは書き込み操作の数、すなわち「処理の数」を表します。
データ処理の基本単位
ファイルシステムのブロックサイズはデータ処理の基本単位となります。一度の操作で処理できるデータ量が大きいほど、一秒あたりに処理できるデータの総量(すなわち、ストレージシステムのIOPS)は増えます。
Linuxのext4ファイルシステムとWindowsのNTFSファイルシステムは、デフォルトでブロックサイズを4KBとして設定しています。これは一般的なファイルサイズとディスク利用効率のバランスがとれているからです。
大きなブロックサイズは一度に処理できるデータ量を増やしますが、小さいファイルを保存する際にはディスクスペースが浪費される可能性があります。しかし、特定のワークロードによっては、ブロックサイズを調整することが有益な場合もあります。
ファイルサイズの影響
ファイルサイズが大きいと、一秒あたりに処理できるファイルの数(すなわち、ストレージシステムのIOPS)は減ります。例えば、1操作あたりに4KBのデータを処理できるシステムで、4KBのファイルを処理する場合は、そのシステムのIOPSは1秒あたり15000ファイルとなります。しかし、8KBのファイルを処理する場合、そのシステムのIOPSは1秒あたり7500ファイルになります。
オペレーティングシステムの影響
オペレーティングシステム(LinuxやWindowsなど)は直接的にIOPSに影響を与えませんが、ストレージシステム全体の構成要素(CPUの性能、ネットワークの帯域幅など)は影響を与えます。したがって、IOPSはストレージデバイスの性能を反映する指標であり、その理論上の最大値は1操作あたりの処理データ量と操作数(IOPS)によって決まります。
これらのポイントを理解しておけば、ストレージシステムの性能指標であるIOPSとその影響要素についての基本的な理解が得られます。