Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik and ServiceNow Partner to Bring Trusted Enterprise Context into AI-Powered Workflows. Learn More!
cancel
Showing results for 
Search instead for 
Did you mean: 
rteruya
Contributor II
Contributor II

multiple sources to same destination using CDC


Good morning everyone! 

I have different databases with the same tables and I was wondering if I can use qlik replicate to have a single destination table showing live data. 

example:

server1.customer_table (source end point connection created using MS SQL Server CDC)
server2.customer_table (source end point connection created using MS SQL Server CDC)
server3.customer_table (source end point connection created using MS SQL Server CDC)

I want to see if I can get 
target_server.customer_table getting live data from 3 tables mentioned above. 

Thanks in advance for your help!

 

 

 

 

 
Labels (1)
1 Solution

Accepted Solutions
john_wang
Support
Support

Hello @rteruya ,

Welcome to Qlik Community forum and thanks for reaching out here!

Thank you for your input, KwangHo @khchoy . If the three source databases undergo frequent changes, there is a possibility that the three tasks may impact each other due to lock contention.

To mitigate the risk, I suggest replicating the tables from the three source databases into three corresponding target tables. This approach will reduce dependencies between the tasks. Additionally, you can create a VIEW in the target database to present a unified, real-time view of the 3 tables data. With this structure, the tasks design, management and maintenance is much easier.

Hope this helps.

John.

 

 

Help users find answers! Do not forget to mark a solution that worked for you! If already marked, give it a thumbs up!

View solution in original post

2 Replies
khchoy
Partner - Creator
Partner - Creator

The important point is whether or not there can be duplicate key values ​​when merging records from three tables.

If the PK value or the columns configured in the PK contain values ​​that can distinguish each server, there will be no problem.

task1 for capture from server1
Server1.customer_table -> target_server.customer_table

task2 for capture from server2
Server2.customer_table -> target_server.customer_table

task3 for capture from server3
Server3.customer_table -> target_server.customer_table

However, if the PK values ​​of records generated from each server can be duplicated, a distinguishing column must be added to the target table.
And the added column (column name, e.g. From_Server) must be set to a specific value, that is, a value that can distinguish the source. For example, a record generated from server1 is set to the value of 'server1'. Adding columns or setting specific values ​​can be done in "table settings" -> "transform".

table layout
source customer_table (PK-col,col1,col2,...coln)
targer customer_table (From_Server,PK-col,col1,col2,...coln)

 

 
john_wang
Support
Support

Hello @rteruya ,

Welcome to Qlik Community forum and thanks for reaching out here!

Thank you for your input, KwangHo @khchoy . If the three source databases undergo frequent changes, there is a possibility that the three tasks may impact each other due to lock contention.

To mitigate the risk, I suggest replicating the tables from the three source databases into three corresponding target tables. This approach will reduce dependencies between the tasks. Additionally, you can create a VIEW in the target database to present a unified, real-time view of the 3 tables data. With this structure, the tasks design, management and maintenance is much easier.

Hope this helps.

John.

 

 

Help users find answers! Do not forget to mark a solution that worked for you! If already marked, give it a thumbs up!