I have a scenario where I do not want to deactivate the source party records in Ataccama, even though it no longer exists in the source. Is there a way to achieve this?
Trying to explain a bit more:
So here’s the scenario.
I have multiple source systems(3+) and the data gets refreshed every month.
The refreshed data might have some records deleted from the source system which would lead for them to be deactivated(as per my current source deletion strategy) in mdm, but I don’t want to lose out any processing within ataccama that(such Inactive records) would participate in - like in determining a golden record or in scenarios where we might want to manually compare two or more instance/master records and make a new golden record.
As per whatever information I could gather till now-
If I keep the source deletion strategy as deactivate, I will be able to
- Compare two records that belong to the same entity and form a golden record
- Compare two golden records and merge them.
- If I change my Export strategy to export all existing records, I will be able to do a mapping between Inactive instance records and the golden records (irrespective of manual merge or merge due to mdm processing).
However, if there is a way to not deactivate a record if it is deleted in the next cycle of refresh. Please let me know.
Also, if someone could please review my current understanding and guide me on my approach, it would be really helpful.
Thanks In Advance
Aishwarya
Hi
If you use Full load operation, all records removed from the source system will be deactivated/deleted in MDM - depending on your settings. Your undestanding is correct. If you choose deactivation, these records are still existing in MDM hub and are used in all layers (cleansing, matching, merging). The only difference is that they are marked as Inactive in UI and if Master record consists only from the inactive instances, it will be marked as Inactive as well.
You are also correct regarding the export - if you change exporty strategy to export all existing records, you can get both active and inactive records in the export.
Regarding your last question - if you don’t want to delete/deactivate the missing records in MDM, you can use Delta load operation. In the incremental load, you need to provide change type flag, which tells MDM if the record is upsert (insert/update) or delete. So the difference between full and incremental load is following:
- FULL - MDM excepts all records from the source system and missing records will be deleted/deactivated
- DELTA - only the records where change_type is “D” are deleted/deactivated, the rest is upserted
Hope this helps or let me know if you have any other questions.
Oliver
Hi
This answers my questions. I have a follow-up question regarding delta load.
So, if I put change type as U for all the records after a data refresh, it would mean that the records that were deleted in source will not get deactivated in the web application, right?
Regards,
Aishwarya
Yes, all incoming records will be considered as upsert and nothing will be deactivated.
Consider please if it is a right approach - usually we want to have same records in the source system and MDM instance layer and if the record was deleted in the source, it should be probably be marked as inactive in MDM as well.
Oliver
Reply
Login to the Ataccama Community
No account yet? Create an account
For Ataccama Customers and Partners
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.