First: Oracle 9.2.0 (yes, no patches, don't ask), AIX 4.3.3
Here's my problem: in order to use materialized view logs, table on which
the log is created should be filled with sqlloader using direct load.
Direct load is not reccomended on large tables, because it merges existing
index with index created on added records. It also locks table while
loading, and no update or select can be performed on such table during the
So, if a table is large, you should use materialized view logs, so you can
do fast refresh. But you can't use direct load, because table is large.
If a table is small, you can use direct load. But, there is no point using
materialized view logs, because table is small.
So, how can I use these two?
Right now I have 6 large table (two of them have +200,000,000 rows). I have
some load tables, in which I load stuff with direct load, do some
processing, and then copy data into main tables (insert into a select *
Since tables are large, I'm looking for a way to use materialized views on
them , instead having some summarized data in separate tables, thus having
to maintain procedures to fill those tables.
Have you looked at partitioning the base table and MV's? Partition Change Tracking might help you.
Click Here to Expand Forum to Full Width