ASM翻译系列导读:
- ASM翻译系列第三弹:ASM disk的基础知识:http://geek.csdn.net/news/detail/80926
- ASM 翻译系列第二弹:ASM 12C 版本新特性:http://geek.csdn.net/news/detail/80921
- ASM翻译系列第一弹:基础知识 ASM AU,Extents,Mirroring 和 Failgroups:http://geek.csdn.net/news/detail/80915
groups、disks和files
Oracle ASM使用磁盘组来存放数据文件,每一个ASM的磁盘组由一些ASM磁盘组成,每一个ASM磁盘组本身是一个独立的存储单元,是自描述的,对于ASM磁盘组中数据库文件,ASM提供一个文件系统的接口,方便DBA做管理。存放在ASM磁盘组中的文件被均匀的分布在磁盘组中的所有磁盘上,通过这种方式,每一块磁盘都可以提供一致的性能,同时ASM的性能可以比得上裸设备的性能。【摘录自11GR2版本的ASM官方文档】
ASM Disk Groups
一个ASM磁盘组是由一个或多个ASM磁盘组成的,每个ASM磁盘组也是自包含的,有它自己的ASM元数据,这些元数据由ASM实例进行维护和管理。
一般情况下ASM只需要有非常少的磁盘组就可以了,在ASM 11.2版本之前,两个磁盘组一般就足够了,一个用来存放数据文件,另一个存放备份/归档日志文件,在11.2版本,你可能还想单独创建一个磁盘组存放ASM的spfile,OCR和voting盘,当然前提是你计划把这些文件存放到ASM中。
ASM Disks
ASM使用到的磁盘,需要提前由OS/存储管理工程师安装、配置好,这些盘可以是本地的物理设备(IDE, SATA, SCSI,等等),也可以是基于SAN网络输出的LUNs(iSCSI, FC, FCoE, 等等),也可以是通过NAS/NFS网络输出的盘。建议给ASM使用的盘都做分区,即使是计划把一整个盘提供给ASM使用,也建议做成一个单一的分区。
在Exadata环境下,ASM会使用通过LIBCELL接口创建的grid disk,这些盘来自于Exadata的存储节点。
ASM磁盘组可以有最多10000个磁盘,每一个ASM磁盘最大可以有2TB,由于BUG 6453944的存在,往磁盘组中添加大于2TB大小的磁盘有可能会成功,这个BUG在10.2.0.4、11.1.0.7、11.2版本被修复,更多的内容可以参考MOS Doc ID 736891.1。
译者注:12C的ASM版本在磁盘组的各种限制上进一步得到了释放,具体请参照本系列的【ASM 12C新特性】篇
ASM looks for disks in the OS location specified by ASM_DISKSTRING initialization parameter. All platforms have the default value, so this parameter does not have to be specified. In a cluster, ASM disks can have different OS names on different nodes. In fact, ASM does not care about the OS disk names, as those are not kept in ASM metadata.
ASM Files
任何一个ASM文件只能存放在一个ASM磁盘组中,但是,一个磁盘组可以包含多个数据库的文件,一个数据库里的相关文件也可以存放在多个磁盘组中。
ASM磁盘组可以存储所有类型的数据库文件-数据文件、控制文件、REDO日志、备份集、数据泵文件等等,但是二进制文件和文本文件不能被直接存储。此外ASM也会存储它自身的元数据文件到磁盘组中,元数据文件有它自己的编号机制,与数据文件的编号是独立的,ASM 256以下的编号都是为ASM元数据文件预留的。
ACFS集群文件系统在11.2版本被引入,它进一步扩展了ASM能够支持的文件类型,支持数据库和应用程序的二进制文件、文本文件、日志文件,trace文件,几乎任何传统文件系统能够存放的文件。最为重要的,它是一个集群文件系统。