Share via

Complex Data Flow

maliadalar 1 Reputation point
2022-07-26T21:00:39.24+00:00

I have a employee table. I would like to track address changes and other changes(phone, email, etc.)

I would like to run API call if address change to find address property(lets say find new address zip code) and also update if other fields are changed as well.

How can I develop my dataflow so it can only calls API when address changes and updates fields when other changes happen?

Please consider that API is costly to run every time a single change happen to a row even it is not the address itself.

Azure Data Factory
Azure Data Factory

An Azure service for ingesting, preparing, and transforming data at scale.


1 answer

Sort by: Most helpful
  1. MartinJaffer-MSFT 26,161 Reputation points
    2022-07-28T18:48:27.963+00:00

    @maliadalar it sounds like what you need is either a "change feed" or "incremental load".

    I'm not certain what database you are using for your OLTP, so I can't say whether yours has change feed or other features which could push changes as they are made. This way you could sign up to receive the address data you are looking for.

    If your source table has a column that says when a row was last updated, that can be used to pull all changes since your last data load. (see watermark type incremental load)

    On the other side, since it sounds like you already have all the data from both the OLTP and the OLAP in your dataflow as sources, why not just do a join, and then a conditional split. The conditional split could be on whether OLTP address <> == != OLAP address. This would result in one stream with all the mismatches. Then you only need to call the api on the mismatches.

    Was this answer helpful?

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.