You may want to look at Oracle-supplied utitilies, in particular exp, which dumps consistent snapshots of parts (or the whole) of the database. You can then later import these with the imp utility.
in reply to deep copy of complex database tables
If you are only concerned with a few tables, you can just do something like the following (which would also work across database links if you set those up):
create table testschema.blah as select * from realschema.blah;
What do you mean by "complex" tables that need a "deep copy"?