Azure Data Factory(ADF)を配置する方法)使用するSnowflakeコネクタ

(Mohini Kalamkar)(2020年12月3日)

企業は、社内データベースからSaaSプラットフォームまで、さまざまな場所にデータを保存しています。このデータを洞察するには、さまざまなソースからデータを抽出してデータウェアハウスまたはデータレイクにロードします。時にはかなり複雑なETL / ELTデータパイプラインを接続または構築するために、企業はMatillion、Azure Data Factory、Fivetran、TalendStitchなどの最新のツールを使用することを好みます。アーキテクチャとデータの要件に応じて、ユースケースに応じて1つまたは複数のETL / ELTツールを選択できます。

最近、両方の Matillion

Azure Data Factory(ADF)を使用して、データをスノーフレークのデータクラウドにロードします a>。この投稿のほとんどは、ADFでの私の経験に焦点を当てていますが、Matillionについても簡単に触れます。

データ統合ツールの説明に入る前に、クラウドデータプラットフォームを検討している場合は、 3つの主要なパブリッククラウドのいずれかで、スノーフレークをチェックすることをお勧めします。 Snowflakeは、Hashmapのチームのすべてのキーボックスをチェックする、インパクトのあるコストパフォーマンスの高いサービスに引き続き感銘を受けています。これは、SQLファーストのソリューションであり、非常に迅速に立ち上げて実行できます。

Quick Thoughtsマティリオンについて

ソースとスノーフレークの統合に関して、マティリオンはADFと比較して成熟度が高いことがわかりました。特に:

  • 優れたUI
  • Warehouseを変更してジョブごとにスケールアップおよびスケールダウン
  • ファイル形式コンポーネントを作成(作成Snowflakeテーブルへのデータの一括ロードおよびSnowflakeテーブルからのデータのアンロードに使用できる名前付きファイル形式)

Microsoft ADFチームは、これらの機能の一部をADFコネクタに追加する作業を続けています。スノーフレーク。

ADFスノーフレークコネクタ

ADFスノーフレークコネクタにジャンプしましょう。以下に示すいくつかのトピックについて説明します。

  1. ADFスノーフレークコネクタの使用— SCDタイプ1の実装
  2. ADFスノーフレークコネクタの機能。
  3. ADFスノーフレークコネクタの制限(この記事の執筆時点)。

Azure Data Factory (ADF)は、データの移動とデータ変換を調整および自動化するためのデータ駆動型ワークフローを作成できるAzureのクラウドサービスです。

ADFにはさまざまな組み込みコネクタがありますこれにより、さまざまなデータソースやターゲットとの統合が可能になり、2020年6月にMicrosoftADFエンジニアリングチームがターゲットデータストアとしてSnowflakeのサポートを追加しました。

統合する必要もあったことを簡単に説明します。 Azure FunctionsをSnowflakeに接続しますが、その説明は別の投稿のために保存します。

ADF Snowflakeコネクタの調査を開始するには、SCDタイプ1をADFコネクタで実装する方法を見てみましょう。

はじめに

このインプについて次のAzureサービスが使用されます:Azure Blobストレージ、Azure Data Factory(リンクされたサービス、データセット、およびデータフロー)。

前提条件:

  • AzureblobのADFリンクされたサービスストレージとSnowflakeアカウントが作成されます。
  • 平面テーブルは、次のスキーマを使用してSnowflakeに作成されます。
  1. まず、CSVファイルをAzureBLOBにアップロードしましょう。

CSVファイル

CSVファイル

2。 ADFで、blobファイルの(ソース)データセットを作成します。

blobのデータセット

のデータセットblobファイル

3。 Snowflakeの(シンク)データセットを作成します。

Snowflakeのデータセット

4。それでは、3つのコンポーネントでADFデータフローを作成しましょう。 Source、AlterRow、およびSink。

以下に示すように、手順1で作成したソースデータセットを選択します。

データフローソース設定

5。データフローソース設定の続き:

データフローソース設定

6。次に、ソースデータをプレビューしましょう。

以下のスクリーンショットは、ソースのデータプレビューを示しています。

データフローソースデータのプレビュー

7。ソースの準備ができたら、Alterトランスフォーメーションを追加しましょう。変換の変更により、挿入/更新/アップサートが可能になり、指定された条件に従ってレコードが削除されます。

アップサートの条件を指定しました。

Dataflow AlterRow

8。データフローシンクの設定。

以下に示すように、Snowflake用に作成されたリンクされたサービスを選択します。

データフローシンク

9。データフローシンクの設定。

スノーフレークスキーマ、テーブル名、更新方法を選択します。

[キー列]でスノーフレークテーブルの主キーを選択します。 「キー列」に基づいて、レコードはシンクテーブルに挿入/アップロード/削除/更新されます。

データフローの次のタスクに移動する前に、「データプレビュー」を確認することをお勧めします。

データフローシンク

10。データフローをパイプラインにインポートし、デバッグをクリックします。

データフローをパイプラインにインポート

11。それでは、スノーフレークのプレーンテーブルを確認しましょう。

すべてのレコードがスノーフレークテーブルに挿入されます。

スノーフレークテーブル—平面

12。次に、CSVファイルを更新しましょう。

A318を更新し、B713を挿入しました。

更新されたCSVファイル

13.パイプラインをデバッグし、スノーフレークのプレーンテーブルを確認します。

以下のスクリーンショットのようにが表示されます。A318の更新されたレコードがあります。

平面テーブルの更新されたレコード

14。新しいレコードB713がプレーンテーブルに挿入されます。

平面テーブル—CSVテーブルから挿入された新しいレコード

手順13と14に示すように、更新された新しいレコードが利用可能ですスノーフレークテーブルにあります。

したがって、コードを記述しなくても、ADFスノーフレークコネクタを使用してSCDタイプ1を実現するのは非常に簡単で簡単です。

ADFスノーフレークコネクタの機能

ADFConnectoを実装する場合r for Snowflakeは、次の種類のアクティビティをサポートすることを認識しています。

詳細については、このドキュメントを参照してください— https://docs.microsoft.com/en-us/azure/data-factory/connector-snowflake

したがって、コネクタにはいくつかの優れた機能がありますが、注意すべきいくつかの制限もあります。それを調べてみましょう。

ADFSnowflakeコネクタの制限

  1. Snowflakeアカウントのリンクされたサービスを作成している間、SSO統合(オーセンティケータ外部ブラウザ)はまだサポートされていません。
  2. ADF Snowflake Connectorは、Snowflakeストアドプロシージャの実行をサポートしていません。ただし、これに代わる方法または回避策は、AzureFunctionsを使用してストアドプロシージャを呼び出すことです。
  3. データを読み込む前に、Snowflakeテーブルが利用可能である必要があります。
  4. Snowflakeとの間の直接コピーのみがサポートされています。次の形式の場合:寄木細工、区切りテキスト、およびJSON(スノーフレークテーブルまたはクエリ結果には1つの列のみがあり、この列のデータ型はVARIANT、OBJECT、またはARRAYです)。ソース/シンクデータストアまたはフォーマットがSnowflakeCOPYコマンドとネイティブに互換性がない場合は、暫定的なAzure Blobストレージインスタンスを使用して組み込みの段階的コピーを有効にする必要があります。これにより、Azureの請求に追加のコストがかかります。

最終的な考え

ADF Snowflake Connectorは、ネイティブのMicrosoftツールをSnowflakeに接続し、SCDタイプ1を実装することを容易にすることで進歩を遂げています。すべてのデータ統合ツールと同様に、個々の状況に応じて、ユースケース、パターン、SLA、スキルセット、およびデータ消費の要件に基づいて、最終的なソリューションアプローチを設計、設計、および展開することを常にお勧めします。

加速する準備ができていますデジタルトランスフォーメーション?

Hashmapでは、クライアントと協力して、より良いものを一緒に構築します。

データと分析の製品とアプリケーションをクラウドに移行することを検討している場合、または必要な場合既存の環境でより価値の高い結果を提供するためのヘルプとガイダンス、およびいくつかのベストプラクティスクラウドプログラムの場合は、お問い合わせください。

ハッシュマップは、クラウドの一部として、さまざまな有効化ワークショップと評価サービス、クラウドの近代化と移行サービス、コンサルティングサービスパッケージを提供します(および

Snowflake )サービスの提供。特定の要件に対応させていただきます。

その他のツールとコンテンツ

スノーフレークユーティリティ

アクセラレータ|スノーフレークでさらに多くのことを行う| Hashmap

Hashmapが利用できるすべてのSnowflakeユーティリティを試して、Snowflake:SnowflakeInspectorでさらに多くのことを実行してください…

www.hashmapinc.com

ユーザーメトリクスを使用してSnowflakeの請求明細をスーパーチャージする

1つの簡単なトリックがSnowflakeのコンピューティング支出を理解するための鍵となる可能性があります

medium.com

ハッシュマップメガバイト|一口サイズのビデオシリーズ

ハッシュマップメガバイトは、メガクラウドのアイデアが一口サイズの部分で説明される毎週のビデオシリーズです。

www.hashmapinc.com

PythonジョブをPySparkに変換する5つのステップ

ApacheArrowまたはKoalasを使用してPandasからPySparkに移動する

medium.com

他のチャネルで自由に共有し、Hashmapのすべての新しいコンテンツに遅れずについていくようにしてください ここ

。データエンジニアリングとクラウドのすべてについてのカジュアルな会話を聞くには、Hashmapのポッドキャストをチェックしてください タップのハッシュマップ

Spotify、Apple、Google、その他の人気のストリーミングアプリでも同様です。

ハッシュマップオンタップ| Hashmapポッドキャスト

Hashmapホストと特別ゲストの交代キャストは、選択した飲み物を楽しみながら、さまざまな視点からさまざまなテクノロジーを探索します。

www.hashmapinc.com

Mohini Kalamkar はクラウドおよびデータエンジニアリングコンサルタントです em> ハッシュマップ

データ、クラウド、IoT、AI / MLソリューションを提供し、業界全体の専門知識をコンサルティングして、革新的な技術者とドメインエキスパートのグループが、お客様に価値の高いビジネス成果をもたらします。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です