I have a set of Materialized views in my DB . we refresh ( COMPLETE) these mvs, couple of times a day. Webserver ( application ) will hit these MVs to show the data on web pages. But the complete Refresh of MVs are consuming much time and , at this point of time , Application is not able to show right data on web pages. This is like a down time. I need some suggestions from you all, in order to minimize or zeroing this down time.

The first thing i can think of is , FAST refresh , but one of my Sr.DBA told me that the MV definition will not allow us for a FAST refresh( Are there any limitations for FAST refresh ???? ). Here is a sample MV Definition :

CREATE MATERIALIZED VIEW GENRELOB
NOLOGGING
BUILD IMMEDIATE
REFRESH COMPLETE ON DEMAND
DISABLE QUERY REWRITE
AS SELECT DISTINCT
'1' AS CLIP,
LOB.LOB_ID,
LOB.LOB_CD,
GENRE.GENRE_ID,
GENRE.GENRE_DESC,
GENRE.GENRE_DESC AS INSTANCENAME
FROM
GENRE,
GENRE_LOB_XREF,
LOB,
GENRE_PRODUCT_XREF
WHERE
GENRE.GENRE_ID = GENRE_LOB_XREF.GENRE_ID AND
GENRE_LOB_XREF.LOB_ID = LOB.LOB_ID AND
GENRE_PRODUCT_XREF.genre_id = GENRE.genre_id AND
GENRE.DSPLY_IND = 'Y'
ORDER BY
LOB_CD,
GENRE_DESC
;


My Goal is to view the FRESH data on web pages all the time , irrespective of MV Refresh. Would anybody suggest me some bright ideas , to have no or less down time ???

thanks in advance