Mam bazę danych Oracle i bazę danych SQL Server. Istnieje jedna tabela, na przykład Inventory
, która zawiera miliony wierszy w obu tabelach bazy danych i stale rośnie.Porównaj miliony rekordów z Oracle do SQL Server
Chcę porównać dane tabeli Oracle z danymi SQL Server, aby dowiedzieć się, których rekordów brakuje w tabeli SQL Server codziennie.
Który jest najlepszy sposób na to?
- Utwórz pakiet SSIS.
- Utwórz usługę Windows.
Chcę spożywać mniej zasobów, aby uzyskać tę funkcjonalność, która zajmuje mniej czasu i mniej zasobów.
Np: 18 milionów rekordów w Oracle i 16/17 miliony w SQL Server
Ta sytuacja z dwoma różnymi bazie powstają z powodu dwóch różnych aplikacji online i offline
EDIT: Jak o podłączenie serwera SQL od Oracle przez Bramę Oracle do serwera SQL do
1) Bezpośrednie zapytanie do serwera SQL od Oracle w celu aktualizacji brakującego rekordu na serwerze SQL po raz pierwszy.
2) Utwórz wyzwalacz na Oracle, który zostanie wykonany, gdy rekord zostanie usunięty z Oracle i wstawi usunięty rekord do nowej tabeli oracle.
3) Utwórz pakiet SSIS, aby zmapować nowo utworzoną tabelę oracle z serwerem SQL, aby zaktualizować rekord serwera SQL. W ten sposób tylko kilka rekordów musi przetwarzać codziennie przez SSIS.
Co sądzisz o tym podejściu?
Myślę, że dobrą długoterminową strategią byłoby nie przechowywać Państwa przez różne RDBMS. Czy mógłbyś zaktualizować pytanie wyjaśniające, w jaki sposób skończyłeś z tym problemem? –
Czy możesz nam wyjaśnić, w jaki sposób rekordy są obecnie duplikowane? – Giova
Baza danych Oracle ma wszystkie rekordy .. i istnieje możliwość, że rekordy zostaną usunięte z bazy Oracle i musimy zaktualizować rekordy serwera SQL, które zostały usunięte z bazy oracle – Mahajan344