Oracle 12.2已经发布一段时间,公网上也可以下载试用。针对12.2,partitioning(分区)也有了不少增强。
  • 自动列表分区
  • 多字段列表分区
  • 只读分区
  • 分区维护时允许过滤
  • 在线转换非分区表为分区表
  • 带分区的外部表

与Oracle Database 12c Release 1中引入的间隔分区方法类似,Oracle 12c Release 2中引入的新分区功能之一是自动列表分区功能,使分区表更易于管理。

基于列的不同值划分表的功能已经有一段时间了,但是Oracle数据库12.2中的新增内容是,我们可以根据列中已知和未知的值来初始化表分区。当数据加载到表中时,如果加载的分区键值与任何现有分区不对应,则数据库将自动创建新分区。

在Oracle Database 12c Release 2中,我们现在可以根据多个列的值列表分隔一个表,而不是像以前的版本那样仅仅是单个列。这被称为多字段列表分区。因此,如果我们有一个包含整个国家/地区的销售数据的非常大的表,我们可以根据州(省)以及位于同一州(省)的城市进行再分区。

另一个新功能是只读分区。不需要整个表是只读的,而只是表中的某些分区可以被设置成只读的。现在我们可以针对存储的历史数据,设置表中的旧分区是只读的,以防止对这些“旧”数据的任何DML操作。
作为DBA,我们必须经常执行的常见分区维护操作之一是移动分区 - 也许较旧的分区可以转移到低成本存储上的表空间,因为这种数据很少被访问。现在在Oracle数据库12.2中,我们可以将分区维护操作(如MOVE PARTITION,MERGE PARTITION和SPLIT PARTITION)与数据过滤相结合。例如,当我们移动一个特定分区的数据时,我们也可以过滤要移动的数据。通过使用INCLUDING ROWS关键字指定一个过滤谓词,我们可以确定执行分区维护操作时应该保留哪些数据以及可以丢弃哪些数据。

12.2中新增的最好的功能之一是,现在我们可以通过MODIFY子句的ALTER TABLE命令以及在表上执行并发DML操作,非常容易地将非分区表转换为分区表。因此,表的转换是一个在线过程,不需要停机,并且通过使用UPDATE INDEXES,我们还可以将表上的任何索引转换为本地或全局分区索引。

我们现在也可以创建一个分区外部表。一般来说,我们可以创建一个在数据库之外的数据表,对包含这个外部数据的表进行分区。如果是在处理海量的外部数据,这将是非常有益的。

Oracle12.2中新增的分区功能的更多相关文章

  1. ASP.Net4.0中新增23项功能

    这篇文章介绍Visual Studio 2010 (ASP.Net 4.0)的新功能. 1.代码片段(Code Snippets): 代码段是预先开发的代码模板,可以节省我们对有关语法思考的时间.在V ...

  2. MySQL5.6中新增特性、不推荐使用的功能以及废弃的功能

    虽然已经使用MySQL5.6版本有一段时间了,但由于没有和之前的版本作过详细比较,所以对于哪些重要的或者不太重要的特性是在新版本中引入的,还有哪些特性已经或者将要从旧版本中移除的并没有一个十分全面的了 ...

  3. Linux中新增硬盘的分区,格式化与挂载

    Linux中新增硬盘的分区,格式化与挂载 本篇教程内容为怎样对Linux新增硬盘进行挂载,所以如果有准备新增硬盘但是有各种问题的,请参看本篇教程. 我们先说说什么是挂载? 我们知道Linux中的所有设 ...

  4. mysql分区功能详细介绍,以及实例

    一,什么是数据库分区 前段时间写过一篇关于mysql分表的 的文章,下面来说一下什么是数据库分区,以mysql为例.mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下 ...

  5. mysql数据库分区功能及实例详解

    分区听起来怎么感觉是硬盘呀,对没错除了硬盘可以分区数据库现在也支持分区了,分区可以解决大数据量的处理问题,下面一起来看一个mysql数据库分区功能及实例详解   一,什么是数据库分区 前段时间写过一篇 ...

  6. mysql分区功能(三个文件储存一张表)(分区作用)(分区方式)

    mysql分区功能(三个文件储存一张表)(分区作用)(分区方式) 一.总结 1.mysql数据表的存储方式(三个文件储存一张表): 一张表主要对应着三个文件,一个是frm存放表结构的,一个是myd存放 ...

  7. 云主机新增swap分区

    云主机内存不够用,如何新增swap 分区. 如何启用swap分区? 步骤如下: 1.查看当前系统中是否已经启用swap分区 1 2 cat /proc/swaps    top 2.如果没有启用swa ...

  8. html5中新增的form表单属性

    html5中新增两个表单属性,分别autocomplete和novalidate属性 1.autocomplete属性 该属性用于控制自动完成功能的开启和关闭.可以设置表单或者input元素,有两个属 ...

  9. Bash 4.4 中新增的 ${parameter@operator} 语法

    Bash 4.4 中新增了一种 ${...} 语法,长这样:${parameter@operator}.根据不同的 operator,它展开后的值可能是 parameter 这个参数的值经过某种转换后 ...

随机推荐

  1. vue-电脑端导出-txt

    // fakeClick(obj) { // var ev = document.createEvent("MouseEvents"); // ev.initMouseEvent( ...

  2. 进程理论 阻塞非阻塞 同步异步 I/O操作

    1.什么是进程 进程指的是一个正在运行的程序,进程是用来描述程序执行过程的虚拟概念 进程的概念起源于操作系统,进程是操作系统最核心的概念,操作系统其它所有的概念都是围绕进程来的 2.操作系统 操作系统 ...

  3. api-gateway-engine知识点(1)

    1     密钥绑定时,通过Channel 实现监控 后台发送数据 :      redisTemplate.convertAndSend(RedisMessageChannel.API_GATEWA ...

  4. 以太坊nonce

    以太坊系列(ETH&ETC)在发送交易有三个对应的RPC接口,分别是ethsendTransaction.ethsendRawTransaction和personal_sendTransact ...

  5. Mongodb 基础 复制集原理和搭建

    数据复制原理 开启复制集后,主节点会在local库下生成一个集合叫 oplog.rs,这是一个有限的集合,即大小固定.这个集合记入了整个mongod实例一段时间内数据库的所有变更操作(如:增/删/改) ...

  6. CMB面试准备-基础

    1.简述 private. protected. public. internal 修饰符的访问权限 private : 在类的内部才可以访问. protected : 保护成员,该类内部和继承类中可 ...

  7. php 中 get_cfg_var() 与 ini_get() 的异同

    背景 get_cfg_var() 取的值是配置文件中的值 ini_get() Gets the value of a configuration option, 则取的当前值(运行时,PHP系统定义) ...

  8. (转载)spring RestTemplate用法详解

    前面介绍过spring的MVC结合不同的view显示不同的数据,如:结合json的view显示json.结合xml的view显示xml文档.那么这些数据除了在WebBrowser中用JavaScrip ...

  9. Jenkins自动化构建(一)执行selenium+python脚本

    Jenkins执行python写的selenium自动化脚本,通常会遇到,执行打不开浏览器,查看jenkins构建Console Output控制台输出信息,发现脚本是执行了的,但是出错了,打开浏览器 ...

  10. Python_summary

    Q: python中出现IndentationError:unindent does not match any outer indentation levelA:复制代码的时候容易出现缩进错误,虽然 ...