部屋とYシャツと私のような記事タイトルですみません。。。
今回は、ネットワークの基礎となる
- スループット
- レイテンシー
- IOPS
を紹介したいと思います。
インフラ構築をしているとよく出てくるキーワードですが、度々こんがらがってしまうため改めて学び直します。
お前ら何やねん
スループットとは
特定の時間にネットワークを実際に通過できるデータの平均量を指します。
つまり通信速度です。
5Gbps=5×1,000,000,000ビット/秒=5,000,000,000ビット/秒
1秒間に10億ビット通過できるんだ-と思いますが、ネットワーク内には様々なリソースがあるので、提供されるスペック通りの値が通過できるとは限りません。あくまで平均ね。
レイテンシーとは
リクエストを送信してから応答が返ってくるまでの遅延時間を指します。
ちょうわかりやすく言うと、「データの処理や通信がどれだけ迅速に行われるか」の指標のことです。
IOPSとは
ストレージやデータベースが1秒間に処理できる入出力操作の回数を指します。
IOPSはスループットとある程度、比例関係にあります。
- 小さいブロックサイズの場合、1回のIO操作で処理されるデータ量が少ないため、操作回数が多くなり、IOPSが増加する
- 大きなブロックサイズの場合、1回のIO操作で大量のデータを処理するため、IO操作回数が少なくなり、IOPSは減少しますが、スループットは向上する
3つの違いのまとめ
レイテンシー
- 嬉しい状態:低いほうが嬉しい
- 理由:
レイテンシーが低い(つまり遅延時間が短い)ほど、システムがより速く応答し、ユーザーが操作を行った際の待ち時間が少なくなります。
たとえば、Webページが速く表示されたり、データベースのクエリが迅速に実行されたりすることで、ユーザー体験が向上します。 - 例: ネットワークレイテンシーが低いと、Webサイトの応答が速くなります。
スループット
- 嬉しい状態: 高いほうが嬉しい
- 理由:
スループットが高いほど、システムが短時間で多くのデータやリクエストを処理できることを意味します。
特に、大量のデータを処理する場合や多くのユーザーが同時にアクセスするシステムにおいて、高いスループットはシステムの効率や全体のパフォーマンスを向上させます。 - 例: スループットが高いネットワークでは、1秒間に多くのデータを送受信でき、ダウンロードやストリーミングがスムーズに行えます。
IOPS
- 嬉しい状態: 高いほうが嬉しい
- 理由:
IOPSが高いほど、ストレージデバイスが1秒間に処理できる入出力操作の回数が多くなります。
これは、特にデータベースやファイルシステムなど、頻繁にデータの読み書きが発生するシステムにとって重要です。
高いIOPSは、より多くの入出力操作を短時間で処理できるため、パフォーマンスが向上します。 - 例: IOPSが高いSSDは、ディスクアクセスが多いアプリケーション(例えばデータベースクエリやログ書き込み)の性能を大幅に改善します。