oracle分区技术-大批量数据操作.ppt_第1页
oracle分区技术-大批量数据操作.ppt_第2页
oracle分区技术-大批量数据操作.ppt_第3页
oracle分区技术-大批量数据操作.ppt_第4页
oracle分区技术-大批量数据操作.ppt_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、,Oracle数据库高级技术交流 -大批量数据处理技术,Oracle(中国)顾问咨询部 罗 敏 资深技术顾问 电话eMail: M,交流内容,分区技术 报表优化技术 并行处理应用经验,Oracle的分区技术,分区技术内容,什么是分区? 分区的好处? 如何实施分区? 如何评估分区的效果?,Oracle的分区技术基本原理,分而治之,2003,2004,2005,2006,分区概述,大数据对象 (表, 索引)被分成小物理段 当分区表建立时,记录基于分区字段值被存储到相应分区。 分区字段值可以修改。(row movement enabled) 分区可以存储在不同的表空间 分区

2、可以有不同的物理存储参数 分区支持IOT表,对象表,LOB字段,varrays等,分区技术的效益和目标,性能 Select和DML操作只访问指定分区 并行DML操作 Partition-wise Join 可管理性:数据删除,数据备份 历史数据清除 提高备份性能 指定分区的数据维护操作 可用性 将故障局限在分区中 缩短恢复时间 分区目标优先级 高性能 数据维护能力-实施难度 高可用性(故障屏蔽能力),分区方法,分区方法: 范围 - 8 Hash - 8i 列表 - 9i 组合 - 8i,Rangepartitioning,Hashpartitioning,1,2,3,CREATE TABLE

3、sales (acct_no NUMBER(5), person VARCHAR2(30), sales_amount NUMBER(8), week_no NUMBER(2) PARTITION BY RANGE (week_no) (PARTITION P1 VALUES LESS THAN (4) TABLESPACE data0, PARTITION P2 VALUES LESS THAN (8) TABLESPACE data1, . PARTITION P13 VALUES LESS THAN (53)TABLESPACE data12 );,分区字段:week_no. VALUE

4、S LESS THAN 必须是确定值 每个分区可以单独指定物理属性,1,2,3,范围分区例,最早、最经典的分区算法 Range分区通过对分区字段值的范围进行分区 Range分区特别适合于按时间周期进行数据的存储。日、周、月、年等。 数据管理能力强 数据迁移 数据备份 数据交换 范围分区的数据可能不均匀 范围分区与记录值相关,实施难度和可维护性相对较差,范围分区特点,Hash分区例,create table CUSTOMERS (. column definitions .) pctfree 0 nologging storage ( initial 40m next 40m pctincrea

5、se 0 ) partition by hash(customer_no) partitions 8 store in (cust_data01,cust_data02) create table CUSTOMERS (. column definitions .) pctfree 0 nologging storage ( initial 40m next 40m pctincrease 0 ) partition by hash(customer_no) (partition cust_p01 tablespace cust_data01 ,partition cust_p02 table

6、space cust_data02 ,partition cust_p03 tablespace cust_data03 ,partition cust_p04 tablespace cust_data04 ,partition cust_p05 tablespace cust_data05 ,partition cust_p06 tablespace cust_data06 ,partition cust_p07 tablespace cust_data07 ,partition cust_p08 tablespace cust_data08),Hash分区特点,基于分区字段的HASH值,自

7、动将记录插入到指定分区。 分区数一般是2的幂 易于实施 总体性能最佳 适合于静态数据 HASH分区适合于数据的均匀存储 HASH分区特别适合于PDML和partition-wise joins。 支持 (hash) local indexes 9i 不支持 (hash) global indexes 10g 支持(hash) global indexes HASH分区 数据管理能力弱 HASH分区对数据值无法控制,列表分区例,create table addresses (. column definitions .) pctfree 0 nologging storage ( initial

8、 40m next 40m pctincrease 0 ) partition by list(city_name) (partition addr_p01 values (WELLINGTON) tablespace addr_data01 ,partition addr_p02 values (CHRISTCHURCH) tablespace addr_data02 ,partition addr_p03 values (DUNEDIN,INVERCARGILL) tablespace addr_data03 ,partition addr_p04 values (AUCKLAND) ta

9、blespace addr_data04 ,partition addr_p05 values (HAMILTON,ROTORUA,TAURANGA) tablespace addr_data05),列表分区特点,List分区通过对分区字段的离散值进行分区。 List分区是不排序的,而且分区之间没有关联关系 List分区适合于对数据离散值进行控制。 List分区只支持单个字段。 List分区具有与范围分区相似的优缺点 数据管理能力强 List分区的数据可能不均匀 List分区与记录值相关,实施难度和可维护性相对较差,复合分区例,create table daily_trans_data (.c

10、olumn definitions .) partition by range(trans_datetime) subpartition by hash(customer_no) subpartitions 8 store in (dtd_data01,dtd_data02) (partition dtd_20010620 values less than (to_date(21-jun-2001,dd-mon-yyyy) (subpartition dtd_20010620_s01 ,subpartition dtd_20010620_s02 ,subpartition dtd_200106

11、20_s03 tablespace dtd_data03 ,subpartition dtd_20010620_s04 tablespace dtd_data04 ,subpartition dtd_20010620_s05 tablespace dtd_data05 ,subpartition dtd_20010620_s06 tablespace dtd_data06 ,subpartition dtd_20010620_s07 tablespace dtd_data07 ,subpartition dtd_20010620_s08 tablespace dtd_data08 ) ,par

12、tition dtd_20010621 values less than (to_date(22-jun-2001,dd-mon-yyyy) ,partition dtd_20010622 values less than (to_date(23-jun-2001,dd-mon-yyyy) subpartitions 4 ),复合分区图示,复合分区特点,Oracle支持的Composite分区: Range-Hash,Range-List 既适合于历史数据,又适合于数据均匀分布 与范围分区一样提供高可用性和管理性 更好的PDML和partition-wise joins性能 实现粒度更细的操作

13、 支持复合 local indexes 不支持复合compositeglobal indexes?,分区索引,表,索引,Local partitioned index,Global Partitioned Index,不同的分区索引,绍兴,杭州,温州,分区索引,分区表索引的分类: Local Prefixed index Local Non-prefiexed index Global Prefixed index Non Partition Index Global索引的分区不同与表分区 Local索引的分区与表分区相同 An index is prefixed if it is parti

14、tioned on a left prefix of the index columns. 分区表上的非分区索引等同于Global索引,分区索引,Global索引必须是范围分区 - 9i之前 Global索引可以是HASH分区 - 10g新特性 Global索引不支持Bitmap索引 Unique索引必须是prefixed,或者包含分区字段 Local索引(non-prefixed, non-unique)可以不包含分区字段,create index cust_idx1 on customers(customer_name) global partition by range (custome

15、r_name) (partition cust_p01 values less than (H) tablespace cust_index01 ,partition cust_p02 values less than (N) tablespace cust_index02 ,partition cust_p03 values less than (T) tablespace cust_index03 ,partition cust_p04 values less than (MAXVALUE) tablespace cust_index04) create index cust_idx2 o

16、n customers(customer_no) local (partition cust_idx_p01 tablespace cust_index01 ,partition cust_idx_p02 tablespace cust_index02 ,partition cust_idx_p03 tablespace cust_index03 ,partition cust_idx_p04 tablespace cust_index04 ,partition cust_idx_p05 tablespace cust_index05 ,partition cust_idx_p06 table

17、space cust_index06 ,partition cust_idx_p07 tablespace cust_index07 ,partition cust_idx_p08 tablespace cust_index08) create index cust_idx3 on customers(customer_type) local;,分区索引举例,分区表索引的使用,OLTP系统中的建议 Global和unique local index性能优于nonunique local index Local index提供了更好的可用性 数据仓库系统中的建议 Local index更适合于数

18、据装载和分区维护 在大量数据统计时,能充分利用Local index并行查询能力 在性能、高可用性和可管理性之间进行平衡,分区索引选择策略,分区裁剪功能,Partition pruning: Only the relevant partitions are accessed.,99-May,99-Apr,99-Feb,99-Jan,99-Mar,99-Jun,sales,SQL SELECT SUM(sales_amount) 2 FROM sales 3 WHERE sales_date BETWEEN 4 TO_DATE(01-MAR-1999, 5 DD-MON-YYYY) AND 6

19、TO_DATE(31-MAY-1999, 7 DD-MON-YYYY);,分区裁剪举例,1 select * from daily_trans_summ 2* where trans_datetime between to_date(25-jun-2001 08,DD-mon-yyyy hh24) and to_date(28-jun-2001 18,DD-mon-yyyy hh24) Partition Partition Operation Options Object Name Start Stop - - - - - SELECT STATEMENT PARTITION RANGE I

20、TERATOR 231 234 TABLE ACCESS FULL DAILY_TRANS_SUMM 231 234 1 select * from daily_trans_summ 2* where trans_datetime in (25-jun-2001,28-jun-2001) Partition Partition Operation Options Object Name Start Stop - - - - - SELECT STATEMENT PARTITION RANGE INLIST KEY(INLIST) KEY(INLIST) TABLE ACCESS FULL DA

21、ILY_TRANS_SUMM KEY(INLIST) KEY(INLIST),Nonpartition-wise join,Full partition-wise join,Partial partition-wise join,Query slave,Partition,Partitioned table,1,2,3,Partition-Wise Join,Partition-wise Joins,Tables and indexes that are partitioned identically are equi-partitioned. A full partition-wise jo

22、in occurs when joining two equi-partitioned tables that are partitioned on the join key. Oracle splits the join into joins of pairs of partitions. A partial partition-wise join occurs when only one of the tables is partitioned on the join key. Partition-wise joins occur when joining a hash partition

23、 table to a composite partition table if the hash partitioning and sub-partitioning is on the join key. Oracle assigns parallel query slaves to process the partition joins.,Partition-wise Joins举例,1 select /*+ full(c) */ c.customer_no, count(*) 2 from customers c, daily_trans_data d 3 where c.custome

24、r_no = d.customer_no 4 and d.trans_datetime between to_date(25-jun-2001,dd-mon-yyyy) 5 and to_date(28-jun-2001,dd-mon-yyyy) 6* group by c.customer_no Partition Partition Operation Options Object Name Start Stop - - - - - SELECT STATEMENT PARTITION HASH ALL 1 8 SORT GROUP BY HASH JOIN PARTITION RANGE

25、 ITERATOR 50 53 TABLE ACCESS FULL DAILY_TRANS_DATA 393 424 TABLE ACCESS FULL CUSTOMERS 1 8,分区表设计原则,表的大小:当表的大小超过1.5GB2GB,或对于OLTP系统,表的记录超过1000万,都应考虑对表进行分区。 数据访问特性:基于表的大部分查询应用,只访问表中少量的数据。对于这样表进行分区,可充分利用分区排除无关数据查询的特性。 数据维护:按时间段删除成批的数据,例如按月删除历史数据。对于这样的表需要考虑进行分区,以满足维护的需要。 数据备份和恢复: 按时间周期进行表空间的备份时,将分区与表空间建立

26、对应关系。 只读数据:如果一个表中大部分数据都是只读数据,通过对表进行分区,可将只读数据存储在只读表空间中,对于数据库的备份是非常有益的。 并行数据操作:对于经常执行并行操作(如Parallel Insert,Parallel Update等)的表应考虑进行分区。 表的可用性:当对表的部分数据可用性要求很高时,应考虑进行表分区。,分区表的管理功能,分区的增加(ADD) 分区的删除(DROP) 分区的合并(MERGE) 分区的清空(TRUNCATE) 分区的交换(EXCHANGE) 分区的压缩(COALESE) 分区的移动(MOVE) 分区的分离(SPLIT) 修改分区的Default Attr

27、ibute 分区的更名(RENAME),分区索引的管理功能,分区索引的删除(DROP) 分区索引的修改(MODIFY) 分区索引Default Attribute的修改 分区索引的重建(REBUILD) 分区索引的更名(RENAME) 分区索引的分离(SPLIT) 分区索引的Unusable,分区表和Local索引,AUG2002,新月份数据的加载和索引的维护,.,“滚动窗口”操作 - 大量数据高速装载,删除或归档最老月份的数据,新月份数据的加载和索引的维护,.,分区表和Local索引,“滚动窗口”操作 - 大量数据高速装载,分区交换功能,通过交换数据段,实现分区和非分区表的数据交换。以及子分

28、区和分区表的数据交换 非常快捷的数据移动方式。特别是没有validation和索引维护操作时 Local 索引自动维护 Global索引必须重建,分区交换的应用- 全文检索,12:00分区,BF_DXX_stage中间表,(1)1:00数据的加载,(2)建立context 索引,(3)partition的exchange,BF_DXX表,* 初始化工作,* 整理工作, ,2:00分区,1:00分区,分区交换的应用- 全文检索,第一步:1:00数据的加载 insert into BF_DXX_stage(SJ,TEXT3) values(to_date(2004.03.02,YYYY.MM.DD

29、),大撒反对撒); 第二步:建立context 索引 CREATE INDEX IDX_ BF_DXX _STAGE ON BF_DXX_stage(text3) INDEXTYPE IS CTXSYS.CONTEXT PARAMETERS (LEXER MYLEXER STORAGE MYSTORE FILTER CTXSYS.NULL_FILTER MEMORY 100M) parallel 4; 第三步:partition的交换 alter table BF_DXX exchange partition p2 with table BF_DXX_stage including index

30、es;,迁移表空间(Transportable Tablespace)技术简介,第一步:exp transport_tablespace=yes 第二步:FTP 数据文件和dmp文件 第三步:imp transport_tablespace=yes,迁移表空间技术的作用,业务系统数据向数据仓库系统的迁移 对业务系统和数据仓库系统的数据进行定期归档 数据仓库向数据集市的数据迁移 数据对外发布 按表空间进行时间点的数据恢复(TSPITR),迁移表空间技术的优点,性能大大高于export/import或PL/SQL编写的程序 由于Dmp文件只包含表空间的结构信息,因此该技术的真正开销在于数据文件的传

31、输。 对源系统的影响非常小 只需要将被迁移的表空间设置为只读方式 可同时传输索引数据,避免在目的数据库中重建索引,分区交换的应用- ETL,在源系统中,将需要抽取的数据以如下语句形式,抽取到建立在单独表空间上的中间表中: CREATE TABLE . AS SELECT INSERT /*+ APPEND */ AS SELECT 以TTS方式将中间表的表空间传输到数据仓库之中。 exp transportable_tablespace=Yes FTP 中间表表空间的数据文件 imp transportable_tablespace=Yes 在数据仓库中对中间表进行各种数据归并等清洗工作,并建

32、立需要的各种索引。 通过exchange技术,将中间表数据及索引直接交换到分区表中。 Alter table exchange partition with table including indexes;,分区交换的应用-重复记录删除,问题描述: 在使用SQL*Loader进行数据加载sor_acct_dcc_saamt_c表时,由于操作失误,重复加载,导致分区ETL_LOAD_DATE_0606出现重复记录,也使得两个唯一索引:IDX_SAACNAMT_C_1,IDX_SAACNAMT_C_2的ETL_LOAD_DATE_0606分区不可用(UNUSABLE)。 用户在试图重新创建该分区索

33、引时,出现如下错误: SQL alter index IDX_SAACNAMT_C_2 rebuild partition ETL_LOAD_DATE_0606; alter index IDX_SAACNAMT_C_2 rebuild partition ETL_LOAD_DATE_0606 * ORA-01452: cannot CREATE UNIQUE INDEX; duplicate keys found,分区交换的应用-重复记录删除,在试图删除该分区的重复记录时,又出现如下错误: SQL delete from sor_acct_dcc_saamt_c partition(ETL_

34、LOAD_DATE_0606) where rowid not in (select min(rowid) from sor_acct_dcc_saamt_c partition(ETL_LOAD_DATE_0606) group by ETL_LOAD_DATE, CUST_ACCT_NO, SA_CURR_COD, SA_CURR_IDEN); * ORA-01502: index GYFX.IDX_SAACNAMT_C_1 or partition of such index is in unusable state,分区交换的应用-重复记录删除,简单办法是彻底删除这两个唯一索引,重新创

35、建。 数据量大,时间太长。 影响系统的可用性。 更完备的解决方式 创建一个与sor_acct_dcc_saamt_c结构一样的临时表test。 SQL create table test as select * from sor_acct_dcc_saamt_c where 1=2; 将sor_acct_dcc_saamt_c表分区ETL_LOAD_DATE_0606数据交换到临时表test。 SQL alter table sor_acct_dcc_saamt_c exchange partition ETL_LOAD_DATE_0606 with table test;,分区交换的应用-重

36、复记录删除,更完备的解决方式 删除test中的重复记录 delete from test where rowid not in (select min(rowid) from test group by ETL_LOAD_DATE, CUST_ACCT_NO, SA_CURR_COD, SA_CURR_IDEN); 因为test表没有任何索引,可避免上述ORA-01502错误。 将临时表test数据交换回sor_acct_dcc_saamt_c表分区ETL_LOAD_DATE_0606 。 alter table sor_acct_dcc_saamt_c exchange partition

37、ETL_LOAD_DATE_0606 with table test;,分区交换的应用-重复记录删除,更完备的解决方式 重新创建创建该分区索引IDX_SAACNAMT_C_1,IDX_SAACNAMT_C_2 alter index IDX_SAACNAMT_C_1 rebuild partition ETL_LOAD_DATE_0606 tablespace ETL0_R_LOAD_IDX_200606; alter index IDX_SAACNAMT_C_2 rebuild partition ETL_LOAD_DATE_0606 tablespace ETL0_R_LOAD_IDX_2

38、00606; 此时重复记录已经删除,可避免上述ORA-01452错误,现有系统实施分区的经验,分区对象的确定:存储空间最大的前20个表 Select * from (Select * from dba_segments order by bytes desc) where rownum = 20; 分析大表的操作行为 Select * from (Select sql_text,executions from v$sqlarea where upper(sql_text) like %SB_ZSXX% order by executions desc) where rownum = 20; 综

39、合其它分区因素的考虑:性能,数据迁移,备份,高可用性,可维护性,分区的评估,性能方面 相应速度 资源消耗(CPU、内存、I/O) 性能分析工具的使用:Oracle Trace, Autotrace, TKPROF 其它方面 数据迁移能力 数据备份和恢复 数据扩展性(Add, Drop, Exchange, Merge, ) 数据高可用性,Oracle报表优化技术,报表处理问题,报表处理是大部分IT系统是最耗时、最消耗资源的模块 报表处理,主要通过Formula One、BO等报表处理工具实现 SQL语句基本都是各种统计运算语句。SUM GROUP BY 各种报表的表格单元都是统计运算语句生成。

40、统计运算语句量非常大 统计运算语句,基本都是从一些交易明细表或基表,直接进行汇总运算操作,其他汇总数据,按月汇总的 逾期未归还贷款本金的统计,查询,汇总数据管理 - 物化视图Materialized View,辽宁省和四川省逾期91180天未归还贷款本金的贷款用户总数 ?,按地区汇总的 逾期未归还贷款本金的统计,物化视图,SQL查询的实例化 物化视图可以设置成查询重写功能 刷新类型: Complete or Fast Force or Never 刷新模式: Manual Automated (同步或异步),查询重写概述,查询物化视图,而不是基表,将极大提高查询统计性能。 查询重写功能对应用透

41、明。不需要特殊权限。 查询重写 与大小写无关 不支持子查询,物化视图创建例,SQL CREATE MATERIALIZED VIEW sales_summary 2 TABLESPACE users 3 PARALLEL (DEGREE 4) 4 BUILD IMMEDIATE 5 ENABLE QUERY REWRITE 6 AS 7 SELECT d_name, 8 SUM (s.quantity_sold), 8 SUM (s.amount_sold) 9 FROM sales s, products p 10 WHERE d_id = d_id 11 GR

42、OUP BY d_name;,物化视图创建和查询重写例,SQL SELECT d_name,SUM (s.quantity_sold), 2 SUM (s.amount_sold) 3 FROM sales s, products p 4 WHERE d_id = d_id 5 GROUP BY d_name;,SQL select operation, object_name 2 from v$sql_plan 3 where object_name like SALES%; OPERATION NAME - - SELECT STATEME

43、NT TABLE ACCESS SALES_SUMMARY,报表优化的基本思路,以报表为单位,分析现有报表的SQL语句。总结统计运算SQL的共同规律,作为设计物化视图的考虑对象。 定义相应的物化视图。包括SQL查询语句的编写,刷新方式的确定等 评价原有统计运算SQL语句的执行计划,是否被Oracle查询重写到相应的物化视图 评价如何在物化视图上创建索引 评估所有物化视图数据和索引的空间消耗情况,从而确定物化视图数据和索引表空间的容量,报表优化示例,现有统计运算语句 SELECT ts_stab.VIP_ORG_STAFF.VIP_ORGAN3_NAME, ts_stab.VIP_ORG_STA

44、FF.VIP_ORGAN2_NAME, sum(ts_dyna.VIP_ACCT_ALL.T1)/100, sum(ts_dyna.VIP_ACCT_ALL.T29)/100 )/100 FROM ts_stab.VIP_ORG_STAFF, ts_dyna.VIP_ACCT_ALL WHERE (ts_dyna.VIP_ACCT_ALL.STAFF_ID=ts_stab.VIP_ORG_STAFF.STAFF_ID) AND ( ( ts_stab.VIP_ORG_STAFF.VIP_ORGAN3 ) = org2 OR ALL=org2 ) AND ( ( ts_stab.VIP_ORG_

45、STAFF.VIP_ORGAN2 ) = ALL OR ALL= ALL ) AND ( ( ts_dyna.VIP_ACCT_ALL.ACCOUNT_DATE ) = 200401 AND ( ts_dyna.VIP_ACCT_ALL.ACCOUNT_DATE ) = 200401 ) GROUP BY ts_stab.VIP_ORG_STAFF.VIP_ORGAN3_NAME, ts_stab.VIP_ORG_STAFF.VIP_ORGAN2_NAME,报表优化示例,物化视图定义 CREATE MATERIALIZED VIEW MV_01 TABLESPACE TS_TAB_DYN PA

46、RALLEL (DEGREE 2) BUILD IMMEDIATE REFRESH COMPLETE ON DEMAND ENABLE QUERY REWRITE AS SELECT ts_stab.VIP_ORG_STAFF.VIP_ORGAN3_NAME, ts_stab.VIP_ORG_STAFF.VIP_ORGAN2_NAME, ts_stab.VIP_ORG_STAFF.VIP_ORGAN3, ts_stab.VIP_ORG_STAFF.VIP_ORGAN2, ts_dyna.VIP_ACCT_ALL.ACCOUNT_DATE, sum(ts_dyna.VIP_ACCT_ALL.T1

47、), sum(ts_dyna.VIP_ACCT_ALL.T29) FROM ts_stab.VIP_ORG_STAFF, ts_dyna.VIP_ACCT_ALL WHERE ( ts_dyna.VIP_ACCT_ALL.STAFF_ID=ts_stab.VIP_ORG_STAFF.STAFF_ID ) GROUP BY ts_stab.VIP_ORG_STAFF.VIP_ORGAN3_NAME, ts_stab.VIP_ORG_STAFF.VIP_ORGAN2_NAME, ts_stab.VIP_ORG_STAFF.VIP_ORGAN3, ts_stab.VIP_ORG_STAFF.VIP_

48、ORGAN2, ts_dyna.VIP_ACCT_ALL.ACCOUNT_DATE,报表优化示例,TABLESPACE TS_TAB_DYN:物化视图MV_01存放的表空间。建议为物化视图单独设立表空间 PARALLEL (DEGREE 2):并行度设计为2(与目前的CPU个数相等) BUILD IMMEDIATE:创建MV_01的同时,产生汇总数据 REFRESH COMPLETE ON DEMAND:完全刷新 ENABLE QUERY REWRITE:启动查询语句重写功能,报表优化示例,SELECT短语应包含的字段 原SELECT语句的所有非统计运算字段。 ts_stab.VIP_ORG_

49、STAFF.VIP_ORGAN3_NAME, ts_stab.VIP_ORG_STAFF.VIP_ORGAN2_NAME, 原SELECT语句中所有查询条件涉及到的字段。如: ts_stab.VIP_ORG_STAFF.VIP_ORGAN3, ts_stab.VIP_ORG_STAFF.VIP_ORGAN2, ts_dyna.VIP_ACCT_ALL.ACCOUNT_DATE, 原子化(Primitive)的统计运算字段。即去掉表达式的统计运算字段 sum(ts_dyna.VIP_ACCT_ALL.T1), sum(ts_dyna.VIP_ACCT_ALL.T29),报表优化示例,创建物化视图上的索引 create index idx_MV_01_01 on MV_01(VIP_ORGAN3) tablespace TS_IND_DYNA; 物化视图上的刷新 定期执行如下命令,可自动进行物化视图的刷新 exec dbms_mview.refresh(TS_DYNA.MV_01);,报表优化示例

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论