2017-05-03 1 views
2

私は、Azure Data Lakeに移動する必要のある、オンデマンドデータベースの200以上のテーブルにデータを持っています。 Azure Data Factoryで各テーブルごとに200以上の別々のパイプライン(または200以上のアクティビティを持つパイプラインまたはそのパイプライン/アクティビティの他のパーティショニング)を持つアイデアは幸せではありません。これを行うには、より良い/よりスケーラブルな方法がありますか? SSISでは、テンプレートパッケージを作成してforループコンテナにラップして、テーブルのリストを反復して作業を行うか、それ以上のステップを踏むためにいくつかのリストと各パッケージが独自に作業しますより大きい並列性のために独立してリストします。データ・ファクトリでも同じことをする方法はありますか?SSISのFOR/FOREACHループに類似した何かがAzure Data Factoryにありますか?

答えて

2

本当に? SSISは、動的スキーマに関する限り、ひどいものです。 this questionによれば、Azure Data Factory(ADF)はETLツールではなくELTツールであり、基本的にその点で異なります。しかし、それはコピーウィザードを使用してこれを行うには時間がかかりませんでした。

また、動的に処理するには、ADFで.net SDKおよび/またはPowershellを使用する方法を学ぶ必要があります。理論的には、1つのパイプラインで実行できる各テーブルの入出力データセットが必要です。

最後に、これは素晴らしいパターンではないと主張しますが(主にIaaSをホストする必要があるため)、最後の手段として、SSISは2016 Feature PackのAzure Data Lakeと統合されました。

+0

私は、主にタスクの管理容易性の側面を暗示しています。 200+テーブルは、1つのプロジェクトで管理するにはあまりにも多くの入出力データセットとパイプラインを相互に接続する必要があります。 SSISフィーチャーパックはそれほど役に立ちません。私はそれを試してみました... – YuGagarin

+0

@YuGagarin私のためのSSISのアプローチを実行します。どのように動的スキーマで動作することを提案しますか? SSISを使用してファイルをファイル共有に出力した後、ADFを使用してファイルを取り出して移動することができます。コピーアクティビティは、ディレクトリ内のすべてのファイルを移動でき、1つのパイプライン、入力データセット(ソースディレクトリ)、および出力データセット(出力ディレクトリ)が必要です。また、Stored Procタスクを使用して、データベース内のすべてのテーブルを実行し、ファイル共有にファイルを出力してからコピーアクティビティなどを試すこともできます。ADFのみがオーケストレーションされているため、選択したコンピューティングでループが発生します。 – wBob

+0

BCPコマンドの使用 – YuGagarin

関連する問題