关于Inlist iterator操作的一点认识
Inlist iterator操作是oracle为inlist查询提供的一种解决方案:即查询谓词为:where indexed_column in (:1, :2, :3)对于这种查询,oracle一般有两种解决方法:inlist iterator 和 concatenation.对于concatenation,就是为inlist中的每个值执行一次索引查询,然后将结果集采用union all的方式合并。而inl...
12c in memory option学习笔记二_数据访问
要了解In Memory区数据的访问方式,首先来看看In Memory区数据的组织结构。当enable某个表的inmemory属性后,该表会在首次访问或者数据库启动后加载到In Memory区(取决于priority属性的设置)。数据在IM区使用压缩列式存储,存放在每个IMCU中。在IMCU内部,Oracle为每个IMCU维护着一个对应的In MemoryStorage Index, 用于...
12c in memory option学习笔记一_基础篇
Oracle 12c in memory选件通过在SGA中分配独立的内存区域(In MemoryArea),对数据使用列式压缩存储来提高查询性能.In Memory区的大小由参数inmemory_size控制, 该参数是一个静态参数, 修改后需要重启数据库方可生效.In Memory内存区可分为两个子池,分别为1M pool和64K pool. 1Mpool用于存储列式数据和事务日志(...
11g中的materialized view log
从11g版本之前,oracle只支持一种形式的materialized view log,即timestamp-basedmaterialized view log,11g引入了一种新的选择,称为commit SCN-based materialized view log. 本文通过测试比较两种materialized view log的区别,并且分析一个与commit SCN-basedmaterialized view log相关的bug. timestamp-based...
11g中的"_memory_imm_mode_without_autosga"参数
在oracle 11g之前的版本中,当SGA_TARGET参数被设置为0时,则意味着自动内存调整特性被关闭了.但在11g数据库中,我们可能还是会看到最初设定的shared_pool_size,db_cache_size等参数的大小发生了变化,即便是oracle的自动内存特性已经被关闭了. 调查该现象的原因可发现这是由11g中新增的隐含参数”_memory_imm_mode_without...
一个connect by查询语句的优化
问题描述: 数据库从10g升级到11g后发现以下查询语句的性能下降,其平均执行时间从0.04秒增长到了0.32秒 with q as (Select trading, calculated_date, &n...
参数session_cached_cursors的工作原理及优缺点分析
This post is trying toexplain how parameter ‘session_cached_cursors’ works, and also its advantagesand disadvantages. In oracle official document,parameter ‘SESSION_CACHED_CURSORS’ is explained as this: “specifies the numberof session cursors to cache. Repeated parse calls of the ...
Fine Grained Dependencies
FineGrained Dependencies是oracle 11g引入的一个新特性. 数据库中的某些对象之间会存在依赖关系,这些依赖关系可通过视图all/dba/user_dependencies查询得到. 在11g之前的版本中, 当记录这种依赖关系时只能具体到对象级别, 这样当某个被依赖的对象发生metadata的变化时,依赖于该对象的其他对象就会被置为invalid, ...
Hash Cluster Table 研究
Hash Cluster Table是Cluster Table的一种(另一种是IndexCluster Table)。在Hash Cluster Table中,Oracle会为每行数据按Hash键计算一个Hash值,拥有同样Hash值的记录在Hash Table中会物理上存放在一起,oracle为Hash Key计算所得到的Hash Value会对应到确定的数据库块地址,这样,应用在访问HashCluster Table时就...
Hash分区表的使用及扩展
Hash分区是Oracle实现表分区的三种基本分区方式之一。对于那些无法有效划分分区范围的大表,或者出于某些特殊考虑的设计,需要使用Hash分区。Hash分区是通过对分区键运用Hash算法从而决定数据的分区归属。使用Hash分区有什么优点呢?常用的分区表所具有的优点:如提高数据可用行,减少管理负担,改善语句性能...
分区表上的索引选择
分区表上的索引选择 分区表上的索引可建为GlobalIndex和Local Index两种。 Global Index: GlobalIndex既可以建成分区索引,也可以不分区。分区的方式有range和hash两种,索引分区可能指向表中的任何分区,索引分区列也可以与表分区列不同,索引结构与表是独立的,它更加灵活,因而也需要更多的人工维护操作; ...
Goldengate Replicate Mode介绍
从Goldengate 12c版本开始,oracle引入了两种新的replicat mode,分别叫做Integrated Replicat Mode和Coordinated Replicat Mode.其中,与integrated Capture Mode类似,Integrated Replicat Mode是针对oracle平台的,实际上就是将以前oracle stream中的功能整合进了新的Goldengate版本中.使用Intergrated Replicat Mode要求ora...
goldengate软件安装之 install goldengate 12c for oracle 11g on solaris sparic 64
1. download goldengate softwaregoldengate软件可以从“Oracle Software Delivery Cloud”来下载,这里可以找到所有获许可证的Oracle产品的下载资料。Goldengate被oracle归类为其fusion middleware产品中的一员。这里,我需要安装的产品版本为: “Oracle GoldenGate on Oracle v12.1.2 Media Pack for Oracle Solaris o...
Goldengate的拆分与合并
在使用Goldengate作为复制解决方案时,随着负载的增加,replicat组件常常是最先出现性能瓶颈的。为了适应不断增加的负载,就需要拆分replicat来实现并行复制,本文介绍Goldengate拆分的具体实施步骤。同时,作为拆分...
Goldengate常用命令
1.Goldengate的起停启动goldengate a> 启动goldengate时最好先从target节点开始,然后是source节点.否则data pump进程可能会由于没有收到target端的响应而异常退出。 b> manager进程是其他进程的管...
downstream环境下archive进程停止传输日志
环境:oracle 10.2.0.5 + solaris 10问题描述:A和B两个数据库之间通过stream技术同步部分表的数据,同事反映B库上的downstream hung 在过去某个时间点,状态为waiting for redo ....这种情况是由于日志没有从A数据库传...
Apply Mode in Goldengate
In Goldengate, when replicat process apply sql statements in target database, there are three apply modes,they are: normal mode,batchsql mode and source mode.This post is aiming at:Introducing these t...