共计 2637 个字符,预计需要花费 7 分钟才能阅读完成。
参考资料:
https://docs.oracle.com/cd/B19306_01/server.102/b14231/storeman.htm#ADMIN036
什么是 ASM?
ASM 是 Automatic Storage Management(主动存储管理)的缩写。ASM 是一个集成的高性能的文件系统和卷管理器。Oracle 将所有的存储分为 disk groups,咱们只须要治理这些 disk groups,而不必去管具体的数据文件。
In the SQL statements that you use for creating database structures such as tablespaces, control files, and redo and archive log files, you specify file location in terms of disk groups. ASM then creates and manages the associated underlying files(底层文件)for you.
为什么应用 ASM?
- 提供高效率的存储管理
- 提供残缺的集群文件系统和卷治理能力
ASM 的长处:
Mirroring and Striping(镜像化和条带化)
条带化是一种用于在多个磁盘驱动器之间扩散数据的技术。一个大的数据段被分为较小的单元,这些单元散布在可用设施之间。分隔数据的单元称为“数据单元大小”或“条带大小”,是指向每个磁盘写入这些条带的大小。能够同时读写的并行条带数量称为“条带宽度”。分条能够放慢从磁盘存储中获取数据的操作,这是因为它扩大了总 I / O 带宽的能力。这样就优化了性能和磁盘利用率,从而不再须要手动 I /O 性能调优。
ASM 镜像化选项:
Mirroring Option | Description |
---|---|
2-way mirroring | Each extent has 1 mirrored copy. |
3-way mirroring | Each extent has 2 mirrored copies. |
Unprotected | ASM provides no mirroring. Used when mirroring is provided by the disk subsystem itself. |
<!–more–>
Dynamic Storage Configuration(动静存储配置)
能够在数据库运行时更改数据库的配置,ASM 会主动 Rebalance。
ASM Instance(Oracle 实例)
ASM 实例是一种 Oracle 实例,它为磁盘组、ADVM(ASM 动静卷) 和 ACFS(ASM 集群文件系统) 治理元数据。所有元数据批改都是由 ASM 实例实现的,以隔离故障。数据库实例连贯到一个 ASM 实例,以创立、删除、关上、敞开文件或者扭转其大小,数据库实例间接读写由 ASM 实例治理的磁盘。Oracle 在外部应用主动内存治理,很少须要对一个 Oracle ASM 实例进行调优。
Interoperability with Existing Databases
已存在数据库的互操作性。ASM 并不会打消已存在零碎的性能。
Single Instance and Clustered Environments
ASM 反对单实例和集群环境。
ASM 的 Components
ASM 的五项组成:disk groups, disks, failure groups, files, and templates。
disk groups
ASM 的首要组成就是 disk groups,一组 disk 作为一个单元形成 disk groups。
三种 disk group 类型对应的镜像抉择:
Disk Group Type | Supported Mirroring Levels | Default Mirroring Level |
---|---|---|
Normal redundancy | 2-way3-wayUnprotected (none) | 2-way |
High redundancy | 3-way | 3-way |
External redundancy | Unprotected (none) | Unprotected |
disks
在 windows 操作系统上,disk 可能是一个分区(partition),在其余的平台上可能是:
- A partition of a logical unit number (LUN)
- A network-attached file
failure groups
故障组定义了一些 ASM 磁盘,它们可能共用一种潜在的故障安装。故障组是磁盘组中的一个磁盘子集,这个子集内的磁盘依赖于一个必须容忍其故障的公共硬件资源。只有对于一般冗余(Normal redundancy)或高冗余(High redundancy)配置,它才十分重要。雷同数据的冗余正本被搁置在不同的故障组中。
files
写到 ASM 磁盘中的文件称为 ASM 文件。每个 ASM 文件都齐全蕴含在单个磁盘组中,均匀散布在这个组中的所有 ASM 磁盘上。一个 ASM 文件就是一个数据盘区集,每个数据盘区是调配单元的一个汇合。因为在 ASM 文件变大时 Oracle 会主动增大数据盘区的大小,因而咱们不能扭转数据盘区的大小。
templates
Templates 是文件属性值的汇合。用来给每一种类型的数据库文件设置镜像化和条带化的属性的。
对于 templates:
Managing Disk Group Templates
ASM 架构
ASM 反对单实例架构和集群架构。
在一个数据库服务器中,能够存在多个数据库实例,一个数据库实例能够对应一个 ASM 实例,也能够多个数据库实例对应一个 ASM 实例。单实例架构如下图:
ASM 集群架构如下:多个 ASM 实例独特治理数据文件。数据库实例和 ASM 实例最经常见的还是一对一。
Rebalance
ASM rebalance 操作不会影响数据库的失常应用
- 会影响 I / O 效率
- 能通过数据的从新散布,使得零碎的 I / O 失去最大的晋升
- 从 Oracle 10R2 之后,如果敞开数据库实例,Rebalance 操作会更快。
记得帮我点赞哦!
精心整顿了计算机各个方向的从入门、进阶、实战的视频课程和电子书,依照目录正当分类,总能找到你须要的学习材料,还在等什么?快去关注下载吧!!!
朝思暮想,必有回响,小伙伴们帮我点个赞吧,非常感谢。
我是职场亮哥,YY 高级软件工程师、四年工作教训,回绝咸鱼争当龙头的斜杠程序员。
听我说,提高多,程序人生一把梭
如果有幸能帮到你,请帮我点个【赞】,给个关注,如果能顺带评论给个激励,将不胜感激。
职场亮哥文章列表: 更多文章
自己所有文章、答复都与版权保护平台有单干,著作权归职场亮哥所有,未经受权,转载必究!