Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ORACLEÎﻯÊÓͼ ÀûÓÃά¶ÔÏóÀ´ÓÅ»¯Êý¾Ý²Ö¿âµÄ¸ß¼¶¼¼ÇÉ


http://www.anysql.net/oracle/oracle_olap_dimension.html
ÔÚOracleµÄÊý¾Ý²Ö¿â(OLAP)ÖÐ, ʵÌ廯ÊÓͼ(MVIEW), ²éÑ¯ÖØÐ´(Query Rewrite)ºÍά(Dimension)ÊǷdz£ÖØÒªµÄÓÅ»¯ÊÖ¶Î, ¶ÔÓÚǰÁ½ÕßÎÒ²»ÏëÔÚÕâ¶ùÖØ¸´½²ÁË, Ö÷ÒªÀ´ÌåÑéÒ»ÏÂάµÄ×÷ÓÃ. Òª·¢»ÓάµÄ×÷ÓÃ, »¹ÊÇÐèÒªÓõ½Ç°ÃæÁ½Õß, ÏÂÃæÊÇÎÒÉè¼ÆµÄÖ»ÓÐÒ»¸öά±íµÄ×î¼òµ¥µÄÀý×Ó. Êý¾Ý¿âÓû§³ýÁËconnect, resourceÍâ, »¹Òª¸øÓèQuery Rewrite, Create Materialized View, Create DimensionȨÏÞ.
    1, ´´½¨Ò»¸öά»¤±í.
CREATE TABLE TIME_DIM 
AS
  SELECT TO_CHAR(SYSDATE+ROWNUM,'YYYY') F_YEAR,
         TO_CHAR(SYSDATE+ROWNUM,'YYYY-Q') F_QUATER,
         TO_CHAR(SYSDATE+ROWNUM,'YYYY-MM') F_MONTH,
         TRUNC(SYSDATE+ROWNUM,'DD') F_DAY
  from DBA_OBJECTS
  WHERE ROWNUM < 1000;
ALTER TABLE TIME_DIM MODIFY F_YEAR NOT NULL;
ALTER TABLE TIME_DIM MODIFY F_QUATER NOT NULL;
ALTER TABLE TIME_DIM MODIFY F_MONTH NOT NULL;
ALTER TABLE TIME_DIM MODIFY F_DAY NOT NULL;
ALTER TABLE TIME_DIM ADD PRIMARY KEY (F_DAY);
    2, ´´½¨Ò»¸öÊÂʵ±í.
CREATE TABLE FACT_SALES 
AS
  SELECT TRUNC(SYSDATE+ROWNUM,'DD') F_DAY,
         TRUNC(DBMS_RANDOM.VALUE * 10000,2)  M_AMOUNT1,
         TRUNC(DBMS_RANDOM.VALUE * 10000,2)  M_AMOUNT2
  from DBA_OBJECTS
  WHERE ROWNUM < 1000;
-- Please execute the following insert multiple times
INSERT INTO FACT_SALES 
  SELECT F_DAY,
         TRUNC(DBMS_RANDOM.VALUE * 10000,2)  M_AMOUNT1,
         TRUNC(DBMS_RANDOM.VALUE * 10000,2)  M_AMOUNT2
  from FACT_SALES
/  
ALTER TABLE FACT_SALES MODIFY F_DAY NOT NULL;
ALTER TABLE FACT_SALES ADD FOREIGN KEY (F_DAY) REFERENCES TIME_DIM(F_DAY);
&


Ïà¹ØÎĵµ£º

oracle´¥·¢redoдµÄËĸöÌõ¼þ

µ±LGWR´¦ÓÚ¿ÕÏÐ״̬ʱ£¬ËüÒÀÀµÓÚrdbms rpc messageµÈ´ýʼþ£¬´¦ÓÚÐÝÃß״̬£¬Ö±µ½ÈýÃëʱ¼äµ½£¬Èç¹ûÕâ¸öʱºòLGWR·¢ÏÖÓÐRedoÐÅÏ¢ÐèҪд³öµÄ»°£¬ÄÇôLGWR½«Ö´ÐÐдµÄ²Ù×÷£¬log file parallel writeµÈ´ýʼþ½«»á³öÏÖ¡£
¡¡¡¡×ܽáÒ»ÏÂRedoдµÄ´¥·¢Ìõ¼þ£º
¡¡¡¡1£¬Ã¿ÈýÃëÖÓ³¬Ê±(timeout)£º
µ±LGWR´¦ÓÚ¿ÕÏÐ״̬ʱ£¬ËüÒÀÀµÓÚrdbms r ......

ORACLEÎﻯÊÓͼ Query RewriteµÄÒ»°ãÀí½âÖ®Èý


  ÔÚQuery RewriteÖдó¼Ò¿´µ½Õâ¸ö¼¼ÊõÀë²»¿ªÒ»Ñù¶«Î÷, ʵÌ廯ÊÓͼ, ¼ò³ÆMVIEW. ÕâÊÇOracleÔÚ8iÖÐÊ×ÏÈÍÆ³öµÄ¼¼Êõ, MVIEW³ýÁËÔÚQuery RewriteÖÐʹÓÃÍâ, »¹ÔÚMaster - Slave¸´ÖÆÖÐÓкÜÖØÒªµÄ×÷ÓÃ, ÔÚÕâ¶ùÎÒÃÇÖ÷Òª¹ØÐÄQuery RewriteÏà¹ØµÄµØ·½, OracleÔÚQuery Rewrite·½ÃæÔ½À´Ô½Ç¿ÁË, ÔÚOracle 8iÖлù±¾ÉÏÊÇText Ma ......

ORACLEÎﻯÊÓͼ Query RewriteµÄÒ»°ãÀí½âÖ®Îå


 ¶ÔÓÚÒ»¸ö¸ø¶¨µÄSQL, ºÍÏÖÓеÄMVIEW, Õâ¸öSQL¿ÉÄܱ»Rewrite, Ò²¿ÉÄܲ»Äܱ»Rewrite, ÈçºÎÕÒ³öÕâÆäÖеÄÔ­ÒòÄØ, ¿¿¾­Ñé¿ÉÒÔ½â¾öһЩÎÊÌâ, ²»¹ýËù»¨µÄʱ¼ä¾ÍÒª³¤Ò»µãÁË. ÆäʵÔÚOracleÖÐÌṩÁËÒ»¸öº¯Êý¿ÉÒÔÓÃÓÚ½âÊÍΪʲôij¸öSQL²»Äܱ»ÖØÐ´, Õâ¸ö¹ý³ÌλÓÚdbms_mviewÕâ¸ö°üÖÐ, ¹ý³ÌÃûΪexplain_rewrite, ÓÐÁËÕâ¸ö¹¤¾ß, ¿ÉÒ ......

oracleÖбȽÏʵÓÃsqlÓï¾ä

-- ²é¿´ORACLE Êý¾Ý¿âÖб¾Óû§ÏµÄËùÓбí
SELECT table_name from user_tables;
-- ²é¿´ORACLE Êý¾Ý¿âÖÐËùÓÐÓû§ÏµÄËùÓбí
select user,table_name from all_tables;
-- ²é¿´ORACLE Êý¾Ý¿âÖб¾Óû§ÏµÄËùÓÐÁÐ
select table_name,column_name from user_tab_columns;
-- ²é¿´ORACLE Êý¾Ý¿âÖб¾Óû§ÏµÄËùÓÐÁÐ
se ......

oracleÅúÁ¿(batch)²Ù×÷µÄʹÓÃ

    /**
     * ¸üмǼ£¬Ô­×Ó²Ù×÷£¬²»»ácommit
     * @param sql_id
     * @param condition
     * @return
     * @throws SQLException
     */
  &nbs ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ