SASからMicrosoft AzureのBlobストレージ内データにアクセスする方法(第1回)
近年、クラウドベンダーが提供するサービスが充実し、より多くのクラウドサービスが誕生してきました。しかし、一つのニーズに対して、複数のサービスを選択できるようになってきているものの、どのサービスが最適なのかを判断することは逆に難しくなってきていると考えられます。最近、SASを活用しているお客様から、「Microsoft社のAzureを使っていますが、これからクラウドにデータを移行して、安くて使い勝手なストレージサービスは何かありませんか」と聞かれたこともありました。 このブログシリーズでは、クラウド上のストレージサービスの一種であるMicrosoft Azure CloudのBlobストレージサービスの概要を紹介した上で、SAS ViyaからそのBlock Blobストレージに格納されているデータへアクセスする方法をご紹介させていただきます。 このブログシリーズは合計2回です。今回のブログでは、まず特定の一つファイルへのアクセス方法をご紹介します。次回のブログでは、より汎用的なアクセス方法、つまり、Blobストレージを一つのファイルシステムとして、SASサーバと連携し、一度に複数のデータにアクセスする方法をご紹介します。ぜひ最後まで、お付き合いいただければと思います。 第1回:https://blogs.sas.com/content/sasjapan/2020/10/01/sas-azure-blob-1/ 第2回:https://blogs.sas.com/content/sasjapan/2020/10/05/sas-azure-blob-2/ Blobストレージとは何か? まず、Blobストレージとは何かを紹介する前に、Blobって何でしょうか、から始めます。聞きなれない方もいらっしゃるかと思いますので。実際、BlobはBinary Large OBjectの略称です。本来はデータベースで用いられているデータタイプの種類で、メディアファイルや、圧縮ファイル、実行ファイルなどのデータを格納する時に使用されているものです。 では、Blobストレージとは何か?Microsoft社の紹介では、こう書かれています。 「Blob Storage は、テキスト・データやバイナリ・データなどの大量の非構造化データを格納するために最適化されています。非構造化データとは、特定のデータ・モデルや定義に従っていないデータであり、テキスト・データやバイナリ・データなどがあります。」 少し言い換えますと、Blobストレージは、ログファイルから、画像ファイルやビデオ・オーディオファイルまで格納できます。もちろん、通常目的でのデータ利用にも対応しているため、データの格納場所として使っても問題ありません。(Microsoft Azureの資料によりますと、4.75 TiBまで可能です。) なぜBlobストレージなのか 前文で少し申し上げたSASのお客様から頂いた質問の中で、「安くて使い勝手の良いストレージサービスは」と聞かれた事に関して、安いというポイントに関しては、下記の図をご覧ください。 ソース:https://azure.microsoft.com/ja-jp/pricing/details/storage/(2020/09/09アクセス時点) ご覧のように、ブロックBlobのストレージサービスは、安価で、かつ非構造化データに対応し、一般目的でのデータストレージとして、非常に向いています。 もちろん、ビジネスケースによっては、様々考慮すべき点(既存環境にHadoop環境があるかどうか、スループット、ビッグデータ等々)もありますが、今回は、主にこのブロックBlobストレージを例として紹介します。 SAS ViyaからBlobストレージにアクセスする方法 ここからは、SAS ViyaからBlobストレージにアクセスする方法をご紹介します。下記の方法を使うために、前提条件として、SAS ViyaサーバとBlobストレージがあるAzure間でネットワーク通信ができる必要がありますので、ネットワークセキュリティ条件を確認してから、下記の方法をお試しください。 方法①: SASのPROC HTTPプロシージャを使って、Blobストレージ内の特定の一つのデータにアクセスする方法。 Microsoft Azure側: 1.まず、Azureポータルに入り、「すべてのリソース」をクリックします。(図1-1) 図1-1 2.その配下で、利用されているストレージアカウントをクリックします。(図1-2) 図1-2 3.次に、表示された左側のメニューの中で、「Blob Service」配下のコンテナーをクリックします。(図1-3) 図1-3 *豆知識: ここで、いきなりコンテナーが出てくることに関して、混乱している方もいらっしゃるかもしれないので、少し解説します。こちらのコンテナーとは、Dockerコンテナーの意味ではありません。Blobストレージサービス配下のデータ格納用のサブ階層のことであり、フォルダーのようなものとイメージしてください。(図1-4) 図1-4 4.上記図1-3のように、その中に一つ「folderfirst」というコンテナーが存在しており、それをクリックすると、中に保管されているデータが見えるようになります。(図1-5) 図1-5 5.ここからが重要なポイントです。特定のデータ、例えば、「sas7bdat」データにSAS Viyaからアクセスしたい場合は、該当ファイルの名前をクリックして、下記のようなプロパティ情報を表示させます。(図1-6) 図1-6