LinuCレベル4 システムアーキテクト 性能・拡張性の設計 問19
性能・拡張性の設計/性能見積もりと評価ストレージの性能要件を定義するにあたり、IOPS・スループット(MB/s)・レイテンシの違いについて整理している。説明として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル4 システムアーキテクトの出題範囲「性能・拡張性の設計」に対応。実際の試験問題ではありません)
- AスループットはI/O1件あたりの処理時間を表すため、利用者のリクエストに対する体感応答速度を改善するには、IOPSよりスループットを主要な目標指標として設定する
- Bスループット(MB/s)はIOPS×転送サイズで求まるため、転送サイズを大きくすれば同じIOPSでスループットが増える。したがってIOPSを維持しつつ転送サイズを大きくすれば常にスループットを改善できる
- CレイテンシはI/O1件あたりの処理時間であり、IOPSはそのレイテンシの逆数に等しい。したがってレイテンシを半分に短縮すれば、キューの深さにかかわらず必ずIOPSは2倍になる
- Dランダムな小I/Oが多いデータベースではIOPSが主要な指標になり、大きなシーケンシャルな転送が中心の動画処理や大規模集計ではスループットが主要な指標になる。業務の特性に応じて重視する指標を選ぶ
正解:D
解説
IOPSは単位時間あたりの入出力回数で、データベースのような小さなランダムアクセスが多い処理で重要な指標です。スループット(MB/s)は単位時間あたりのデータ転送量で、動画ストリーミングや大規模データ集計のような大きなシーケンシャルアクセスで重要です。レイテンシはI/O1件にかかる時間で、ユーザーが直接感じる応答性に影響します。これらは独立した指標であり、業務の特性を分析してどの指標がボトルネックになるかを見極めたうえで要件を定義することが重要です。
選択肢ごとの解説
- A誤り。スループットはI/O1件あたりの処理時間ではなく、単位時間あたりのデータ転送量(MB/s)です。利用者の体感応答時間に直結するのはレイテンシです。
- B誤り。転送サイズを大きくすれば同じIOPSで高いスループットが得られますが、ランダムアクセスでは転送サイズが大きくなるにつれI/O1件あたりの時間が増え、IOPSが下がります。スループットとIOPSはトレードオフの関係にあります。
- C誤り。IOPS = 1/レイテンシが成り立つのはキューの深さが1のシングルスレッドI/Oの場合のみです。キューの深さが大きい場合は複数I/Oが並行処理されるため、IOPS = キュー深さ/レイテンシになります。
- D正しい。ランダムな小I/Oが多いトランザクション処理ではIOPSがボトルネックになりやすく、大きなシーケンシャル転送ではスループットがボトルネックになります。業務特性に応じた指標の選択が重要です。