Oracle分区表在油田勘探开发数据库中应用.docxVIP

Oracle分区表在油田勘探开发数据库中应用.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Oracle分区表在油田勘探开发数据库中应 用 摘要:本文以油田开发动态“采油井日数据” 表为例,详细介绍了 Oracle分区表的应用。分区表的优点 在于通过把一个大型的表按照一定的条件分割成若干个较 小的分区,可以显著提高表的查询性能,一个查询可能只需 要搜索某个或几个分区而不是整个表就可完成。备份和恢复 的可操作性亦得到改善。管理简单,与普通表相比并没有增 加复杂度。 【关键词】Oralce分区表勘探开发数据库应用 油田的勘探开发数据量是海量的,随着油田勘探和开发 的进行,数据量直线增长。庞大的数据在查询、备份、恢复 和管理中性能的影响也将随之增加。无论是备份还是恢复, 将耗费大量的时间,对查询性能的影响则更加突出,长时间 的等待将使得建立其上的应用难以实用和推广。 Oracle分区表的应用则可解决以上问题,通过把一个大 型的表按照一定的条件分割成若干个较小的分区,可以显著 提高表的查询性能,一个查询可能只需要搜索某个或几个分 区而不是整个表就可完成。与此同时,备份和恢复的可操作 性亦得到改善,针对分区的备份和恢复的操作方法更多。 下面以油田开发动态数据库中“采油井日数据”为例 详解分区表的具体应用操作方法。 1分区表与子分区的创建 将一个大型表划分成若干个分区的方法主要有三类:范 围分区、散列分区和 列表分区。范围分区按表中字段值的范围来决定存储在 哪个分区;散列分区通过在分区键值上执行一个散列函数来 决定存储数据的物理位置;列表分区告诉Oracle所有可能 的值,指定应该插入相应行的分区。由于列表分区和范围分 区对油田来说是最适用的方法,所以在此以列表分区法分区 并以范围分区法为子分区为例来说明。 在不采用分区时,通常创建“采油井日数据”表的语句 为: create table DBAO1 (JH varchar2 (16) primary key, RQ date, CYFS varchar2 (3), DYDM varchar2 (6), DWMC varchar2 (16), ); 我们采用分区表的方式来创建此表,以“单位名称”字 段的值来划分分区,一个大数据量的单位划分独立的分区, 剩下的小数据量单位一起放在一个独立分区里。以上语法修 改为: create table DBA01 (/*略去相应部分*/) partition by list (DWMC) (partition p_list_l values (采油一厂,) /*采油 一厂数据分区*/ tablespace p_list_l_ts, /*存储采油一厂数据的表 空间*/ partition p_list_l values (采》由二厂) tablespace p_list_l_ts, par tition p_lis t_l values (采 j 由三厂,) tablespace p_list_l_ts, /* */ partition p_list_n (default) /*剩余小数据量单位 数据分区*/ tablespace p_list_n_ts /*存储剩余小数据量单位数 据的表空间*/ ); 这样,就把“采油日报”这个与日俱增的大型动态表分 成了以单位为分区的分区表,各单位在查询数据时就不必遍 历整个表,而是仅在自己单位的分区里搜索,大大提高了查 询性能,缩短了等待时间,降低了服务器I/O占用率。然而, 随着一年年的推移,每个单位分区的数据也在不断的扩张, 这时,我们可以用范围分区法以时间来划分子分区,进一步 提高查询性能。以上语法进一步修改为: create table DBA01 (/*略去相应部分*/) partition by list (DWMC) subpartition by range (RQ) (partition p_list_l values (采j由一厂,) (subpartiton p_list_l_sub_l values less than (to_date (, 01—1 月—2006,, DD-MM-YYYY)) subpartiton p_list_l_sub_2 values less t han (to_date (,01-1 月-201T/ DD-MM-YYYY)) subpartiton p_list_l_sub_3 values less than (to_date C 01T 月-2016,「DD-MM-YYYY,)) subpartiton p_list_l_sub_other values less than (maxvalue) ) tablespace p_list_l_ts, /*下面语句写法与上类例,略去*/ ); 2索引分区的创建 有分区表,也有索引分区。下面的语句创建索

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档