- データを固定長のブロックという単位に分割して保存するストレージ形態。物理ディスクに直接マウントされる形でOSからは通常のHDD・SSDと同じように見える
- 読み書きの遅延が最も低く、データベースや仮想マシンのOSディスクなど高I/O要件のシステムに最適だ
- AWS EBS・Azure Managed Disk・Google Persistent Diskが代表例。クラウドのブロックストレージはSANの役割をクラウドで提供する形態と理解すると分かりやすい
【深掘り】これだけ知ってればOK!
ブロックストレージがデータベースに向いている理由はランダムアクセスの速さだ。RDBMSはデータの更新・検索を頻繁に行うが、このとき必要なのはディスク上の特定の場所(ブロック)への直接アクセスだ。ブロックストレージはアドレスを指定して直接ブロックを読み書きできるため、この用途で最高性能を発揮する。
クラウドのブロックストレージではボリュームタイプによって性能とコストが異なる。AWS EBSの場合、汎用SSD(gp3)はコスト効率が良くWebサーバーやDBに広く使われる。プロビジョンドIOPS SSD(io2)はミッションクリティカルなDBに使う最高性能タイプだ。スループット最適化HDD(st1)はビッグデータ処理など大量シーケンシャルアクセスに向いている。
コストはオブジェクトストレージの数倍から数十倍になるが、それに見合う性能を提供する。EBS gp3は1GBあたり月額約12円(東京リージョン)。100GBのデータベース用ボリュームで月額1,200円程度だ。不要なボリュームが残ったままになるコスト無駄はクラウドコスト最適化でよく見つかる案件のひとつなので、定期的な棚卸しが重要だ。
よくある誤解
ブロックストレージはファイルシステムをOS側で用意する必要がある
ブロックストレージが提供するのはRAWなブロックデバイスだ。ext4やNTFSなどのファイルシステムをフォーマットして初めて使える。クラウドのEBSをアタッチしただけでは使えず、マウント作業が別途必要だ。
クラウドのブロックストレージは必ず1台のサーバーにしかアタッチできない
通常のEBS(Single Attach)は1台のEC2にしかアタッチできないが、EBS Multi-Attach機能を使うと複数のEC2インスタンスに同時アタッチできる。ただしio1/io2タイプのみ対応で、クラスタ構成での利用に限られる。
会話での使われ方

DBサーバーのストレージはEBS gp3にしてます。旧gp2より20%性能アップして値段は下がりました。
AWSインフラのコスト最適化レビューでエンジニアが改善事例を報告している場面。




本番DBのEBSスナップショット取得、毎日自動実行してますか?有事の際に前日の状態に戻せることを確認しておいてください。
インフラレビューで上長がスナップショット取得状況を確認している場面。




ブロックストレージってNASと何が違うんですか?
ブロックストレージはサーバーに直接マウントしてOSがディスクとして認識する形態、NASはネットワーク経由でファイル共有する装置という違いがあります。
【まとめ】3つのポイント
- 「DBが直接操作する高速・低遅延のブロックデバイス」:ブロックストレージはデータをブロック単位で管理し直接アクセスできるため、データベースや仮想マシンのOSディスクに最適だ
- ボリュームタイプを用途に合わせて選ぶことでコストを最適化できる:汎用SSD・プロビジョンドIOPS・スループット最適化HDDを性能要件に合わせて使い分けることが重要だ
- スナップショットをDR計画の基本に組み込む:定期的なスナップショット取得と復元テストをセットで行うことが、障害時のデータ保護の基礎になる
よくある質問
- QAWS EBSとは何ですか?
- A
Amazon Elastic Block Storeの略で、EC2インスタンス向けのクラウドブロックストレージです。SSD・HDD等の複数ボリュームタイプがあり、EC2に仮想ハードディスクとしてアタッチして使います。スナップショットでS3にバックアップできます。
- QブロックストレージとSSDは同じですか?
- A
異なります。SSDはフラッシュメモリを使った物理デバイスです。ブロックストレージはデータのアクセス方式(ブロック単位)を表すアーキテクチャです。クラウドのブロックストレージサービスは内部的にSSDを使っているものが多いですが、概念としては別です。
- QブロックストレージとNASどちらがいいですか?
- A
用途で使い分けます。データベースや仮想マシンのディスクにはブロックストレージが適しています。オフィスのファイル共有・複数PCからのアクセスにはNASが向いています。両方必要な環境では共存させます。
- Qブロックストレージとオブジェクトストレージの違いは何ですか?
- A
ブロックストレージはサーバーに直接マウントしてOSレベルで使う高速・低レイテンシのストレージです。オブジェクトストレージはHTTP経由でアクセスする大容量・低コストの保管庫です。DBにはブロックストレージ、画像・動画・バックアップにはオブジェクトストレージという使い分けが一般的です。
この用語と一緒に知っておきたい用語
| 用語 | この記事との関連 |
|---|---|
| ストレージ | ストレージとの関係を知ると全体像がつかみやすくなります。データを永続的に保存・記憶するための装置や仕組みの総称。記憶媒体・記憶装置とも呼ばれ、電源を切ってもデータが消えない永続的な記憶領域を指す |
| データ | 本記事のテーマと実務上セットで使われることが多い用語です。コンピュータが処理する数値や文字、画像といった事実や資料そのもの、それがデータだ |
| スナップショット | スナップショットを押さえると本記事の理解がさらに深まります。パソコンやサーバーなどの「ある瞬間の状態」を丸ごと写真のように保存したデータのことだよ! |
| データベース | データベースは関連分野でよく登場する重要キーワードです。データを効率よく蓄積・検索・更新・削除できるよう構造化して管理する仕組みの総称。専用エンジンを持ち大量データを高速操作できる |
| サーバー | サーバーを押さえると本記事の理解がさらに深まります。ネットワークを通じて情報やサービスを提供する側のコンピューターのこと。レストランで料理を運んでくれる給仕係(server)をイメージするとわかりやすいよ |
【出典】参考URL
https://aws.amazon.com/jp/compare/the-difference-between-block-file-object-storage/ :3種類のストレージ比較
https://www.softbank.jp/biz/blog/business/articles/202007/storage-difference/ :ブロックストレージの詳細


コメント