I have a question about the probable performance of 2 different approaches to a problem. Lacking an Oracle installation I cannot benchmark. Installation: Oracle 8.1.7, DBD-Oracle 1.06, DBI 1.15 I have 2 different Oracle databases on 2 different machines, let's call it oradb1 and oradb2. I have to compare the contents of a lot of tables in these oradb1 and oradb2. Let's assume table1 is in oradb1 and table2 in oradb2. Approach A: 1. connect to oradb1 2. create database-link to oradb2 3. issue select * from oradb1.table1 minus select * from oradb2.table2 4. issue select * from oradb2.table2 minus select * from oradb1.table1 Approach B: 1. connect to oradb1 2. write result of "select * from oradb1.table1" to file fdb1 3. sort fdb1 (UNIX command sort) 4. connect to oradb2 5. write result of "select * from oradb2.table2" to file fdb2 6. sort fdb2 (UNIX command sort) 7. diff fdb1 fdb2 (UNIX command diff) Comment to Approach B: Steps (2,3), (5,6) and (7) are done by seperate child process that run partially in parallel. Any hints (or better appoaches) are welcome. Should I use "order by" in the select clause instead of "UNIX sort". Thanks, Peter
