Oracle 等待事件 Enqueues:FP,FileObject 官方解释,作用,如何使用及优化方法

本站中文解释

Oracle Enqueues,也称作“锁队列”或“排队请求”,是Oracle数据库在运行过程中使用的一项技术,它可以帮助多个客户系统并发访问数据库时不发生冲突,从而保护数据库完整性。当某一用户请求访问数据库资源时,Oracle会给它设置一个名为“ enqueue ”的临时锁,在同一时间,其他的客户访问该资源时将不能够获取 enqueue ;而客户有效使用资源期间,则可以将 enqueue 自动查看一段时间,以支持并发访问。

Oracle Enqueues包括两类:共享模式(Share Mode)和独占模式(Exclusive Mode)。共享模式是Canon类型的Enqueue,允许同一时间有多个客户同时查看数据,也就是说,多个客户可以看到同一个资源,但是不能够进行任何改变,更新操作,以确保数据完整性及保证各客户之间的安全性。而独享模式是Tx类型的Enqueue。它支持一系列的数据库更新与查询操作,其机制基于”tx serialization”原理,并能够保证当并发访问存在时,同一时间只有一个客户能够完成更新或查询操作,同时保证其他客户看到的数据能够保持一致性。

Oracle可以通过”File”和”FP”两种Enqueue来控制其实例资源的并发访问权限:

1、File Enqueue:在用户和数据库文件系统之间共享数据时,存在文件系统的原子访问操作,Oracle需要使用文件锁来确保每个实例的原子性访问,从而确保数据的完整性及并发性,从而实现实例间的分布式访问。File Enqueues主要用于上述场景下,共享模式(Share Mode)和独占模式(Exclusive Mode)均可使用。

2、FP Enqueue: Oracle同时提供FP Enqueue类型的事件,用于控制实例结构资源的并发访问范围。FP Enqueues主要用于表空间、数据库表等实例结构的并发访问,独享模式(Exclusive Mode)和时限模式(Time Limit Mode)均可使用。

由此,通过Oracle Enqueues技术以及File和FP两种Enqueue,可以实现多实例的间的数据的安全异步访问,在高并发的网络环境中,可以保证冲突的尽可能的最小化,从而保证了数据完整性及高性能的持续。


数据运维技术 » Oracle 等待事件 Enqueues:FP,FileObject 官方解释,作用,如何使用及优化方法