Suppose we have 2 identical Oracle 11g DB schemas: PRODUCTION
and ARCHIVE
.
The goal is to keep in PRODUCTION
the minimal amount of data required for online operations,
and use ARCHIVE
to store all the data ever appeared in PRODUCTION
to build reports.
To be clear:
- we define "obsolete data" using some custom rules
- "active data" is all the data except for "obsolete data"
ARCHIVE
should be populated by "active data" fromPRODUCTION
by schedule (for example every midnight or every week)- any new "obsolete data" should be removed from
PRODUCTION
but remained inARCHIVE
I believe all these points could be satisfied by independently running:
- Uni-directional replication (for instance, Oracle Streams)
- application for "Obsolete data" removal (suppose it is implemented)
But the problem is that any Obsolete data removing application
implicitly produces REDO logs in PRODUCTION
which are going to be propagated to ARCHIVE
and hence this process leads to data loss in ARCHIVE
.
Could you give an advice, how to organize the process of "partial replication", which could ignore some specific deletions in master schema.