2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Azureでデータ分析基盤作ってみた - ①Synapseの構築

Last updated at Posted at 2024-08-15

Azureでシンプルなデータ分析基盤を作る検証をしています。
Azure Portalで以下の構成を作ることができましたので、備忘録として構築手順をメモします。

構成

image.png
1つのリソースグループの中にストレージアカウント、ADF、Synapseワークスペースを作成します。
ストレージアカウント(ADLS Gen2)に置いたcsvファイルをparquetファイルに変換すると同時に、データ型の変換も行います。
SynapseではサーバーレスSQLプールを使って外部テーブルを作成し、Power BIから外部テーブルを参照できるようにします。

作業内容

以下の順番で作業を行いました。
本記事では「1.Synapseの構築」について記載します。「2. ADFの構築とETL処理」と「3. 外部テーブル作成」についてはそのうち書きます(たぶん)。 ※ちゃんと書きました!(2024/12/17)

  1. Synapseの構築
    リソースグループ、ストレージアカウント、Synapseワークスペースを構築
    2. ADFの構築とETL処理
    ADFインスタンスを構築後、ADFでデータ型の変換
    3. 外部テーブル作成
    parqutファイルを参照する外部テーブルをSynapseに作成してPower BIから参照する

今回の構築範囲

Azure Portalでリソースグループ、ストレージアカウント、Synapseワークスペースを一気に構築します。

作成するサービス

リソースグループ

Azureのリソースの最小の管理単位です。

ストレージアカウント

Azureのクラウドストレージサービスを使用するための基本単位です。
今回はBlob Storageの拡張機能を使ったAzure Data Lake Storage Gen2を使います。

Synapse Analytics

Synapse Analyticsは、データウェアハウスやビッグデータシステム全体にわたって分析情報を取得する時間を早めるエンタープライズ分析サービスです。
今回はデフォルト設定のまま構築作業を進めます。デフォルト設定のまま構築すると、Synapseワークスペースは共有仮想ネットワークに配置されます。

構築作業

Azure Portalを開いてSynapseを検索し、「Azure Synapse Analytics」を選択します。
image.png

Synapseの画面で「+作成」をクリックします。
image.png

基本タブに以下の情報を入力します。

  • サブスクリプション:任意のサブスクリプションを選択します
  • リソースグループ:「新規作成」をクリックして任意のリソースグループ名を入力します
  • ワークスペース名:任意のワークスペース名を入力します
  • 地域:任意の地域を選択します
  • アカウント名:「新規作成」をクリックして任意のストレージアカウント名を入力します。ストレージアカウント名はAzure全体でグローバルに一意である必要があるので、ご注意ください
  • ファイルシステム名:「新規作成」をクリックして任意のファイルシステム名を入力します

image.png

セキュリティタブに以下の情報を入力します。

  • SQLパスワード:任意のパスワードを入力します。
    image.png

ネットワークタブはデフォルト設定のまま「次へ:タグ」をクリックします。
デフォルト設定のままにするとAzureの共有仮想ネットワークにSynapseが起動します。
image.png

タグは任意のものを入力して「次へ:レビュー+作成」をクリックします。
image.png

設定を確認したら「作成」をクリックします。
image.png

10分ほど待つとデプロイが完了しました!
image.png

作成されたものを確認

リソースグループ

blog-rgというリソースグループにblog-swというSynapseワークスペースとblogsaccountというストレージアカウントが作成されたことがわかります。
image.png

ストレージアカウント

構築時に細かい設定はしませんでしたが、レプリケーションは読み取りアクセスgeo冗長ストレージ(RA-GRS)の設定でストレージアカウントが作成されました。
また、階層構造の名前空間が有効となっていることから、ADLS Gen2が有効になっていることがわかります。
image.png

ストレージアカウントblogsaccount内にファイルシステム「blog-fs」が作成されていました。
image.png

ストレージアカウントのアクセス制御(IAM)のロールの割り当てを確認したところ、ストレージBLOBデータ共同作成者としてSynapseワークスペース「blog-sw」とAzure Portalを操作したユーザ「Hirano, Mayumi/平野真弓」が登録されていました。
Synapseワークスペース「blog-sw」がストレージBLOBデータ共同作成者として登録されているのは、作成時に基本タブの下の方に「指定された Data Lake Storage Gen2 アカウントに対し、ストレージ BLOB データ共同作成者 ロールを使用して、ワークスペース ID のデータ アクセスが自動的に付与されます。」と記載されていた通りですね。
「Hirano, Mayumi/平野真弓」が登録されているのは、基本タブで「ワークスペースでストレージBLOBのクエリを対話形式で実行するには~」にチェックが付いていたためです。
image.png

Synapse

Synapseワークスペースはこのような形で作成されました。
SQLプールの設定は特にしませんでしたが、組み込みのサーバーレスSQLプールが使えるようになっています。
image.png

Synapse Studioを開きData → Linkedを開くとストレージアカウントに作成したファイルシステムblog-fs内に何もファイルが存在しないことが確認できました。
image.png

まとめ

Synapseワークスペースの作成画面からリソースグループ、ストレージアカウント、Synapseワークスペースが一気に作成できることが確認できました。
この記事がどなたかのお役に立てば幸いです。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?