【Azure】Azure Data Factory(ADF)について
はじめに
業務で Azure Data Factoryを触ることがあるので、事前に学習するべく本記事を作成しています。(誤記等あればご指摘頂けましたら幸いです)
Azure Data Factoryの主な特徴
Azure Data Factory(ADF)は、Microsoft Azureが提供するクラウドベースのデータ統合サービスです。データの収集、変換、保存を自動化し、さまざまなデータソースから情報を統合することができます。
-
コード不要の操作
ADFは、視覚的なインターフェースを提供しており、プログラミングの知識がなくてもデータの処理フロー(パイプライン)を作成できます。 -
多様なデータソースとの連携
90以上のデータソースに対応しており、オンプレミスやクラウド上のデータベース、ファイルストレージ、SaaSアプリケーションなどと接続可能です。 -
ETL/ELTプロセスの自動化
データの抽出(Extract)、変換(Transform)、読み込み(Load)を自動化し、効率的なデータ処理を実現します。 -
スケーラビリティと柔軟性
クラウドベースのサービスであるため、データ量や処理負荷に応じてリソースを柔軟に調整できます。
基本的な構成要素
-
パイプライン: データ処理の流れを定義するコンテナで、複数のアクティビティを組み合わせて処理を構築します。
-
アクティビティ: データのコピー、変換、実行など、具体的な処理を行う単位です。
-
データセット: データの構造や場所を定義し、アクティビティが操作する対象を指定します。
-
リンクサービス: データソースや宛先への接続情報を管理します。
-
統合ランタイム(Integration Runtime): データの移動や変換を実行するコンピューティングリソースです。
具体的な活用例
-
データの統合: 複数のシステムやサービスからデータを収集し、一元的に管理・分析できる形に整えます。
-
定期的なデータ処理: 日次や週次など、定期的なデータの更新や処理を自動化します。
-
データの変換とクレンジング: 分析に適した形式にデータを変換し、不要な情報を除去します。
チュートリアル
以下のチュートリアルを実施しました。
データのコピー ツールを使用して Azure Blob Storage から SQL データベースにデータをコピーする
SQL DBの準備
- SQL DBの作成
- SQL DBに必要なSQL DB Serverの作成(ログイン情報はメモる必要あり)
- 「Azure サービスおよびリソースにこのサーバーへのアクセスを許可する」を「はい」にします。
- クエリエディターにログイン(赤枠のログイン情報はSQL DB作成時にメモる必要あり)
- クエリ(チュートリアルサイトに記載あり)実行
ストレージアカウントのBlobの準備
- ストレージアカウントの作成
- コンテナーの追加
- アップロード
Azure Data Factoryの準備
- Azure Data Factoryの作成
- 「取り込み」を選択
- データのコピー ツールの [プロパティ] ページで、 [タスクの種類] に [組み込みコピー タスク] を選択して、 [次へ] を選択します。
- a. [+ 新しい接続の作成] を選択して、接続を追加します。
- b. ギャラリーから [Azure Blob Storage] を選択し、 [続行] を選択します。
- c. [新しい接続 (Azure Blob Storage)] ページで、 [Azure サブスクリプション] の一覧から Azure サブスクリプションを選択し、 [ストレージ アカウント名] の一覧からストレージ アカウントを選択します。 接続をテストし、 [作成] を選択します。
- d. [接続] ブロックで、新しく作成したリンク サービスをソースとして選択します。
- e. [ファイルまたはフォルダー] セクションで [参照] を選択して、adfv2tutorial フォルダーに移動します。inputEmp.txt ファイルを選択し、 [OK] を選択します。
- [File format settings](ファイル形式設定) ページで、 [First row as header](先頭の行をヘッダーにする) のチェック ボックスをオンにします。
- [ターゲット データ ストア] ページで、次の手順を実行します。
a. [+ 新しい接続の作成] を選択して、接続を追加します。
b. ギャラリーで [Azure SQL Database] を選択し、 [続行] を選択します。
c. [New connection (Azure SQL Database)](新しい接続 (Azure SQL Database)) ページで、ドロップダウン リストから Azure サブスクリプション、サーバー名、データベース名を選択します。 次に、 [認証タイプ] で [SQL 認証] を選択し、ユーザー名とパスワードを指定します。 接続をテストし、 [作成] を選択します。※以下は作成後の画面
- [列マッピング] ページで、入力ファイルの 2 番目と 3 番目の列が emp テーブルの FirstName 列と LastName 列にマップされていることがわかります。 マッピングを調整して、エラーがないことを確認し、 [次へ] を選択します。
- [設定] ページの [タスク名] に「CopyFromBlobToSqlPipeline」と入力し、 [次へ] を選択します。
- [Deployment](デプロイ) ページで [監視] を選択してパイプライン (タスク) を監視します。
- SQL データベースの dbo.emp テーブルにデータが挿入されたことを確認します。
Discussion