Case Study: ODI as Web Services Provider
Author: Alexky Amoroso
Business Analytics & Big Data Consultant @Quistor
One of our customers needed a way to synchronize personal data across several applications to satisfy the General Data Protection Regulation (GDPR).
As a requirement of GDPR, when several systems store personal data, you need to guarantee that the consents you have been granted are up to date everywhere. For example, one of your customers logs into your website and revokes his consent to receive marketing emails. The next day you prepare a marketing campaign whose target includes this customer. If your marketing tool uses a database with obsolete consents, you are running into a risk.
In our customer environment four applications store personal data and the consents in different databases, both on-premises and cloud. All four could be the source of data modifications.
One of the sources is SalesForce and the rest are three tailor-made software applications.
There are multiple mechanisms to achieve this synchronization, from master data management tools to database replication or software developments. Considering the tools available in the customer, the solution proposed was to keep the information in a centralized database and to offer an easy way to access and update this information from the four systems.
One of the tools available and already in use to read data from these systems was Oracle Data Integrator.
All the systems except Salesforce were able to call external web services so we used the ODI data services feature to expose a web server able to query and update the personal data.
When personal data is created or modified in one of the systems they call an ODI web service that creates or updates the information in the centralized table. Every time the personal data is accessed from the other three systems, a web service query is sent to the database to check the last status, if the local data is different from the master one, the information in the system is updated.
Due to the impossibility to call a web service from SalesForce, the synchronization between the centralized table and Salesforce is done periodically from ODI with an ETL process that sends all the updated data.
ODI has more use cases than the traditional Extract Load and Transform.
By Alexky Amoroso
Before you go
Feel free to ask us any question, ask for more information or simply say hello in this contact form.