阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

解读Oracle12.2体系架构:Filesystem与Multitenant

35次阅读
没有评论

共计 2926 个字符,预计需要花费 8 分钟才能阅读完成。

导读 全面解读 Oracle 12.2 体系架构图系列。本期的内容由两部分组成,一是数据库实例与文件系统的访问;二是多租户解决方案。
数据库实例与文件系统
几个重要的进程和内存组件
  • RVWR:Recovery Writer Process,当数据库设置了闪回区域的时候,该进程定期将内存中,具体来讲是 shared pool 中的 flashback buffer 里面的闪回数据写入 flashback logs.
  • Result cache –> RCBG:result cache 用于存放 SQL 语句或者 plsql 函数在执行过程中,对于原始数据进行运算所得的结果,当数据库再次对相同的对象做同样的操作,可直接获取结果,避免计算资源的浪费。
  • ASH  buffer–>MMNL: ASH buffer 用于存放活动会话的统计信息,包括 SQL 的执行情况,应用连接情况,等待事件等。当 ASH buffer 被写满的时候,MMNL 进程负责将 buffer 中的数据写入到磁盘中。
  • In memory undo(IMU): 在共享池中开辟一块区域,存放临时 undo,一个事务中若修改多条数据,不再 buffer Cache 中的 undo 数据块做修改,而是增加 IMU 节点进行记录。主要是为减少 undo 所产生的 Redo。
  • Private Redo log buffers: 主要用于管理 IMU 所产生的临时 Redo,将事务的 Redo 信息存放在共享池中,减少对 Redo log buffer 的消耗。
  • Flash Cache: 全称是 Database  smart flash Cache,是从 11.2 开发的一项针对闪存的优化技术,旨在通过使用闪存代替传统的慢速磁盘设备来存储部分数据,已达到减少数据库整体延迟,提高数据库的 IOPS,提升数据库性能的目的。

Flash Cache 的工作原理如下:

解读 Oracle12.2 体系架构:Filesystem 与 Multitenant

Flash Cache 中存放的内容通过两种方式来控制:

1、flash  Cache 的智能选择算法:评估数据块、索引块的访问频繁程度来决定。

2、对数据库对象的 cell_flash_cache 属性做修改。

Flash Cache 存储内容基本标准

主要是小 IO 操作,以及数据块、索引块、文件头,控制文件等会被缓存;

针对 RMAN 备份的 IO 操作,数据泵 IO 操作 ASM 镜像操作以及表空间格式化等不会做缓存;

全表扫描的 IO 操作的缓存优先级比较低。

当数据存储在 flash Cache 中,主要是为了提高查询的速度,也就是说,它就相当于在内存之外又增加了一部分 buffer Cache 的区域,只是性能更好,速度更好。那么跟 buffer Cache 一样,flash Cache 中的数据写满或者写到一定程度就需要把数据写入磁盘,留出空间给新的操作数据。

Flash Cache 的 flushing 过程

缓存内数据写入磁盘称为 flushing。 可以配置 Starting and stopping cache flushing levels 值,这个值表示占用整个缓存大小的百分比。当缓存内未写入磁盘的数据达到 starting flushing value 时,控制器开始 flushing(由缓存写入磁盘)。当缓存内未写入磁盘数据量低于 stop flush value 时,flushing 过程停止。

如果 start flushing level 设置较高,可以在缓存内存更多的未写入数据。这有利于提高写操作的性能,但是要牺牲数据保护。如果要得到数据保护,可以使用较低的 start and stop values。 经测试表明,使用接近的 start and stop flushing levels 时性能较好。如果 stop level value 远远低于 start value,在 flushing 时会导致磁盘拥塞

Smart Flash Logging

长期以来,Redo log 的 IO 瓶颈一直是困扰 OLTP 系统的一大难题,因为 Redo 的写入延迟直接拖累了整个系统 甚至整个集群的响应速度。

在传统的数据库架构中,一些 DBA 会将读写延迟较低的小块存储单独划分给 Redo, 从 11204 开始,Oracle 提出一种新的方案,在闪存区域中专门为 Redo 开辟一块区域,用于存储临时 Redo。

 In-Flash Column SCAN

将列存储落到 Flash Cache,提高频繁操作的列存储对象的写 IO

  • Change  Tracking File: 在增量备份中检测块的 变化,并记录到文件中。记录单位为 block。
  • wallet:Oracle Wallet 是用来存储密钥的容器。简单点来说就是个密码箱,通过这个密码箱,可以使原来需要输入密码的场合能够实现免输密码使用,从而保护了账号口令等敏感信息,使得安全性得到了提高,而且更加方便使用。
多租户解决方案
Application Container

应用容器 Application Container 是 12.2 提出来的新的组件,将同一应用下的数据库系统划分到一个子容器中,在保证多租户同一管理的情况下,实现相对的业务隔离和数据安全。

PDB 拥有自己的 undo 表空间

从 12.2 开始,每个 PDB 都拥有自己的 undo 表空间。消除了多个 PDB 间的争用,若要进行闪回或者基于时间戳的恢复,只需要在自己的 undo 数据中寻找,提高效率。

PDB 的灵活创建方式

1、从 PDB$seed(或者 application root)创建:通过文件复制的方式

2、现有 PDB 经过 hot clone 创建

 注:在 12.1 中,基于一个 PDB 创建新的 PDB 的时候,需要将原库以 read only 的方式打开。

解读 Oracle12.2 体系架构:Filesystem 与 Multitenant

而在 12.2 中,原库可以持续进行 DML 操作,并不受影响。

解读 Oracle12.2 体系架构:Filesystem 与 Multitenant

 

解读 Oracle12.2 体系架构:Filesystem 与 Multitenant

克隆完成以后,数据会持续刷新到新库。

3、来自其他 CDB 中的 PDB 的迁移:Relocate

解读 Oracle12.2 体系架构:Filesystem 与 Multitenant

前端执行 create pluggable database from relocate 这样一条命令,后台会自动执行远程 hot clone, 做远程文件复制和同步。

4、通过 ASM 磁盘文件的 shadow copy 方式生成新的 PDB。

解读 Oracle12.2 体系架构:Filesystem 与 Multitenant

PDB 的内存资源管理

在多租户环境下,多个 PDB 共享内存的资源,当一个 PDB 需要做 buffer Cache 的寻址时,需要从整个共享的资源中寻找,非常不方便。在 12.2 中,Oracle 针对部分资源做了基于 PDB 的 domain 划分。

12.1 的内存资源的 hash 链表是这样的:

解读 Oracle12.2 体系架构:Filesystem 与 Multitenant

12.2 中是这样的:

解读 Oracle12.2 体系架构:Filesystem 与 Multitenant

更多 PDB 的新特性

1、字符集: 在 12.2 中,若 CDB 的字符集为超集,也就是 AL32UTF8,那么支持不同字符集的 PDB。同时,通过 Proxy PDB,可以实现不同字符集的 PDB 进行查询,Proxy 将双方的字符集做识别和兼容,不会出现乱码。

解读 Oracle12.2 体系架构:Filesystem 与 Multitenant

多租户技术已经被广大用户广泛应用,而云和恩墨作为数据服务行业的引领者,通过 zData 解决方案与 Oracle 多租户的结合,帮助用户实现了互联网 + 时代的系统云化转型。

关于多租户更多的新特性详解,请参考
YH9:Oracle Multitenant 知识库
多租户技术已经被广大用户广泛应用,而云和恩墨作为数据服务行业的引领者,通过 zData 解决方案与 Oracle 多租户的结合,帮助用户实现了互联网 + 时代的系统云化转型。

文章来自微信公众号:数据和云

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计2926字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中