【Best Practices】Creating a Materialized View Replication Environments

1    Introduction to the Materialized View Replication 物化视图复制包括三种类型: Read-Only Materialized Views Updatable Materialized Views Writeable Materialized Views 只读物化视图顾名思义就是应用只能读取物化视图的数据,一切DML操作只能在主站点的基表中进行进行。   图示1:只读物化视图复制 可更新的物化视图,是一种高级的配置,它允许用户插入,更新,删除基表和物化视图中的数据。可更新物化视图基于已建立的支持复制功能的表或其他物化视图。 可更新物化视图必须是物化视图组的成员。   图示2:可更新物化视图复制 可写的物化视图就是使用for … [Read more...]

【Best Practices】cursor: pin S wait on X等待事件模拟

1  Cursor: pin S 等待事件描述 Oracle10g中引用的mutexes机制一定程度的替代了library cache pin,其结构更简单,get&set的原子操作更快捷。 它相当于,每个child cursor下面都有一个mutexes这样的简单内存结构,当有session要执行该SQL而需要pin cursor操作的时候,session只需要以shared模式set这个内存位+1,表示session获得该mutex的shared mode lock.可以有很多session同时具有这个mutex的shared mode lock;但在同一时间,只能有一个session在操作这个mutext +1或者-1。+1 -1的操作是排它性的原子操作。如果因为session并行太多,而导致某个session在等待其他session的mutext +1/-1操作,则该session要等待cursor: pin S等待事件。 在10.2.0.1.0版本中,默认没有启用mutexes。因此不会产出cursor: pin s的等待,只会产生library cache pin的等待事件。 参考OTN的解释: cursor: pin SA session waits on this event when it wants to … [Read more...]