Azure Data Explorer がGA(一般利用可能)になりました

渡邊 です。

『 Azure Data Explorer 』がGA(一般利用可能)になりました。

General Availability: Azure Data Explorer
https://azure.microsoft.com/ja-jp/updates/general-availability-azure-data-explorer/

今回は下記ドキュメントに従って、Azure Data Explorer クラスターとデータベースを作成してみます。

クイック スタート: Azure Data Explorer クラスターとデータベースを作成する
https://docs.microsoft.com/ja-jp/azure/data-explorer/create-cluster-database-portal

リソースグループを作成する

まずは、リソースグループを作成します。
ここでは詳細を割愛します。

クラスターを作成する

『 Azure Data Explorer 』のクラスターを作成します。

『リソースの作成』から『分析』→『 Azure Data Explorer 』を選択します。
検索ボックスに「 Azure Data Explorer 」などのキーワードで検索することも出来ます。

下図のように必要項目を入力します。東日本リージョンも選択可能です。
『 Compute specifications 』の欄をクリックすると、コンピューティングの仕様の選択肢が表示されます。

2019年2月8日現在、東日本リージョンでは一部がサポートされていません。

ここでは『 D11_v2 』を選択します。
『Review + create』ボタンを押下します。

『Create』ボタンを押下します。

デプロイが開始されます。完了まで待ちます。

ここではデプロイが11分22秒で完了しました。
『リソースに移動』ボタンを押下すると、『 Azure Data Explorer 』の画面に遷移します。

データベースを作成する

『 Azure Data Explorer 』のデータベースを作成します。

『 Azure Data Explorer 』の概要画面で『Create database』ボタンを押下します。

ここではデータベース名のみ入力し、あとはデフォルトのままとします。
『Create』ボタンを押下するとデータベースが作成されます。

データベースで基本コマンドを実行する

『 Azure Data Explorer 』のデータベースで基本コマンドを実行します。

『 Azure Data Explorer 』の概要画面で『Query』を選択します。

クエリ画面が開きます。

コマンド『.show databases』を入力し、『Run』ボタンを押下します。

先程作成したデータベースが結果に表示されます。

コマンド『.show tables』を入力し、『Run』ボタンを押下すると、
テーブルは未作成なので結果は空欄になります。

クラスターを停止する

『 Azure Data Explorer 』のクラスターを停止します。

『 Azure Data Explorer 』の概要画面で『Stop』をクリックします。

クラスターの停止処理が開始され、Statusが『Stopping』に変わります。

クラスターの停止処理が完了すると、Statusが『Stopped』に変わります。
停止処理の時間を計測したところ、5分未満でした。

クラスターを削除する

『 Azure Data Explorer 』のクラスターを削除します。

『 Azure Data Explorer 』の概要画面で『Delete』をクリックします。
削除するかどうかの確認を経て、クラスターの削除が実行されます。

おわりに

以上、Azure Data Explorer クラスターとデータベースを作成してみました。
価格や処理性能、他のAzureサービスとの連携、『 Azure Databricks 』との違いなどについて調べていこうと考えております。

最後までご覧頂きありがとうございました。

参考リンク

General Availability: Azure Data Explorer
https://azure.microsoft.com/ja-jp/updates/general-availability-azure-data-explorer/

Azure Data Explorer
https://azure.microsoft.com/ja-jp/services/data-explorer/

Azure データ エクスプローラーのドキュメント
https://docs.microsoft.com/ja-jp/azure/data-explorer/


Azure Data Lake Storage Gen2がGA(一般利用可能)になりました

渡邊 です。

Azure Data Lake Storage Gen2がGA(一般利用可能)になりました。

Azure Data Lake Storage Gen2 is now generally available
https://azure.microsoft.com/ja-jp/updates/azure-data-lake-storage-gen2-is-now-generally-available/

今回は下記ドキュメントに従って、Azure Portal から『 Azure Data Lake Storage Gen2 』のストレージ アカウントを作成してみます。

クイック スタート: Azure Data Lake Storage Gen2 ストレージ アカウントを作成する
https://docs.microsoft.com/ja-jp/azure/storage/blobs/data-lake-storage-quickstart-create-account?toc=%2fazure%2fstorage%2fblobs%2ftoc.json

リソースグループを作成する

まずは、リソースグループを作成します。
ここでは詳細を割愛します。

汎用 v2 ストレージアカウントを作成する

ストレージアカウントを作成します。

『リソースの作成』から『ストレージ』→『ストレージ アカウント』を選択します。
検索ボックスに「 Azure Data Lake Storage Gen2 」などのキーワードで検索することも出来ます。

下図のように必要項目を入力します。東日本リージョンも選択可能です。
Data Lake Storage Gen2 機能を利用するには、『アカウントの種類』で『 StorageV2 (汎用 V2)』を選択する必要があります。
入力出来たら、『次: 詳細 >』ボタンを押下します。

『DATA LAKE STORAGE GEN2』で『有効』を選択します。
『確認および作成』ボタンを押下します。

検証が成功すると画面上部にその旨が表示されます。
『作成』ボタンを押下します。

デプロイが開始されます。完了まで待ちます。

ここではデプロイが36秒で完了しました。
『リソースに移動』ボタンを押下すると、ストレージアカウントの画面に遷移します。

Data Lake Gen2 ファイルシステムを作成する

Data Lake Gen2 ファイルシステムを作成します。

ストレージアカウントの概要画面で『Data Lake Gen2 ファイルシステム』をクリックします。

『ファイル システム』を選択します。

ファイルシステム名を入力してOKボタンを押下します。

ファイルシステムが作成出来ました。ファイルシステムをクリックします。

『 Azure Data Lake Storage Gen2 』は『 Azure Storage Explorer 』で使用できるようになった旨と、『 Azure Storage Explorer 』のページへのリンクが表示されます。
『 Azure Storage Explorer 』をインストールしていない場合は、ダウンロードの上、インストールを実行します。

Azure Storage Explorerで確認する

『 Azure Storage Explorer 』で『 Azure Data Lake Storage Gen2 』のファイルシステムが作成されたことを確認出来ます。

おわりに

以上、『 Azure Data Lake Storage Gen2 』のストレージ アカウントを作成してみました。
『 Gen2 』はBlobベースのストレージで、Azure公式ページの情報によれば『 Gen1 』と比較して大幅に安価で利用出来るとのことです。

最後までご覧頂きありがとうございました。

参考リンク

Azure Data Lake Storage Gen2 is now generally available
https://azure.microsoft.com/ja-jp/updates/azure-data-lake-storage-gen2-is-now-generally-available/

Azure Data Lake Storage
https://azure.microsoft.com/ja-jp/services/storage/data-lake-storage/

Azure Storage のドキュメント
https://docs.microsoft.com/ja-jp/azure/storage/


Azure Machine Learning Studioの機械学習モデルにアクセスする( Python / Postman / Azure Functions )

渡邊 です。

前回は『 Azure Machine Learning Studio 』で機械学習モデルをWebサービスとして公開する方法を紹介致しました。
今回は、公開したWebサービスにアクセスする方法を紹介致します。
アクセスに必要な情報は、Webサービス公開時に生成される『Request Response API Documentation』(前回参照)から得られます。

Python 3

まずは、『 Python 3 』でアクセスする方法を紹介致します。
『Request Response API Documentation』で『Python 2』のサンプルコードが得られるので、
それを元に『 Python 3 』のコードに書き換えます。
ここでは、環境として Jupyter Notebook を使用しています。

[crayon-5f6bcab9e073a075891166/]

実行すると、次のような結果が返ってきます。

[crayon-5f6bcab9e074b630291205/]

Postman

次に、REST APIテストツール『 Postman 』でアクセスする方法を紹介致します。
次の項目を入力して、『 Send 』ボダンを押下するとレスポンスが返ってきます。

  • HTTPメソッド
  • リクエストURI
  • リクエストヘッダ( Authorization / Content-Type )
  • リクエストボディ

リクエストボディとレスポンスボディはそれぞれ次のような形式です。

[crayon-5f6bcab9e0780268692722/]

[crayon-5f6bcab9e078c033428942/]

Azure Functions ( JavaScript )

最後に、Azure Functions ( JavaScript ) でアクセスする方法を紹介致します。

まずは、 npm request をインストールします。

[crayon-5f6bcab9e0798831882913/]

一例として、次のようなプログラムを作成し、 Azureポータル上から実行します。

[crayon-5f6bcab9e07a2302107000/]

実行すると、次のような結果が返ってきます。

[crayon-5f6bcab9e07ac811907179/]

おわりに

以上、『 Azure Machine Learning Studio 』でWebサービスとして公開した機械学習モデルへアクセスする方法を紹介致しました。
REST API ですので、他にもアクセス方法はあります。ご自身の要件に合わせた方法をご選択下さい。

最後までご覧頂きありがとうございました。

参考リンク

Azure Machine Learning Studioで機械学習モデルをWebサービス化する | ナレコムAzureレシピ
https://azure-recipe.kc-cloud.jp/2019/01/azure-machine-learning-studio-web-service/

Postman | API Development Environment
https://www.getpostman.com/

Azure Functions—サーバーレス アーキテクチャ | Microsoft Azure
https://azure.microsoft.com/ja-jp/services/functions/


Azure Machine Learning Studioで機械学習モデルをWebサービス化する

渡邊 です。

今回は『 Azure Machine Learning Studio 』で構築した機械学習モデルをWebサービスとして公開する方法を紹介致します。

機械学習モデルのWebサービス公開

Azure Machine Learning Studio にログインし、Webサービスとして公開したい機械学習モデルを構築した Experiment を開きます。

実行済でない場合は、『 Run 』で実行します。

実行が完了したら、『Predictive Web Service』をクリックします。

『 Run 』で実行します。

実行が完了したら、『 DEPLOY WEB SERVICE 』をクリックします。
これで機械学習モデルがWebサービスとして公開されました。

Webサービス情報

前節で『 DEPLOY WEB SERVICE 』を選択すると、Webサービス(API)のダッシュボードが表示されます。
APIへのリクエストに必要な『 API key 』もこの画面に表示されます。
ここで『 REQUEST/RESPONSE 』をクリックします。

APIへのリクエストに必要な情報とレスポンスの仕様が表示されます。

  • HTTPメソッド
  • リクエストURI
  • HTTPバージョン

  • リクエストヘッダ
  • リクエストボディ(サンプルリクエスト)

[crayon-5f6bcab9e1293140777812/]

  • レスポンスヘッダ
  • レスポンスボディ(サンプルレスポンス)

[crayon-5f6bcab9e12a2003005624/]

『 C# 』『 Python 』『 R 』の各プログラミング言語で、
このAPIにアクセスする際のサンプルコードも記載されています。

[crayon-5f6bcab9e12ae629436728/]

[crayon-5f6bcab9e12d6691995707/]

[crayon-5f6bcab9e12f8303597133/]

おわりに

以上、『 Azure Machine Learning Studio 』で構築した機械学習モデルをWebサービスとして公開する方法を紹介致しました。
非常に簡単に機械学習モデルをWebサービス化出来ることがお分かり頂けたかと思います。

最後までご覧頂きありがとうございました。

参考書籍

クラウドではじめる機械学習
http://www.ric.co.jp/book/contents/book_992.html

参考リンク

Azure Machine Learning Studio
https://azure.microsoft.com/ja-jp/services/machine-learning-studio/

Azure Machine Learning Studio のドキュメント
https://docs.microsoft.com/ja-jp/azure/machine-learning/studio/

Azure Machine Learning Studio Web サービスをデプロイする
https://docs.microsoft.com/ja-jp/azure/machine-learning/studio/publish-a-machine-learning-web-service

Microsoft Azure Portal
https://azure.microsoft.com/ja-jp/features/azure-portal/

Microsoft Azure Machine Learning Studio
https://studio.azureml.net/


Azure Databricksを使ってみた

渡邊です。

Apache Sparkベースの分析プラットフォーム「Databricks」がAzure上で使用出来るようになりました。
今回はこの「Azure Databricks」をなるべく簡単な構成で使ってみます。

1. 構成図

構築する環境の構成は下図の通りです。

2. 全体の流れ

下記の流れで進めていきます。

・Azure Data Lake Storage Gen1作成
・サービスプリンシパル作成
・データのアップロード
・Azure Databricks ワークスペース作成
・ノートブック作成
・Sparkクラスター作成
・データの抽出・変換・出力
・出力データの確認
・SparkクラスターのTerminate

3. Azure Data Lake Storage Gen1作成

最初に「リソースグループ」を作成します。リージョンは「米国東部 2」とします。
その後、「リソースの作成」から「Azure Data Lake Storage Gen1」を選択します。

必要な項目を入力して「作成」ボタンを押下します。

Name: 作成するAzure Data Lake Storage Gen1の名前
Resource group: 先程作成したリソースグループ
場所: 今回は「米国東部 2」とします。

4. サービスプリンシパル作成

サービスプリンシパルを作成します。
「Azure Active Directory」から「アプリの登録」を選択します。

「新しいアプリケーションの登録」を選択します。

必要な項目を入力して「作成」ボタンを押下します。

名前: 作成するサービスプリンシパルの名前
サインオンURL: 任意。ここでは「https://eastus2.azuredatabricks.net」を入力します。

「アプリケーションID」は後程使用するので控えておきます。
「設定」を選択します。

「キー」を選択します。

「キーの説明」「期間」を入力します。

「保存」を選択します。

「値」の文字列を控えておきます。後程使用します。

「Azure Active Directory」に戻って、「プロパティ」を選択します。

「ディレクトリID」を控えておきます。後程使用します。

作成した「Azure Data Lake Storage Gen1」の画面で「アクセス制御(IAM)」を選択します。

「追加」を選択します。

「役割」を選択します。
作成したサービスプリンシパル名で検索し、選択します。

「保存」ボタンを押下します。

作成したサービスプリンシパルが追加されたことが確認出来ます。

5. データのアップロード

Azure Storage Explorer(参考リンク[9][10])を使用して、作成した「Azure Data Lake Storage Gen1」にサンプルデータ(参考リンク[14])をアップロードします。

6. Azure Databricks ワークスペース作成

「リソースの作成」から「Azure Databricks」を選択します。

必要な項目を入力して「作成」ボタンを押下します。

Workspace name: Databricksのワークスペースの名前
リソース グループ: 作成したリソースグループ
場所: 今回は「米国東部 2」とします。
Pricing Tier ( View full pricing details ): 今回はStandardを選択します。

ワークスペースが作成されたら、「Launch Workspace」ボタンを押下します。

サインイン画面に遷移します。自動でサインインします。

サインイン出来たらAzure Databricksのポータル画面に遷移します。

7. ノートブック作成

Databricksのポータル画面で「Workspace」を選択します。

必要な項目を入力して、「Create」ボタンを入力します。

Name: ノートブック名
Language: 使用するプログラミング言語。今回は「Python」を選択します。

ノートブックが開きます。

DatabricksでAzure Data Lake Storage Gen1上のファイルを読み込んだり、書き出したりする場合、Databricks Filesystem(DBFS)としてマウントする必要があります。
具体的には下図のようなプログラムを組む必要があります。ここで先程控えた三点「サービスプリンシパルのアプリケーションID」「サービスプリンシパルのキー」「ディレクトリID」が必要になります。

以降は次のようなプログラムを組みます(参考リンク[4])。

8. Sparkクラスター作成

Databricksのポータルから「Clusters」を選択します。

「Create Cluster」ボタンを押下します。

クラスターの設定画面に遷移します。

今回は下図のように設定します(デフォルトから変更した部分を赤枠で囲っています)。

Cluster Name: クラスター名
Python Version: Pythonのバージョン
Max Workers: 自動スケーリング時の最大Workerノード数
Auto Termination: アイドル状態のまま設定時間が経過すると、自動的にクラスターが停止される。

「Create Cluster」ボタンを押下します。

クラスターの「State」が「Pending」になります。

暫く待つと、「State」が「Running」になります。

9. データの抽出・変換・出力

作成したノートブックを開き、「Detached」をクリックします。

ノートブックをアタッチするクラスターが表示されます。先程作成したクラスターを選択します。

ノートブックがクラスターにアタッチされました。これでノートブック上のプログラムを実行出来ます。
今回は「Run All」を選択し、先頭から末尾までの全てのセルを順次実行します。
※セルを選択して、「Shiftキー」+「Enterキー」でセル毎に実行することも出来ます。

サンプルデータをDataFrameに格納し、内容の一部を表示させています。

一部の列を選択して別のDataFrameに格納し、内容の一部を表示させています。

列名を変更して別のDataFrameに格納し、内容の一部を表示させています。

DataFrame「renamedColumnsDF」を、Azure Data Lake Storage Gen1上にJSONファイルとして出力します。
「View」をクリックすると、ジョブに関する情報を閲覧出来ます。

10. 出力データの確認

出力先ディレクトリにファイルが出力されていることが確認出来ます。

11. SparkクラスターのTerminate

クラスターは、Auto Terminationを有効にすれば、アイドル状態のまま設定した時間が経過すると自動的にTerminate(停止)されます。しかし、手動でTerminateすることも出来ます。
今回はクラスターを手動でTerminateします。対象のクラスターにマウスオーバーして、「■」ボタンを押下します。

「Confirm」ボタンを押下します。

クラスターの「State」が「Terminated」になり、停止されます。

おわりに

以上、Azure Databricksをなるべく簡単な構成で使ってみました。

今回取り上げたのは、Azure Databricksの機能の一部であり、他にも様々なことが出来ます。
例えば、今回選択した「Python ( PySpark )」の他に、「Scala」「SQL」「R」の言語が使用出来ます。また、あらかじめ設定した時刻にプログラムを実行する、スケジュール実行も可能です。

最後までご覧頂きありがとうございました。

参考リンク

下記URLのページを参考にさせて頂きました。ありがとうございます。

[1]Azure Databricks | Microsoft Azure

[2]Azure Databricks の価格 | Microsoft Azure

[3]Azure Databricks のドキュメント | Microsoft Docs

[4]チュートリアル: Azure Databricks を使用したデータの抽出、変換、読み込み | Microsoft Docs

[5]Welcome to Azure Databricks — Databricks Documentation

[6]Azure Data Lake Storage Gen1 — Databricks Documentation

[7]Azure Databricks 概要

[8] 20180627 databricks ver1.1

[9] Azure Storage Explorer – クラウド ストレージ管理 | Microsoft Azure

[10] Azure Storage編 ~Microsoft Azure Storage ExplorerでAzure Storageを操作してみた~|Azure Storage| | ナレコムAzureレシピ

[11]ビッグ データ分析用の Data Lake Storage | Microsoft Azure

[12]Azure Data Lake Store の概要 | Microsoft Docs

[13]pyspark.sql module — PySpark master documentation

[14] usql/small_radio_json.json at master · Azure/usql · GitHub

その他お知らせ

弊社ではAzure Databricksの導入支援やトレーニングのご支援等も実施しております。お気軽にご相談いただければありがたいです。
■Azure Databricks によるビッグデータ解析ソリューション
https://azure.kc-cloud.jp/service002.html

■Azure Databricks 活用事例
http://www.knowledgecommunication.jp/news/138.html

 

 

 

Azure Databricksの導入ならナレコムにおまかせください。

導入から活用方法までサポートします。お気軽にご相談ください。

Azure Databricksソリューションページはこちら