Oracle RAC技术入门(5)

原创内容,转载请注明:  [http://www.ssdfans.com]  谢谢!

 

ASM概览

 

Oracle Automatic Storage Management (ASM)自动存储管理器把文件系统和逻辑卷都集成到一起,直接面向Oracle的数据库文件。

 

 

ASM使用磁盘组(Disk Group ,DG)来保存数据文件,很多磁盘组成一个磁盘组,然后提供一个文件系统的接口给数据库文件。磁盘组的整体性能和原始磁盘差不多,数据可以在里面平均分布,也可以条带状把大数据拆分到不同磁盘,同时写的时候跳过IO比较繁忙的磁盘。

磁盘组可以被多个数据库共享,整体存储的利用率高。

ASM在工作的时候可以插入或者删除磁盘组里的磁盘,ASM会自动识别,并且把数据转过去。

ASM卷管理器支持服务器端的RAID,也支持外部硬件RAID。支持文件级别的镜像,就是可以指定文件是不是需要做RAID或者做什么级别的RAID。一个磁盘组在开始的时候就确定RAID的级别,2路或者3路。ASM定义了一个概念叫失败组,就是1个磁盘组里面有几个失败组,如果1个文件有两个备份,就会把它们放到不同的失败组,保证安全。

ASM使用Oracle Managed Files (OMF)管理文件。OMF能在指定位置自动创建文件、命名,还能在表格和文件删除后释放空间。其实就是文件系统的功能。

为了和旧的系统兼容,ASM能和其他文件系统共存,同时Oracle Enterprise Manager工具还支持把非ASM的数据库文件迁移到ASM。

 

ASM实例

 

和Oracle数据库类似,ASM包含一个全局区SGA(System Global Area)和一大波后台进程,但是因为任务比较简单,SGA比数据库的SGA要小一点。ASM的作用就是让数据库能够访问磁盘组上的数据库文件。

ASM有很多元数据来管理磁盘组,包括:

  • 磁盘属于哪个磁盘组;
  • 磁盘组的可用空间;
  • 磁盘组内文件的文件名;
  • 磁盘组内文件的保存地址;
  • Redo log,包含数据块自动修改记录。

     

1个ASM支持多个数据库,但如果ASM挂了,那它上面的数据库都挂了,不过对于Oracle RAC来讲,1个节点挂了,其他节点的ASM会自动恢复它上面的数据库。

如下图,6个磁盘分成2个磁盘组,由5个节点上的ASM管理,同时提供给3个数据库访问。

 

ASM磁盘

 

ASM磁盘可以是:

  • 1个磁盘或者存储阵列的1个分区;
  • 整个磁盘或者1个分区;
  • 逻辑卷;
  • NFS(Network attached files)。

 

不过最好是1个ASM磁盘对应一个物理磁盘,而不是一个硬盘上分出几个ASM磁盘,因为ASM会自动调节内部ASM磁盘上的读写带宽,如果两个ASM磁盘其实就是同一个物理硬盘,那调节的作用就打折扣了。

每个ASM磁盘分成很多分配单元,每次最小只能分配这么大,所以1个文件会包含1个或多个分配单元。分配单元的大小是1、2、 4、8、16、 32或 64MB。

 

数据尺度和条带

 

如下图,ASM定义了一个数据尺度data extent,就是把磁盘组分成几个区,有的区每块数据只能是分配单元AU大小,有的只能是AU的8倍或64倍。这样可以减少SGA内存大小,同时加速创建和打开文件的速度。文件必须放到每一个data extent,再写到磁盘。这个有点像内存管理里面的Slab。文件可以以细粒度和粗粒度分布在不同磁盘上,细的可以到128KB。Data extent有个好处是零碎的文件集中到一起读写,磁盘的读写块都比较大,相当于顺序读写,有助于提升性能。

 

 

引用

 

Oracle® Database Storage Administrator’s Guide 11 g Release 1 (11.1) B31107-06

分类目录 未分类.
扫一扫二维码或者微信搜索公众号ssdfans关注(添加朋友->点最下面的公众号->搜索ssdfans),可以经常看到SSD技术和产业的文章(SSD Fans只推送干货)。
ssdfans微信群介绍
技术讨论群 覆盖2000多位中国和世界华人圈SSD以及存储技术精英
固件、软件、测试群 固件、软件和测试技术讨论
异构计算群 讨论人工智能和GPU、FPGA、CPU异构计算
ASIC-FPGA群 芯片和FPGA硬件技术讨论群
闪存器件群 NAND、3D XPoint等固态存储介质技术讨论
企业级 企业级SSD、企业级存储
销售群 全国SSD供应商都在这里,砍砍价,会比某东便宜20%
工作求职群 存储行业换工作,发招聘,要关注各大公司招聘信息,赶快来
高管群 各大SSD相关存储公司高管和创始人、投资人

想加入这些群,请微信扫描下面二维码,或搜索nanoarchplus,加阿呆为微信好友,介绍你的昵称-单位-职务,注明群名,拉你进群。SSD业界需要什么帮助,也可以找阿呆聊。