压缩表介绍
Oracle可在表空间、表、分区级进行压缩,如果表空间设置了压缩方式,则所有存储在该表空间的表都将默认采用相同的压缩方式,在表级也可设置的压缩方式。Oracle还支持在分区级定义不同的压缩方式,以满足不同的数据管理需求。其压缩方式分为Basic Compression、OLTP compression、Warehouse compression(HCC)和Online archival compression (HCC)。 继续阅读
Oracle可在表空间、表、分区级进行压缩,如果表空间设置了压缩方式,则所有存储在该表空间的表都将默认采用相同的压缩方式,在表级也可设置的压缩方式。Oracle还支持在分区级定义不同的压缩方式,以满足不同的数据管理需求。其压缩方式分为Basic Compression、OLTP compression、Warehouse compression(HCC)和Online archival compression (HCC)。 继续阅读
在oracle sql优化中,往往只关注逻辑读的消耗,而忽略了join消耗的时间,特别是高频值进行join关联出大量rows的场景。往往join消耗的时间会比扫描对象消耗的逻辑读物理读更耗时。 继续阅读
新年来临之际,血的教训让大家都知道了新年来临之前要去检查分区表的新年分区是否创建的问题。本篇文章再介绍一个新年容易出现的性能问题。
这是oracle特有的特性,当对于子查询未展开(包括标量子查询)时,oracle会维护一个hash table的内存区域缓存,对于重复的关联列,并不需要重复的执行子查询。该特性在Cost Based Oracle Fundamental书中有介绍。
今天看了一下好友anbob的文章,主要内容涉及CBO的一些查询转换,主题是在开发场景中如查询分页计算多少页或统计查询,有些开发是习惯基于明细的查询SQL,而外层直接加1层汇聚查询,如select count(*) from (select ….), 但子查询中可能有一些函数或主查询根本不需要的列, 在oracle中的查询转换中如select-project-join或select list pruning, 或VIEW merge SPJ,CVM 都是为了不影响SQL结果一致性,而优化低效的SQL。 继续阅读
ORACLE的优化器,在众多dba眼中都是世界上最好的优化器,一直是其他数据库,包括国产数据库追赶的目标,特别是在查询转换上,oracle确实所向无敌。但是本文要介绍的一个小案例对于oracle来说应该算是一个美中不足的地方。 继续阅读