分而治之:从多列到自动Oracle 12.2 分区新特性抢先一览

何剑敏 Oracle ACS华南区售后团队,首席技术工程师

曾供职于中国联通信息计费部、卓望数码、IBM。现供职于Oracle ACS华南区售后团队,首席技术工程师。多年从事一线的数据库运维工作,有丰富项目经验、维护经验和调优经验,专注于数据库的整体运维。

编者:Oracle的分区技术一直是对数据分而治之的重要手段,在12.2中,更加由这一技术演化出Sharding的新特性,那么回归分区技术本身,我们来看看在这一版本中,又有哪些分区功能上的增强。

Oracle database 12.2 有不少分区加强的特性,主要的特性如下列表:

  • Multi-Column List Partitioning - 多列列表分区
  • Auto list Partitioning - 自动列表分区
  • Interval SubPartitioning - 间隔子分区
  • Online Partition Maintenance Operation
  • Online Table Conversion to Partition Table
  • Filtered Partitioning Maintenance Operation
  • Read Only Partitions

一下通过几个举例列举几个分区特性。

1. multi-column list partition - 多列列表分区

支持多列组合作为列表分区的分区键值,最多支持16个列

2. auto-list partition - 自动的列表分区

当列表项数据到来之时,分区相应自动创建

3. interval subpartition

这是Interval分区的进一步扩展,子分区支持自动间隔的创建。

4.online DDL for partition

很多DDL操作支持在线进行,比如在线将表修改为分区表:

注 1:统计信息会收集

注 2:从10046的trace看,似乎是临时创建了 SYS_JOURNAL_ ,SYS_RMTAB$$_H ,SYS_RMTAB$$_I 以及上面的索引,在进行捣鼓,另外还有一堆数据字典的更新。没有看到类似 dbms_redefinition 在线重定义的功能的介入,没有看到在线重定义时关于物化视图 create snaphot,和 MLOG$_XXX 这样的关键字。

5. Filtered Partition on Maintenance Operations

在 MOVE,SPLIT,MERGE partition 的时候,可以进行过滤,这极大简化了分区维护操作:

注1:where 条件后面的字段千万不能写错,不然数据全没了。如错写成 INCLUDING ROWS WHERE channel = ‘CHINA’,MOVE 之后则分区4的数据全没了。因为 including row 表示留下的数据,而 channel = ‘CHINA’ 这样的数据一条都没有,所以就清空了分区。

6. Read only partition

只读分区可以将特定分区设置为只读

原文发布于微信公众号 - 数据和云(OraNews)

原文发表时间:2016-05-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Rgc

提高查询数据速度

在实际项目中,通过设计表架构时,设计系统结构时,查询数据时综合提高查询数据效率 1.适当冗余 数据库在设计时遵守三范式,同时业务数据(对数据的操作,比如资料...

3538
来自专栏数据和云

一波三折:一次CPU使用率过高故障分析SQL优化解决过程

作者 | 罗贵林: 云和恩墨技术工程师,具有8年以上的 Oracle 数据库工作经验,曾任职于大型的国家电信、省级财政、省级公安的维护,性能调优等。精通 Ora...

783
来自专栏Greenplum

Greenplum使用TPC-H测试过程及结果

TPC-H 基准测试是由 TPC-D(由 TPC 组织于 1994 年指定的标准,用于决策支持系统方面的测试基准)发展而来的.TPC-H 用 3N...

2326
来自专栏数据和云

Oracle 12.2新特性掌上手册 - 第七卷 Big Data and Data Warehousing

编辑手记:也许Oracle 12.2在内核上的智能改进只能让你眼前一亮,那今天基于Big Data和数据仓库的性能优化增强则会让你伸手触Oracle的强大灵魂。...

2787
来自专栏大魏分享(微信公众号:david-share)

ACID到底是个啥?浅谈微服务架构中的分布式数据管理

ACID到底是个啥? 在传统的单体应用中,其后端通常会有一个关系型数据库,如Oracle DB、MySQL等。通过关系型数据库,有助于保证业务的ACID。 AC...

4205
来自专栏极客慕白的成长之路

数据库系统概述必背知识点整理

972
来自专栏杨建荣的学习笔记

一条delete语句的调优(r4笔记第86天)

今天刚上上班,就接到客户的邮件,说生产环境中执行某一条delete sql语句的时间超过了3个小时。最后客户无奈取消了这次数据清理,准备今天在申请时间重做。所以...

3345
来自专栏数据和云

Oracle智能之SQL诊断:SQL Tuning Advisor推荐执行计划

编辑手记:在前一段,一篇智能数据库优化的论文引起广泛的关注,其实在 Oracle 数据库中,已经引入了大量自动化和智能化的方法去进行自动调节,包括在 SQL 层...

2755
来自专栏菩提树下的杨过

按分类统计商品总数的性能优化思考

如上图,在很多购物类商城系统中经常能看到类似的产品分类列表,今天市场部的同志们要求每个分类后要显示该类的产品总数,并且没有产品的分类不用显示。公司这个项目中的分...

17910
来自专栏简书专栏

mysql必知必会

数据库是按照数据结构来组织、存储和管理数据的仓库,它产生于距今。 六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管...

351

扫码关注云+社区