「再帰的」または「スナップショット」DataFlowとは、自らを入力として使用するDataFlowのことです。
DataFlow(SQL型もETL型も)は、コネクターのようにネイティブにデータを追加できません。ただし、データを追加するDataFlowを作成する必要がある場合は、それを一度実行し、その出力を次の実行のための入力の一部として使用することで可能になります。このようにして、DataFlowが実行されるたびに、その前のデータが追加され、新しいデータもそれ自身に追加されます。
動画 - 再帰的なDataFlowとは?
再帰的なSQL DataFlowを作成するには
-
SQL DataFlowを作成して実行します。
出力DataSetのクエリは「SELECT * FROM your-input-DataSet」です。
-
DataFlowを実行したら、出力DataSetを入力DataSetとして読み込みます。
出力タイルには出力DataSetの名前の後に「1」が表示されます。
DataFlowに2つのDataSet(更新元の DataSetと履歴のDataSet)がなければなりません。 -
制約として使用する列を見つけます。これは、いつ履歴DataSetの中のデータを新しいデータに置換するかを決定する際に役に立ちます。制約列は通常、ID列または日付列、または他の一意の識別子です。この例では、「日付」列を制約として使用します。
クエリは以下のようになります。 -
データをフィルターし、元のDataSetに存在しない履歴データを取得します。
-
新しいDataSetと履歴DataSetを組み合わせます。
-
新しいデータを履歴DataSetとともに追加します。
-
ステップ1で作成した出力と同じものを使用してデータを出力します。新しい出力を作成する必要はありません。
コメント
0件のコメント
サインインしてコメントを残してください。