2017-10-04 7 views
0

データファクトリを使用するのが初めてで、2つのパイプラインがあります。データ工場で異なる時間間隔のデータセットを使用する

  • パイプラインA活動ごと30 minutesを実行し、データセットを生成が含まれています。アクティビティAは、データレイクストレージに.csvファイルを生成するコピーアクティビティです。

  • パイプラインB24 hoursを実行し、データセットを必要とアクティビティBが含まれています。

  • 私は...しかし、私はパイプラインBがアクティブである間にパイプラインAは、データセットの実行を開始し、破損している可能性があることを恐れているデータの工場表現でパイプラインBにデータセットAの消費を回避している可能性があり、ランニング。

は、どのように私はがデータセットを消費パイプラインBを作ることができますか?

  • 私はこれがパイプラインB活動Aを再作成し、パイプラインAと同じタスクをやり直している生成すると考えることができる唯一の方法:(

私の質問は:あり私は第2のパイプラインでの活動を複製せずにこれを行うことができます方法はありますか?

答えて

0

を私はこれがADFv1であると仮定している?

ケースということアクティビティ間の複雑な依存関係を達成することはかなり困難です。 v1でサポートされているのは、「アクティビティAがデータセットAを生成し、アクティビティBがデータセットAを消費する」ため、アクティビティAが完了するまでアクティビティBが開始しないことです。これらのアクティビティは、同じパイプライン上にある必要はありません。

あなたの活動が何をしているのかはわかりませんが、アクティビティAがデータレイクストアフォルダに何かをコピーし、次にアクティビティBがそのフォルダ内のすべてをコピーしたとします。あなたは、データセットAを入力としてアクティビティBを設定し、関連するスライスが利用可能になるまでBは実行されないことを確かめています。Model datasets with different frequenciesを参照してください。

しかし、アクティビティAがアクティビティBが消費しているデータレイクストア内の何かを更新している場合、アクティビティBが既に実行中であってもアクティビティAが次のスライスを実行するのを止める方法はありません。このシナリオでは、アクティビティAがステージングフォルダ内のデータセットを単にダンプし、アクティビティBがそれらをすべて消費してマージされたデータセットを作成するように、ソリューションの再構築を検討する価値はあります。

最後に、ADFv2のプレビュー版がリリースされましたが、ブランチングおよび制御フローのオプションがさらに増えました。SSISパッケージを実行する機能さえあります。...クリーナーソリューションのオプションになるかもしれません:)

関連する問題