Azure Managed Service Column <Azure運用コラム>

Azure Storage とは

Category: 実践編

2020.10.14

はじめに

今回は、Azure Storage(Azureストレージ)サービスについて紹介します。

ストレージサービスはクラウドの根幹をなすサービスであり、どこのクラウドでも提供しているサービスです。 Azure でも同様のサービスを提供しており、既にご利用の方も多いかと思います。 しかし、Azure ストレージは複数のストレージサービスを提供するプラットフォームであることをご存知無い方も多くいらっしゃるかもしれません。

本記事では、Azureで利用できるストレージサービスについて、どのような特徴があるのか、また、料金体系についても言及していきます。

1. Azure Storage(Azureストレージ)サービスとは?

Microsoft Azureでは、保存するデータの種類や目的に応じて、様々なストレージサービスが提供されています。それらのストレージサービスはSaaSのように利用できるため、高可用性、セキュリティ、持続性、高度なスケーラビリティ、および冗長性を備えています。どのようなサービスがあるのか、具体的に見ていきましょう。

1-1. Azure Files

1-1-1. サービスの概要

Azure Storageサービスの一つであり、フルマネージドのファイルストレージです。セキュリティ性の高い安全なファイルストレージとして利用できます。オンプレミスのファイルストレージとちがい、SaaSとして提供されるため、ハードウェアやOSの管理が不要になっています。そのため、容量監視や拡張作業などの運用のコストを大幅に下げることができます。

1-1-2. ファイルストレージとは?

エクセルやワードなどのソフトで作成したデータを、「フォルダ」といった形式で、階層的に管理・保存できるストレージのことです。保存の際にはファイル名、作成日、サイズ、データの種類などのデータと一緒に保存されます。普段オフィスから利用し、仕事で作成したファイルを保存・共有したい場合はファイルストレージが利用されます。

1-1-3. Azure Filesのユースケースと料金

オンプレミスのファイルサーバーの移行先としての利用が可能です。また、Azure File Syncというオプションを利用し、オンプレミス上のファイルサーバーに格納されたデータをバックアップとしてAzure Filesに格納しておくといった利用方法も可能です。これにより、オンプレミスのファイルサーバーが破損等をおこしても、業務継続性を維持することができます。Azure Filesの料金体系は従量課金となっており、選択するストレージオプション(PREMIUM、トランザクション最適化、ホット、クール)と、保存するデータ量(ギガバイト単位)に依存します。

1-2. Azure Disk Storage

1-2-1. サービスの概要

Azure Virtual Machinesを起動する為にアタッチする、ブロックストレージサービスです。性能順に4種類(Ultra Disk>Premium SSD Managed Disks>Standard SSD Managed Disks>Standard HDD Managed Disks)から選択できます。
また、Azure仮想マシン専用に特化しAzureによって管理されている管理ディスク(マネージドディスク)と、後述のストレージアカウントで管理する非管理ディスク(アンマネージドディスク)の2種類があります。

1-2-2. ブロックストレージとは?

ブロックストレージとは、ボリュームという記憶領域を分割し、『ブロック』という単位で保存を行うストレージのことです。オンプレミスにおけるサーバについているハードディスクが、クラウド環境における1つのブロックストレージに該当すると考えると良いでしょう。

1-2-3. Azure Disk Storageのユースケースと料金

基本的にAzure VMと併用して利用します。料金はディスクの種類とサイズで決まり、基本的には性能に比例してコストも高くなります。本番環境や高スループットが必要なシステムについては、コストが少々かかりますが、Ultra DiskやPremium SSD Managed Disksを利用すると良いでしょう。それ以外のケースはStandard SSD Managed Disks、Standard HDD Managed Disksを選択するとコスト効率が良いです。

1-3. Azure Blob Storage

1-3-1. サービスの概要

Azure Blob Storageは、Azureのオブジェクトストレージサービスであり、ログデータやテキストファイルといった様々なデータをクラウドに保管することができます。ストレージに保管されるデータを「BLOB」と呼び、BLOBの入れ物を「コンテナー」と呼びます。AWS(Amazon Web Services)におけるS3のバケットはコンテナーに該当します。

1-3-2. オブジェクトストレージとは?

ファイルストレージとよく似ていますが、格納している1つ1つのデータに対して一意なURLの発行が可能です。そのため、Webサーバの代わりに使う、配信用動画を保存しておく、といった利用が可能です。

1-3-3. Azure Blob Storageの3つのオプションとユースケース

Azure Blob Storageは、通常のBlob Storageと、Hot/Cold/Archiveのオプションが存在しています。それぞれのオプションのユースケースは以下の通りです。

  • Hot…頻繁にアクセスされるデータ。配信用画像や動画などに向いています。
  • Cool…アクセスされる頻度は低いものの、少なくとも30日以上保管されるデータ。利用しないログデータなどに向いています。
  • Archive…ほとんどアクセスされず、少なくとも180日以上保管され、取り出すときに数時間かけてもいいデータ。古い監査ログなどに向いています。

1-3-4. Azure Blob Storageの冗長性

Azure Blob Storageは、冗長性を選択することができます。選択できる冗長性のオプションとしては、LRS/ZRS/GRSの3種類があります。

  • ローカル冗長ストレージ(LRS)
    保存されたデータは、保存先のプライマリリージョン内で冗長化されます。最も低コストです。
  • ゾーン冗長ストレージ(ZRS)
    保存されたデータは、プライマリリージョン内3つのAzure可用性ゾーン間でコピーされます。
  • geo冗長ストレージ(GRS)
    高コストですが、リージョン障害からデータを保護できます。保存されたデータは、プライマリリージョン内でコピーされた後、数百キロ以上物理的に離れたセカンダリリージョンに非同期的にコピーされます。

また、これに加え、『読み取り専用オプション』というオプションも付与することで、値段を低減することができます。保存するデータの重要性や、要件に応じて選択しましょう。

1-4. Azure キュー

1-4-1. サービスの概要

Azure キューは、メッセージングサービスです。システム間でデータ連携を行う際に、データを一時的に保管しておく機能を提供します。

1-4-2. メッセージングサービスとは?

メッセージングサービスとは、システム間のデータのやり取りを安全かつ確実に行う機能を提供するサービスです。現在、様々なITシステムは、オープン系といい、数台~数十台のサーバが連携しあって1つのシステムを構築しています。しかし、安全にデータのやり取りができないと、他のサーバの処理がエラーになるおそれがあり、場合によってはシステム全体が停止してしまう、ということも珍しくありません。そのようなリスクを防ぐためにメッセージングサービスが存在しています。

1-4-3. Azure キューのユースケースと料金

システム間で大量のデータをやり取りする場合や、銀行の取引データなど、欠損すると困るデータをやり取りする場合に利用すると良いでしょう。料金はキューにため込んだデータ量と、キューの操作回数に応じて課金されます。

1-5. Azure テーブル

1-5-1. サービスの概要

AzureにおけるNoSQLデータストア機能を提供しています。

1-5-2. NoSQLとは?

AzureにおけるNoSQLデータストア機能を提供しています。

NoSQLはNot only SQLの略で、RDBMS以外のデータベースシステムを指します。RDBMSとは、エクセルで作成する表のように、どの列にどのようなデータが格納されているかが明確に決められているデータベースのことです。一方でNoSQLは、別名キーバリューストアといい、商品1=ラーメン、商品2=カレー というようなシンプルなデータを保管します。NoSQLは通常のデータベースと比べ、非常に高速にデータのやり取りが行える、という特徴があります。

1-5-3. Azure テーブルのユースケースと料金

AzureにおけるNoSQLデータストア機能を提供しています。

アプリのセッション情報や、IoTのセンサーデータといった、高速で更新が行われるデータの保存に利用すると良いでしょう。料金は、保存しているデータ量とアクセス(読み書き)回数に応じて課金されます。

1-6. Azure Data Lake Storage

1-6-1. サービスの概要

Azure Data Lake Storageは、Azure Blob StorageにHadoop(データ分析用ファイルシステム)との接続機能や、高可用性といった機能が追加された、データ分析に特化したストレージサービスです。データについては99.99999999999999% (シックスティーンナイン) のデータ耐久性が保証されており、格納したデータが破損しないようになっています。

1-6-2. データレイクとは?

データ分析用に様々なデータを保存しておく場所をデータレイクといいます。データレイクにはログデータや、業務で擁するファイルといった様々なデータを保存しておき、それらのデータを分析できるように適宜加工して、データウェアハウスなどで分析を行います。

1-6-3. Azure Data Lake Storageのユースケースと料金

主に、ビックデータを分析するためのデータレイクとして利用されています。データ分析を行いたい場合は、BLOBよりもこちらを利用すると良いでしょう。料金は、ストレージ容量とトランザクション件数により課金されます。

2. ストレージアカウントとは?

ストレージアカウントとは、Azure Storageの管理単位です。これまで説明してきた、BLOB、Files、Queue、Table、Diskといった各種ストレージサービスへのアクセスは、ストレージアカウントによって制御されます。
つまり、Azure Storage を使用するためには、ストレージアカウントの作成が必要で、各種ストレージサービスへのアクセスはストレージアカウントを通して行います(ただし、Disk Storage の管理ディスク(マネージドディスク)を除く)。

ストレージアカウントの作成では、ストレージのパフォーマンスレベルの選択や冗長性確保のためのオプションなどを選択します。以下にストレージアカウントの作成例を簡単に示します。

2-1. ストレージアカウントの作成方法

まずは試しに、ストレージアカウントを作ってみましょう。

Azure ポータルから [ストレージアカウント] の画面を開き、[追加] ボタンをクリックします。

[基本] 画面にて設定を入力します。[ストレージアカウント名] には、Azure 内で一意な名前を指定する必要があります。 また、[レプリケーション] では冗長化レベルを細かく指定することができます。もちろん、冗長化レベルが高いほど、料金がかかります。今回はテスト目的ですので、”ローカル冗長ストレージ” を指定します。

[ネットワーク] では、ストレージアカウントに対するネットワークアクセスを指定します。どこからでもアクセスさせることも、特定の IP アドレスのみからアクセスさせることも、Azure 内の VNet からのみアクセスさせることも可能です。今回は、誰でもアクセスできるように [パブリック エンドポイント] を指定します。

[データ保護] 及び [詳細] については、次回以降のコラムで紹介します。今回はデフォルトのままスキップしましょう。最後に、[作成] をクリックして、完了です。

3. おわりに

Azureのストレージサービスは多種多様なサービスが存在しています。目的に合わせて使い分けることや、冗長性などの適切な選択を行うことで、Azure上に構築したITシステムをコスト効率よく利用することができます。サービスの使い分けやオプションの選択に悩んだ際には、経験豊富なベンダーに依頼するのも良いでしょう。

次回以降のコラムでは、作成したストレージアカウントを利用して、それぞれのサービスについて詳細を紹介します。

Tag: Azure Storage

関連記事

Contactお問い合わせ

お見積もり・ご相談など、お気軽にお問い合わせください。

single.php