Oracle12.2中新增的分区功能
- 自动列表分区
- 多字段列表分区
- 只读分区
- 分区维护时允许过滤
- 在线转换非分区表为分区表
- 带分区的外部表
与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中新增的分区功能的更多相关文章
- ASP.Net4.0中新增23项功能
这篇文章介绍Visual Studio 2010 (ASP.Net 4.0)的新功能. 1.代码片段(Code Snippets): 代码段是预先开发的代码模板,可以节省我们对有关语法思考的时间.在V ...
- MySQL5.6中新增特性、不推荐使用的功能以及废弃的功能
虽然已经使用MySQL5.6版本有一段时间了,但由于没有和之前的版本作过详细比较,所以对于哪些重要的或者不太重要的特性是在新版本中引入的,还有哪些特性已经或者将要从旧版本中移除的并没有一个十分全面的了 ...
- Linux中新增硬盘的分区,格式化与挂载
Linux中新增硬盘的分区,格式化与挂载 本篇教程内容为怎样对Linux新增硬盘进行挂载,所以如果有准备新增硬盘但是有各种问题的,请参看本篇教程. 我们先说说什么是挂载? 我们知道Linux中的所有设 ...
- mysql分区功能详细介绍,以及实例
一,什么是数据库分区 前段时间写过一篇关于mysql分表的 的文章,下面来说一下什么是数据库分区,以mysql为例.mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下 ...
- mysql数据库分区功能及实例详解
分区听起来怎么感觉是硬盘呀,对没错除了硬盘可以分区数据库现在也支持分区了,分区可以解决大数据量的处理问题,下面一起来看一个mysql数据库分区功能及实例详解 一,什么是数据库分区 前段时间写过一篇 ...
- mysql分区功能(三个文件储存一张表)(分区作用)(分区方式)
mysql分区功能(三个文件储存一张表)(分区作用)(分区方式) 一.总结 1.mysql数据表的存储方式(三个文件储存一张表): 一张表主要对应着三个文件,一个是frm存放表结构的,一个是myd存放 ...
- 云主机新增swap分区
云主机内存不够用,如何新增swap 分区. 如何启用swap分区? 步骤如下: 1.查看当前系统中是否已经启用swap分区 1 2 cat /proc/swaps top 2.如果没有启用swa ...
- html5中新增的form表单属性
html5中新增两个表单属性,分别autocomplete和novalidate属性 1.autocomplete属性 该属性用于控制自动完成功能的开启和关闭.可以设置表单或者input元素,有两个属 ...
- Bash 4.4 中新增的 ${parameter@operator} 语法
Bash 4.4 中新增了一种 ${...} 语法,长这样:${parameter@operator}.根据不同的 operator,它展开后的值可能是 parameter 这个参数的值经过某种转换后 ...
随机推荐
- 008-spring cache-缓存实现-03-springboot redis实现
1.window下redis安装 https://www.cnblogs.com/bjlhx/p/7429811.html 2.pom <!-- 缓存 --> <dependency ...
- git flow 使用步骤
Mac安装git-flow:brew install git-flow 克隆新代码:git clone git@gitlab.xxx.cn:abc/test.git 切换到远程的develop分支(很 ...
- DataFrame WordCount
测试数据: ** * 使用DataFrame实现WordCount */ object DataFrameWordCount { def main(args: Array[String]): Unit ...
- 【LeetCode每天一题】Find First and Last Position of Element in Sorted Array(找到排序数组中指定元素的开始和结束下标)
Given an array of integers nums sorted in ascending order, find the starting and ending position of ...
- SQL简单操作
删除表数据,保留表结构: delete from employee 将删除所有的记录 delete from employee where lastname = 'May' 这条语句是从emplyee ...
- script命令录屏
关于linux上的操作,我们的确可以使用'history'命令来显示出来操作记录,但是有些时候,我们不仅仅需要知道做了什么,还需要知道操作的时候,产生了什么效果,这个时候‘history’命令就显示无 ...
- [LeetCode] 455. Assign Cookies_Easy tag: Sort
Assume you are an awesome parent and want to give your children some cookies. But, you should give e ...
- IdentityServer4:Endpoint
Endpoint的概念在IdentityServer里其实就是一些资源操作的url地址:如同Restful API里面的Endpoint是概念: 那么可以通过你自己的授权服务端得到相对应的地址与信息: ...
- 通过Referer设置来防盗链
在Servlet中需要设置防盗链功能时可以通过以下代码: String referer = request.getHeader("Referer"); if(referer == ...
- 关于plsqldev无法正常加载oracle instantclient中的oci.dll的其中一个原因
事情的经过是这样的: 1. 新安装了windows10 系统,装了plsqldev 和 oracle instantclient,以及 instantclient sqlplus. 2.设置好了ORA ...