What is the solution to this very difficult replication scenario?

We develop an integration for a customer solution. Client is in the medical industry.

Scenario is the following:

(1) there are 26 different DBs in 26 different servers. Say 1 MED... 26.

(2) it is an integration of DB on a separate server: say INT0

(3) every MED DB will have a table named TABLE1.

(4) you must read the inserts to the table and to treatment and introduce to the common table of queue (called QUEUE0) in INT0 DB.

(5) we can create all the DB objects in DBs MED. We have access to these only by using the links to the DB.

My solution:

(a.) create links of 26 DB in the INT0 server.

(b) to create 26 MVs Server INT0 SCHEMA1.

Mv_med1 CREATE MATERIALIZED VIEW

BUILD IMMEDIATELY REFRESH to START WITH (SYSDATE) NEXT (SYSDATE + 1/1440) WITH rowid

AS SELECT * FROM table1@dblink_med1;

Thus, SCHEMA1 of INT0 DB will have 26 MVs pointing to 26 tables in 26 different DBs.

(c) now, I create an insert after outbreak in each of the 26 VM.

CREATE OR REPLACE TRIGGER trg_mv_med1

AFTER INSERT ON mv_med1

FOR EACH LINE

BEGIN

INSERT SCHEMA1. QUEUE0 VALUES (: NEW.pk,: NEW.remarks);

END;

(d) it works. This is, whenever the refresh occurs, all THE ROWS are inserted in the MV. So I get the lines in the table QUEUE0.

What is the solution to this type of problem?

I read on DBMS_SNAPSHOT. I_AM_A_REFRESH, but I do not understand how it works?

We cannot create a MV connects patterns MED being customer policy.

Any solution to this problem would be greatly appreciated?

In general no. When there is a problem on the network and link DB is not workning then write data to the exception handler table using the same DB connection will fail again. You need to connect to a local table in DB MEDx. Create a job that to copy table data of the local error log of MEDx DB DB INT0 regular interval.

If I were you I write all data to the local tables - it's safer and faster (no distributed transaction and no two-phase commit).

Then create jobs that periodically copy data from local INT0 DB tables.

Tags: Database

Similar Questions

Maybe you are looking for

  • SMB works don't upgrade any more after 6.5.0

    After having upgraded my ReadyNas, I can't access any of the SMB shares more. I backed up all the data, reinstalling the OS, performed a factory reset and recreated the actions. I also deleted all focus on the NAS Windows ID on my computer, with no r

  • Save all data acquired by data acquisition

    Hi all I have a problem when I tried to record all the data acquired by the DAQ card. My DAQ is NEITHER 6259, and the version of Labview is 2009. Basically, what I do use several channels to get different point tensions, then subtract values of both

  • can I print from office

    can I print as shown office?

  • BlackBerry personal passport, work Z30 - Questions before I make begins.

    My Q is on how to better implement my new passport (personal Sim) with Z30 (working Sim). GOAL - have all things running through my passport (personal Sim) any transfer of calls to Z30 (Sim works) because I only use calls for communication with the w

  • CCNP security - SISAS 300-208

    p.137 book of Aaron Woland, entirely of distributed deployment "The maximum number of NHPS that may be associated with the PAN + combined MNT in the deployment of four nodes, is five Ssnp, which makes deployment of seven nodes." If my interpretation