I'm a newbie to OEDQ
We are planning to use OEDQ for matching new customers we create using our application
Basically we want to match incomming data against our customer database and check if there are any matching records, if found any will be returned to the user
I'm planning to design the process and expose it as a webservice
I have a customer database of 2 million. which will keep on getting added daily, so this data source needs to be refreshed daily
Can anyone please suggest how will I do the data source refresh and which processor to use that matches my requirement
I will take care of standardization of input data before I perform matching
Please note first of all that EDQ comes with pre-configured matching services for exactly this purpose so you do not normally need to configure all the rules yourself, though of course you can if needed.
The standard architecture is not to attempt to synchronize the data between the application and DQ, but to pass the data between - so avoiding the many issues with data replication and synchronization.
In this architecture, EDQ provides Key Generation as a service. The service is first run in batch on all records in the system. Key values then need to be stored in a skinny table (ID, Key) in the application. Many key values are created per record.
Then in business as usual processing, a new or updated record is passed to EDQ and its keys generated using the service. The keys are then used to select candidates (records which might match the driving record) using the skinny table, and some logic to select the DQ data (name, addresses, emails, phone numbers, SSN etc.) from the app. database. Then both the driving record and the candidates are passed to the matching service, which passes back the records which are a good match along with a score and a rule name indicating why they matched.
All of the above is provided and described in the EDQ Customer Data Services Pack. See http://www.oracle.com/technetwork/middleware/oedq/documentation/index.html for more information.