Azure Synapse AnalyticsのPipeline機能を使ってみた:Azure Data Lake StorageからAzure Synapse 専用SQLプールへのデータ取り込み【前編】

これから2記事に渡りAzure Synapse AnalyticsのPipeline機能(以下Synapse Pipeline)を用いて、Azure Data Lake Storage Gen2(以下ADLS)上のエクセルファイルをAzure Synapse 専用SQLプール(以下専用SQLプール)にテーブルとしてロードする手順を紹介したいと思います。

今回の前編記事では、事前に必要になるADLS、Azure Synapse Analytics ワークスペース(以下Synapseワークスペース)、専用SQLプールの作成について紹介させていただきます。

次回の後編記事では、それらを使いながらSynapse Pipelineを作成していく予定です。

Azure Synapse Analyticsの検証中の方や導入を検討している方はぜひご参考ください!

料金についての注意事項

今回の検証には少なからず課金が発生します。主な金額発生源は以下になります。

  • 専用SQLプールのコンピューティングリソース
  • 専用SQLプールのストレージ料金
  • ADLSのストレージ料金

特に専用SQLプールのコンピューティングを停止し忘れると高額になる可能性がありますので、検証しない際にはこまめに停止することをおすすめします。

「専用SQLプールの作成」の項で停止方法について紹介しておりますので、本記事を読んで実際に再現される方は注意深くご確認ください。

※専用SQLプールのストレージ料金は専用SQLプールを停止しても発生し続けるので、しばらく検証しない期間がある際は削除することをおすすめします。

※専用SQLプール以外のサービスも、しばらく検証をしない期間などがある際は削除することをおすすめします。

環境構成図

今回の検証ではADLS上にあるエクセルファイル「sample_-_superstore.xls」の内「Orders」というシートを専用SQLプールに「orders」というテーブル名で格納します。

それを実現するSynapse Pipelineを作成していきます。

サンプルデータのダウンロード

今回はTableau社が学習用に配布しているサンプルデータを使用したいと思います。

こちらのデータはエクセル形式になっているので、ローカルPC上でも中身を確認しやすいです。

以下のリンクをクリックして、「スーパーストアの売上」データをダウンロードしてください。

ファイル名は「sample_-_superstore.xls」です。

無料のデータ ビジュアライゼーション ツール | Tableau Public

作業環境準備

Synapse ワークスペースの作成

Azure Portalのホーム画面上部で[Azure Synapse Analytics]と検索して、Azure Synapse Analytics作成画面に移動してください。

画面上部の[+作成]を押して作成を開始します。

基本タブ

[基本]タブ初期設定を行っていきます。

まず[リソースグループ]では、自身で作成したリソースグループを設定し、Synapse ワークスペース名と地域を任意のものに設定します。

次に[Data Lake Storage Gen 2を選択する]の箇所では[サブスクリプションから]にチェックを入力し、[アカウント名]と[ファイルシステム名]をそれぞれ[新規作成]から作成します。

セキュリティタブ

次に[セキュリティ]タブでは、下の赤枠で囲われている箇所に任意の管理者名とパスワードを記載します。

その後[Data Lake Storage Gen2アカウントへのネットワークアクセスを許可します]にチェックを入れます。

これらの設定ができたら画面下部の[確認および作成]をクリックします。

※この後作成が始まりますが、自分の環境ではデプロイまでに7~8分かかりました。

Synapse ワークスペースの設定

Synapse ワークスペースの作成ができたらサービスのページに移動し、画面左タブの[ネットワーク]を押してネットワーク設定画面に移動します。

画面が遷移したら、画面右側中段の[Azureサービスおよびリソースに、このSynapse ワークスペースのアクセスを許可する]にチェックが入っていることを確認して、[+クライアントIPの追加]をクリックします。

新しく[開始IP]と[終了IP]にクライアントIPが追加されたら[保存]をクリックします。

ADLSのフォルダのACL設定

Synapse ワークスペースの設定も完了したら、ADLSのサービスページに移動して、画面左ペインの[コンテナ―]をクリックします。

先ほど作成した[test]コンテナ―の一番右側にある三点リーダーをクリックします。

その後[ACLの管理]をクリックします。

ACLの管理画面が開いたら、[アクセス許可]の[その他]の[書き込み]にチェックを入れて画面下部の[保存]をクリックします。

ADLSにファイルアップロード

ACLの設定が終わったら再度コンテナ―ページに移動して、先ほど作成した[test]コンテナーをクリックします。

そして[アップロード]を押して、画面右側のポップアップで最初にダウンロードした「sample_-_superstore.xls」をアップロードします。

アップロードしたファイルでも同じくACLの設定を行うため、[sample_-_superstore.xls]の右側の三点リーダーをクリックします。

今回は[アクセス許可]の[その他]の[読み取り]の箇所にチェックを入れて、画面下部の保存をクリックします。

専用SQLプールの作成

デプロイが完了したら、作成したSynapse ワークスペースまで移動します。

そこの[概要]で[Synapse Studioを開く]をクリックしてSynapse Studioを開きます。

その後画面左ペインの鞄アイコンの[Manage]をクリックして管理画面に移動します。

画面上部の[+新規]をクリックして、画面右側のポップアップで専用SQLプールを作成します。

専用SQLプール名を入力してパフォーマンスレベルを最低の[DW100c]に設定出来たら、画面下部の[確認および作成]をクリックして作成します。

※専用SQLプール名には「-」や「空白」を入れることはできません。作成に失敗したらプール名を見直してみてください。

作業終了作業

作成ができたら、コスト削減のためにすぐに専用SQLプールを停止しておきます

まずは画面左ペインの鞄アイコンの[Manage]をクリックして管理画面に移動します。

作成した専用SQLプールの行にカーソルをホバーさせると一時停止マーク[ || ]が出てくるのでクリックします。

その後ポップアップの[一時停止]をクリックします。

停止ができると[状態]が[一時停止]になるので、この状態になった事を届けたら停止完了です。

まとめ

今回の記事ではADLSとSynapse ワークスペース、そして専用SQLプールの作成と初期設定について紹介させていただきました。

次回記事では、Synapse Pipelineを作成してデータ取り込みする方法を紹介させていただきます。

ぜひご一読ください!

執筆担当者プロフィール
岩間 義尚

岩間 義尚

2021年度新卒入社後、Hadoopを中心に複数のデータ基盤の開発/運用を経験。 現在はSnowflakeやAzureでのデータエンジニアリングをメインに担当しています。

担当記事一覧