分区表可以使用不同BLOCK_SIZE的表空间吗?

编辑手记:Oracle数据库中有两种类型的块,标准块和非标准块。非标准块的引入给数据库的管理带来了方便,但在使用的时候也有一些限制。本文将会详细解读块大小对于分区表的影响。

看文档的时候提到了多个BLOCKSIZE对分区的影响,觉得比较有意思,于是测试了一下。

结论一:Oracle是不允许一个表的多个分区所在的表空间所处的表空间的BLOCKSIZE不同:

结论二:允许索引和表的BLOCKSIZE不一致:

索引的各个分区所在表空间要求BLOCKSIZE一致,但是不要求和表的分区BLOCKSIZE一致。表的不同索引可以存储在不同BLOCKSIZE的表空间上。

除了索引之外,表的LOB字段可以和表存放在不同的BLOCKSIZE的表空间中,同样的,分区表的LOB分区所在表空间的BLOCKSIZE可以和表分区所在表空间的BLOCKSIZE不同:

当然,分区的表的LOB的各个分区必须存在在相同的BLOCKSIZE的表空间上,否则会报错:

同样的限制条件也适用于索引组织表的OVERFLOW段:

同样,不同的OVERFLOW分区所在表空间的BLOCKSIZE必须相同:

基本上来说:

OVERFLOW段和LOB段允许和表或表分区的BLOCKSIZE不一致,而各个分区,无论是表分区、索引分区、OVERFLOW分区还是LOB分区都必须保持分区级的一致。

杨老师,LOB和OVER段与表的BLOCKSIZE是不是必须一致呢?

允许LOB和OVER段与表的BLOCKSIZE不一致是有一定意义的,比如在一个BLOCKSIZE为2K的数据库中,如果LOB段的大小也是2K,对于LOB的存储容量和效率都会产生不利的影响。

那不同分区的BLOCKSIZE呢?

其实也是有一定意义的,这样有利于不同数据库之间进行表空间迁移和EXCHANGE PARTITION操作,不过现在Oracle还不允许这种情况出现。

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

原文发表时间:2017-08-21

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张善友的专栏

写入Ring Buffer

原文地址:http://mechanitis.blogspot.com/2011/07/dissecting-disruptor-writing-to-ring...

1686
来自专栏架构师之路

数据库主从不一致,怎么解?

任何脱离业务的架构设计都是耍流氓,绝大部分业务,例如:百度搜索,淘宝订单,QQ消息,58帖子都允许短时间不一致。

1243
来自专栏数据和云

诊断案例:Oracle的Mutex机制和Cursor Pin S竞争分析

SQL的软解析也会带来性能问题么?我们都知道使用绑定变量,让SQL实现软解析是Oracle的最佳实践。那么大量的软解析会否带来负面的性能影响呢? 在以下数据库的...

3195
来自专栏腾讯云数据库(TencentDB)

【腾讯云 MongoDB】 基于snapshot的从库读优化

我们发现腾讯云上一些腾讯云MongoDB实例在主库写压力比较大的情况下,这时从库上会出现很多慢查询,经过调查发现,从库在回放oplog的时候加了全局锁,阻塞了所...

4690
来自专栏Spark学习技巧

Kafka源码系列之Broker的IO服务及业务处理

Kafka源码系列之Broker的IO服务及业务处理 一,kafka角色 Kafka源码系列主要是以kafka 0.8.2.2源码为例。以看spark等源码的经...

20310
来自专栏沃趣科技

ASM 翻译系列第十一弹:高级知识 Offline or drop?

原作者:Bane Radulovic 译者: 庄培培 审核: 魏兴华 DBGeeK社群联合出品 Offline or drop? 当一个ASM磁盘不...

3424
来自专栏一名叫大蕉的程序员

今天聊聊分布式锁 No.86

首先祝大家新年快乐,感谢大家过去一年的陪伴。大蕉在这里给大家拜年啦啦。新年快乐,我爱学习。 恭喜发财,红包拿来~ 好了切入正题,一直在工作中会聊到很多锁的问题,...

45913
来自专栏CSDN技术头条

MySQL查询优化之道

查询优化器的任务是发现执行 SQL 查询的最佳方案。大多数查询优化器,要么基于规则、要么基于成本。

854
来自专栏Golang语言社区

游戏服务器之内存数据库redis客户端应用(下)

(3)存储一个角色的基础信息(使用命令set) 存储结构: key:BASE角色id ,value 角色基础信息 int playerId = player-...

4238
来自专栏草根专栏

.NET Core TDD 前传: 编写易于测试的代码 -- 依赖项

还是使用建造汽车的例子. 生产汽车的时候需要轮胎, 组装时需要什么型号的轮胎, 就请求该型号的轮胎, 然后相关人员会从库房把该型号的轮胎送到产线用于组装. 

622

扫描关注云+社区