Azure Storage の概要

Azure Storage プラットフォームは、最新のデータ ストレージ シナリオのための Microsoft のクラウド ストレージ ソリューションです。 Azure Storage は、クラウド内のさまざまなデータ オブジェクトに対して、可用性が高く、スケーラビリティ、持続性、安全性に優れたストレージを提供します。 Azure Storageのデータオブジェクトには、HTTPやHTTPSを通じてREST APIを通じて世界中どこからでもアクセスできます。 また、Azure Storage には、.NET、Java、Python、JavaScript、C++、Go を使ってアプリケーションやサービスを構築する開発者向けのクライアント ライブラリも用意されています。 開発者と IT プロフェッショナルは、Azure PowerShell と Azure CLI を使ってデータ管理や構成タスクのためのスクリプトを記述できます。 Azure portal と Azure Storage Explorer には、Azure Storage を操作するユーザー インターフェイス ツールが用意されています。

Azure Storage の利点

アプリケーション開発者と IT プロフェッショナルにとって、Azure Storage サービスには次の利点があります。

  • 持続性と高可用性。 冗長性により、一時的なハードウェア障害が発生した場合でも、データが安全に保たれます。 また、データ センターまたは地理的リージョン間でデータをレプリケートして、ローカルの大災害や自然災害からの保護を強化することもできます。 この方法でレプリケートされたデータは、予期しない停止が発生した場合でも高可用性を維持します。
  • セキュリティで保護されます。 このサービスはAzureストレージアカウントに書き込まれたすべてのデータを暗号化します。 Azure Storage では、データにアクセスできるユーザーをきめ細かく制御できます。
  • スケーラブル。 Azure Storage には、今日のアプリケーションのデータ ストレージとパフォーマンスに関するニーズを満たすために、高度にスケーラブルな設計が採用されています。
  • マネージド。 Azure では、お客様に代わって、ハードウェアのメンテナンス、更新プログラム、および重大な問題への対処が行われます。
  • アクセス可能。 Azure Storageのデータは、HTTPやHTTPSを通じて世界中どこからでもアクセスできます。 Microsoft では、.NET、Java、Node.js、Python、Go などのさまざまな言語の Azure Storage 用のクライアント ライブラリと、成熟した REST API を提供しています。 Azure Storage では、Azure PowerShell または Azure CLI によるスクリプトの実行がサポートされます。 Azure ポータルとAzure Storage Explorerは、データを操作するための簡単な視覚的ソリューションを提供します。

Azure Storage データ サービス

Azure Storage プラットフォームには、次のデータ サービスが含まれています。

  • Azure BLOB:テキストおよびバイナリ データのための高度にスケーラブルなオブジェクト ストア。 また、Data Lake Storage によるビッグ データ分析のサポートも含まれています。
  • Azure Files:クラウドまたはオンプレミスのデプロイ用のマネージド ファイル共有。
  • Azure Elastic SAN: Azure での SAN のデプロイ、スケーリング、管理、構成を簡略化する完全に統合されたソリューション。
  • Azure キュー:アプリケーション コンポーネント間の信頼性の高いメッセージングのためのメッセージング ストア。
  • Azure テーブル:構造化データのスキーマレス ストレージのための NoSQL ストア。
  • Azure マネージド ディスク: Azure VM のブロック レベルのストレージ ボリューム。
  • Azure Container Storage: コンテナー用にネイティブに構築された、ボリュームの管理、デプロイ、オーケストレーションのサービスです。

それぞれのサービスには、一意のアドレスを持つストレージ アカウントを通じてアクセスします。 作業を開始するには、「ストレージ アカウントの作成」を参照してください。

さらに、Azure には次の特殊なストレージが用意されています。

  • Azure NetApp Files: NetApp を利用したエンタープライズ ファイル ストレージ: エンタープライズ基幹業務 (LOB) およびストレージの専門家は、コードを変更せずに複雑なファイルベースのアプリケーションの移行や実行を簡単に行うことができます。 Azure NetApp Files は NetApp アカウントを介して管理され、NFS、SMB、およびデュアルプロトコル ボリュームを介してアクセスできます。 作業を開始するには、「NetApp アカウントを作成する」を参照してください。
  • Azure Managed Lustre: 高スループットと低待機時間を必要とする HPC ワークロードに最適な、高パフォーマンスの分散並列ファイル システム ソリューションです。

シナリオに使用するデータ サービスを決定する際のヘルプについては、Microsoft クラウド導入フレームワークで「ストレージ オプションを確認する」を参照してください。

Azure にデータを格納するためのオプションを確認する

Azure には、さまざまなストレージ ツールとサービスが用意されています。 シナリオに最適な Azure テクノロジを調べるには、「ストレージオプションを確認する」をご覧ください。

Azure Storage サービスのサンプル シナリオ

次の表では、Azure Storage のサービスを比較し、それぞれのシナリオ例を示しています。

特徴量 説明 いつ使用するか
Azure Files 業界標準のサーバー メッセージ ブロック (SMB) プロトコルネットワーク ファイル システム (NFS) プロトコル、および Azure Files REST API を介してどこからでもアクセスできる、フル マネージドのクラウド ファイル共有が提供されます。

Azure ファイル共有は、Windows、Linux、macOS のクラウドまたはオンプレミスのデプロイからマウントできます。
既に、ネイティブなファイル システム API を使用して、Azure で実行されている他のアプリケーションとの間でデータを共有しているアプリケーションをクラウドに "リフト アンド シフト" したい場合。

オンプレミスのファイル サーバーまたは NAS デバイスを置き換えるか、またはそれを補完したい場合。

多くの仮想マシンからアクセスする必要のある開発ツールとデバッグ ツールを格納する。
Azure NetApp Files 高度なデータ管理機能を必要とする、要求の厳しい、ハイパフォーマンスかつ低遅延のワークロードを処理できる、フル マネージドの高可用性かつエンタープライズ グレードの NAS サービスを提供します。 POSIX 準拠の Linux および Windows アプリケーション、SAP HANA、データベース、ハイパフォーマンス コンピューティング (HPC) インフラストラクチャとアプリ、エンタープライズ Web アプリケーションなど、移行が困難なワークロードがあります。

NFSv3、NFSv4.1、SMB3.1.x など、1 つのサービスで複数のファイル ストレージ プロトコルをサポートする必要があります。これにより、コードの変更を必要とせず、さまざまなアプリケーション リフトアンドシフト シナリオが可能になります。
Azure BLOB 非構造化データを大規模にブロック BLOB に格納してアクセスできるようにします。

エンタープライズ ビッグ データ分析ソリューション用の Azure Data Lake Storage もサポートされています。
あなたのアプリケーションがストリーミングやランダムアクセスのシナリオに対応できるようにしたい。

アプリケーションのデータにどこからでもアクセスできるようにする。

Azure 上にエンタープライズ Data Lake を構築し、ビッグ データ分析を実行する。
Azure Elastic SAN Azure Elastic SAN は、SAN のデプロイ、スケーリング、管理、構成を簡略化する完全に統合されたソリューションであり、高可用性などの組み込みのクラウド機能も提供します。 internet Small Computer Systems Interface (iSCSI) プロトコルを介してアクセスする複数の種類のコンピューティング リソース (SQL、MariaDB、Azure 仮想マシン、Azure Kubernetes Services など) とやり取りできる大規模ストレージが必要です。
Azure ディスク データを永続的に格納し、アタッチされた仮想ハード ディスクからアクセスできるようにします。 ネイティブなファイル システム API を使用して永続ディスクとの間のデータの読み取りと書き込みを行っているアプリケーションを "リフト アンド シフト" したい場合。

ディスクがアタッチされている仮想マシンの外部からのアクセスが不要なデータを格納する。
Azure コンテナ ストレージ Azure Container Storage は、ボリュームの管理、デプロイ、オーケストレーションを行うサービスで、Kubernetes と統合され、コンテナー用にネイティブに構築されています。 永続ボリュームを動的かつ自動的にプロビジョニングして、Kubernetes クラスターで実行されているステートフル アプリケーションのデータを格納できます。
Azure キュー アプリケーション コンポーネント間の非同期メッセージ キューを可能にします。 アプリケーション コンポーネントを分離し、非同期メッセージングを使用してそれらの間の通信を行いたい場合。

Queue Storage および Service Bus キューをそれぞれいつ使用するかに関するガイダンスについては、「Storage キューと Service Bus キューの比較」を参照してください。
Azure テーブル 構造化された NoSQL データをクラウドに格納し、スキーマなしの設計でキー/属性ストアを実現できるようにします。 Web アプリケーションのユーザー データ、アドレス帳、デバイス情報、サービスに必要なその他の種類のメタデータのような柔軟なデータセットを格納したい場合。

Table Storage と Azure Cosmos DB for Table をそれぞれいつ使用するかに関するガイダンスについては、「Azure Cosmos DB for Table と Azure Table Storage を使用した開発」を参照してください。
Azure Managed Lustre ハイ パフォーマンス コンピューティング (HPC) と AI ワークロード用のフル マネージドの従量課金制ファイル システムを提供します。 運用を簡素化し、セットアップ コストを削減し、複雑なメンテナンスを排除するように設計されています。 高スループットと低待機時間を必要とする HPC ワークロードを実行する必要があります。

基になるインフラストラクチャを管理する必要なく、クラウドで Lustre ワークロードを実行する必要があります。

Blob Storage

Azure Blob Storage は、Microsoft のクラウド用オブジェクト ストレージ ソリューションです。 Blob Storage は、テキスト データやバイナリ データなどの大量の非構造化データを格納するために最適化されています。

Blob Storage は、次の目的に最適です。

  • 画像またはドキュメントをブラウザーに直接配信する。
  • 分散アクセス用にファイルを格納する。
  • ビデオおよびオーディオをストリーミング配信する。
  • バックアップと復元、ディザスター リカバリー、アーカイブのためのデータを格納する。
  • オンプレミス サービスまたは Azure ホステッド サービスで分析するデータを格納する。

Blob Storage内のオブジェクトには、HTTPやHTTPSを通じて世界中どこからでもアクセスできます。 ユーザーまたはクライアント アプリケーションは、URL、Azure Storage REST APIAzure PowerShellAzure CLI、または Azure Storage クライアント ライブラリを介して BLOB にアクセスできます。 ストレージ クライアント ライブラリは、.NETJavaNode.jsPython など、複数の言語で利用できます。

また、クライアントは、SSH ファイル転送プロトコル (SFTP) を使用して Blob Storage に安全に接続し、ネットワーク ファイル システム (NFS) 3.0 プロトコルを使用して Blob Storage コンテナーをマウントすることもできます。

Blob Storage の詳細については、「Blob Storage の概要」を参照してください。

Azure Files

Azure Filesを使って、業界標準のServer Message Block(SMB)プロトコルNetwork File System(NFS)プロトコルAzure Files REST APIを使ってアクセス可能な高可用性ネットワークファイル共有を設定しましょう。 複数のVMが同じファイルを共有でき、読み書きの両方が可能です。 また、REST インターフェイスまたはストレージ クライアント ライブラリを使用してファイルを読み取ることもできます。

Azure Files と企業のファイル共有上のファイルとの違いの 1 つは、世界中のどこからでも、ファイルを指し、共有アクセス署名 (SAS) トークンを含む URL を使用して、ファイルにアクセスできることです。 SAS トークンは生成することができます。SAS トークンを使用することで、特定の期間にわたってプライベートな資産への特定のアクセスを許可できます。

ファイル共有は、多くの一般的なシナリオで使用できます。

  • 多くのオンプレミスのアプリケーションでファイル共有が使用されます。 この機能により、データを共有するそれらのアプリケーションを Azure に簡単に移行できます。 オンプレミスのアプリケーションで使用されているのと同じドライブ文字にファイル共有をマウントすることにより、ファイル共有にアクセスするアプリケーションの部分は、(変更があっても) 最小限の変更で動作します。

  • ファイル共有に設定ファイルを保存し、複数のVMからアクセスします。 複数の開発者が使うツールやユーティリティをファイル共有グループに保存し、誰もが見つけられ、同じバージョンを使うようにしましょう。

  • リソースログ、メトリクス、クラッシュダンプをファイル共有に書き込み、後で処理や分析に使います。

Azure Files の詳細については、「Azure Files の概要」を参照してください。

一部の SMB 機能はクラウドでは利用できません。 詳細については、「Features not supported by the Azure File service (Azure File Service でサポートされていない機能)」を参照してください。

Azure Elastic SAN

Azureのエラスティックストレージエリアネットワーク(SAN)は、大規模データベースやパフォーマンス集約型のミッションクリティカルアプリケーションの最適化と統合を支援します。 Elastic SAN は、SAN のデプロイ、スケーリング、管理、構成を簡略化する完全に統合されたソリューションであり、高可用性などの組み込みのクラウド機能も提供します。

Elastic SANは、大規模なIO集約ワークロードやSQLやMariaDBのような最上位データベース向けに設計されています。 ワークロードをAzure Kubernetes Serviceのような仮想マシンやコンテナでホスティングすることをサポートしています。 Elastic SAN ボリュームは、iSCSI プロトコルを介したさまざまなコンピューティング リソースと互換性があります。 Elastic SANの他の利点としては、簡素化された展開および管理インターフェースがあります。 単一のインターフェースから複数の計算資源のストレージ管理やコスト最適化が可能です。

Azure Elastic SAN の詳細については、「Azure Elastic SAN とは」を参照してください。

Azure コンテナー ストレージ

Azure Container StorageはKubernetesと統合され、実際のデータストレージには既存のAzure Storage製品を使用しています。 コンテナ向けに特化したボリュームオーケストレーションおよび管理ソリューションを提供します。 永続ボリューム用のストレージプールを作成することは、サポートされているバックアップストレージオプションのいずれかを選択できます。

Azure Container Storage には、次のような大きな利点があります。

  • ステートフル Pod を迅速にスケールアウトする
  • ステートフル ワークロードのパフォーマンスの向上
  • Kubernetes ネイティブのボリュームオーケストレーション

Azure Container Storage の詳細については、「Azure Container Storage とは」を参照してください。

Queue Storage

Azure Queueサービスを使ってメッセージの保存と取得を行います。 キューに許容されるメッセージ サイズは最大 64 KB で、1 つのキューに数百万件のメッセージを格納することができます。 キューを使って非同期処理するメッセージのリストを保存します。

例えば、お客様に写真をアップロードして各写真のサムネイルを作成してもらいたいと考えます。 もちろん画像のアップロードの際、サムネイルを作成するまでユーザーに待ってもらうことはできます。 代わりの方法は、キューを使うことです。 ユーザーからのアップロードが完了したら、メッセージをキューに書き込みます。 その後、Azure Functions でキューからメッセージを取得して、サムネイルを作成するのです。 この処理の各部分を個別にスケールさせることで、用途に合わせて調整する際のコントロールがより自由です。

Azure キューの詳細については、「キューの概要」を参照してください。

Table Storage

Azure Cosmos DB に、新たに Azure Table Storage が加わりました。 Azure Table Storage のドキュメントについては、「Azure Table Storage の概要」を参照してください。 既存の Azure Table Storage サービスに加えて、スループットに最適化されたテーブル、グローバルな分散、自動セカンダリ インデックスを利用できる新しい Azure Cosmos DB for Table プランが追加されています。 新しいプレミアム体験について詳しく知りたい方は、Azure Cosmos DB for Tableをご覧ください。

Table Storage の詳細については、「Azure Table Storage の概要」を参照してください。

Disk Storage

Azure マネージド ディスクは仮想ハード ディスク (VHD) です。 オンプレミスのサーバーにある物理ディスクを仮想化したものと考えることができます。 Azure マネージド ディスクは、ページ BLOB として格納されます。これは、Azure のランダム IO ストレージ オブジェクトです。 Azureはマネージドディスクを「マネージド」と呼びます。これはページブロブ、ブロブコンテナ、Azureストレージアカウントの抽象化だからです。 マネージドディスクを使う場合は、ディスクのプロビジョニングだけで済み、残りはAzureが処理します。

マネージド ディスクの詳細については、「Azure マネージド ディスクの概要」をご覧ください。

Azure NetApp Files

Azure NetApp Files は、エンタープライズ クラスでハイパフォーマンスの従量制課金ファイル ストレージ サービスです。 Azure NetApp Files は、既定で高い可用性を備え、あらゆる種類のワークロードをサポートします。 サービス レベルとパフォーマンス レベルの選択、NetApp アカウント、容量プール、ボリュームの作成、データ保護の管理を行うことができます。

Azure NetApp Files の詳細については、「Azure NetApp Files の概要」を参照してください。

Azure Files と Azure NetApp Files の比較については、「Azure Files と Azure NetApp Files の比較」を参照してください。

Azure Managed Lustre

Azure Managed Lustre は、HPC ワークロード用のスケーラブルで強力でコスト効率の高いストレージを提供するマネージド ファイル システムです。

Azure Managed Lustre の主な機能と利点は次のとおりです。

  • HPC ワークロードの高速化: 高スループットと低待機時間を必要とする HPC ワークロードに最適な、高パフォーマンスの分散並列ファイル システム ソリューションを提供します。
  • 専用のマネージド サービス: 基になるインフラストラクチャを管理する複雑さなしで、Lustre 並列ファイル システムの利点を提供します。 Azure Managed Lustre は、運用を簡素化し、セットアップ コストを削減し、複雑なメンテナンスを排除するフル マネージド サービスです。
  • Azure Blob Storage 統合: 最適なデータ配置とコスト管理のために、Azure Managed Lustre ファイル システムと Azure Blob Storage コンテナーを接続できます。 詳細については、Azure Blob Storage 統合 に関するページを参照してください。
  • Azure Kubernetes Service (AKS) 統合: 使用可能な AKS 互換 CSI ドライバーを使用してワークロードをコンテナー化できます。 詳細については、「 Kubernetes で Azure Managed Lustre を使用する」を参照してください。

ストレージ アカウントの種類

Azure Storage では、数種類のストレージ アカウントが提供されています。 各種類は異なる機能をサポートし、独自の価格モデルがあります。 ストレージ アカウントの種類の詳細については、Azure Storage アカウントの概要に関するページを参照してください。

ストレージ アカウントへのアクセスをセキュリティで保護する

Azure Storage に対するすべての要求が承認される必要があります。 Azure Storage では、次の認証方法がサポートされています。

  • BLOB、ファイル、キュー、テーブル データ用の Microsoft Entra 統合。 Azure Storage では、Azure ロールベースのアクセス制御 (Azure RBAC) を使用して、Blob、File、Table、 Queue サービスの Microsoft Entra ID による認証と認可をサポートしています。 Microsoft Entra ID を使用した要求の承認は、優れたセキュリティと使いやすさを実現するために推奨されます。 詳細については、「Azure Storage でデータへのアクセスを承認する」を参照してください。 Microsoft Entra アカウント 使用してファイル データへのアクセスを承認するには、「Azure portal でファイル データへのアクセスを承認する」を参照してください。
  • Azure Files での SMB を使用した ID ベースの認証 Azure Files では、オンプレミスの Active Directory Domain Services (AD DS)、Microsoft Entra Domain Services、または Microsoft Entra Kerberos (ハイブリッド ユーザー アカウントのみ) を介した SMB (サーバー メッセージ ブロック) 経由の ID ベースの認可がサポートされています。 詳細については、「SMB アクセスに対する Azure Files ID ベース認証サポートの概要」および「Azure Files のデプロイの計画」を参照してください。
  • 共有キーによる承認。 Azure Storage の BLOB、ファイル、キュー、テーブルの各サービスでは、共有キーによる承認がサポートされます。 共有キーによる承認を使用するクライアントは、ストレージ アカウントのアクセス キーを使用して署名されたすべての要求を含むヘッダーを渡します。 詳細については、共有キーによる承認に関するページを参照してください。
  • Shared Access Signature (SAS) を使用した承認。 Shared Access Signature (SAS) は、ストレージ リソースの URI に追加できるセキュリティ トークンを含む文字列です。 セキュリティ トークンには、アクセスの許可や間隔などの制約をカプセル化します。 詳細については、共有アクセス署名 (SAS) の使用に関するページを参照してください。
  • Azure NetApp Files を活用した Active Directory ドメイン サービス。 SMB ボリューム、デュアル プロトコル ボリューム、NFSv4.1 Kerberos ボリュームなどの Azure NetApp Files 機能は、AD DS と共に使用するように設計されています。 詳細については、「Azure NetApp Files に対応した Active Directory Domain Services サイトの設計と計画に関するガイドライン」を参照するか、Azure NetApp Files 用に ADDS LDAP over TLS を構成する方法を確認してください。

暗号化

Azure Storage には、2 種類の基本的な暗号化を使用できます。 セキュリティと暗号化の詳細については、「Azure Storage セキュリティ ガイド」を参照してください。

保存時の暗号化

Azure Storage の暗号化では、組織のセキュリティとコンプライアンスコミットメントを果たせるように、データの保護とセーフガードが行われます。 Azure Storageはすべてのデータをストレージアカウントに永続化する前に自動的に暗号化し、取得前に復号します。 暗号化、復号化、キー管理の各プロセスは、ユーザーに対して透過的です。 顧客はAzure Key Vaultを利用して自分の鍵を管理することも可能です。 詳細については、「保存データ向け Azure ストレージの暗号化」をご覧ください。

Azure NetApp Files のすべてのボリュームは、FIPS 140-2 標準を使用して暗号化されます。 「Azure NetApp Files のセキュリティに関するよくあるご質問」を参照してください。

クライアント側暗号化

Azure Storage のクライアント ライブラリには、クライアント ライブラリのデータをネット上で送信する前に暗号化し、応答を復号化する方法が提供されています。 クライアント側の暗号化によって暗号化されたデータは、保存時も Azure Storage によって暗号化されます。 クライアント側の暗号化の詳細については、Azure Storage での .NET によるクライアント側の暗号化に関するページを参照してください。

Azure NetApp Files のデータ トラフィックは、パブリック エンドポイントが提供されず、データ トラフィックは顧客所有の VNet 内に留まっているので、設計上、本質的にセキュリティが確保されています。 既定では、転送中のデータは暗号化されません。 ただし、(NFS または SMB クライアントを実行している) Azure VM から Azure NetApp Files へのデータ トラフィックは、Azure VM 間のトラフィックと同様に安全です。 NFSv4.1 と SMB3 による転送中のデータの暗号化は、必要に応じて有効にすることができます。 「Azure NetApp Files のセキュリティに関するよくあるご質問」を参照してください。

冗長性

データの持続性を確保するために、Azure Storage はデータの複数のコピーを格納します。 ストレージアカウントを設定する際に、冗長性オプションを選択してください。 詳細については、「Azure Storage の冗長性」と「Azure Files のデータ冗長性」を参照してください。

Azure NetApp Files は、99.99% の可用性を備えたローカル冗長ストレージを提供します。

Azure Storage との間でデータを転送する

Azure Storage へのデータの移動または Azure Storage からのデータの移動には、いくつかのオプションがあります。 どのオプションを選択するかは、データセットとネットワーク帯域幅のサイズによって異なります。 詳細については、「データ転送用の Azure ソリューションを選択する」を参照してください。

Azure NetApp Files には NFS ボリュームと SMB ボリュームがあります。 ファイル ベースのコピー ツールを使用すると、データをサービスに移行することができます。 詳細については、「Azure NetApp Files でのデータの移行と保護に関するよくあるご質問」を参照してください。

価格

データの保存やアクセス方法を決める際には、関わるコストも考慮してください。 詳細については、Azure Storage の価格に関するページを参照してください。

Azure NetApp Files クラウド ファイル ストレージ サービスは、プロビジョニングされた容量プールの容量に基づいて 1 時間単位で課金されます。 詳細については、Azure NetApp Files ストレージの価格に関するページを参照してください。

ストレージ API、ライブラリ、ツール

HTTPやHTTPSリクエストを行える言語なら、ストレージアカウント内のリソースにアクセスできます。 さらに、Azure Storageはいくつかの人気言語向けのプログラミングライブラリも提供しています。 これらのライブラリは、同期・非同期呼び出し、操作のバッチ処理、例外管理、自動再送信、運用動作などの細かい処理を管理することで、Azure Storageの多くの側面を簡素化します。 ライブラリは現在、次の言語およびプラットフォーム用が提供されており、その他についても準備中です。

Azure Storage データ API およびライブラリのリファレンス

Azure Storage 管理 API およびライブラリのリファレンス

Azure Storage データ移動 API

ツールとユーティリティ

次のステップ

Azure Storage を稼働させるには、ストレージ アカウントの作成に関するページを参照してください。