在ASM出现之前,Oracle在不同的操作系统平台上,都要依赖不同的卷管理软件、集群文件系统等,这些技术一方面复杂化了Oracle的管理和维护,一方面对Oracle数据库的发展和性能造成了制约,所以在1996,Oracle ASM最初的架构师Bill Bridge有了一个新的想法,那就是构建Oracle自己的存储管理系统,他在1996年8月15日发出了最初的建议邮件,此后他开始带着自己的项目方案,四处游说,劝说那些反对者(当时重要的声音认为,存储管理是合作伙伴或第三方的任务,Oracle没有必要介入无关的领域和他们竞争),这个项目最终在1999年被批准执行。
因为存储管理系统最初是为OPS规划设计的,所以最初的名字是Parallel Storage Manager (PSM),后来更改为Oracle Data Manager (ODM),在2000年开发经理Rich Long构建了一个6人开发团队开始开发ASM产品,并且名称更改为Oracle Storage Manager (OSM),这一名字最终在2003年发布时被更改为Automatic Storage Management (ASM),在那一年的Oracle Open World大会上,ASM随Oracle Grid产品发布,并一举成名,赢得了广大Oracle用户的青睐。
到2011年,实际上ASM技术已经有了10多年的发展历史,并且早已远远超出了Bill Bridge当年的设想,这一产品已经深远的影响了整个产业,并且极大地冲击了很多以文件系统、集群文件系统为生的第三方厂商。
现在ASM技术已经成为数据库架构中,位于操作系统和应用之间的最重要的组件,在保证对于数据文件等重要文件的支持下,ASM Cluster File System(ACFS)更增加了对于小文件、操作系统文件的支持能力,形成了独立而全面的支撑体系,图6-2引自Oracle Database Storage Administrator's Guide,展示了Oracle ASM的层次结构:
图6-2:自动存储管理架构图
在Oracle划时代的产品Exadata中,ASM也成为了最为重要的存储管理工具,承担了存储管理、虚拟化、数据保护等重要使命,图6-3是Exadata的架构示意图,这里的每个Exadata Cell可以理解为一台物理的存储主机,ASM负责管理这些存储Cell上的磁盘,这个体系结构中的InfiniBand网络极大的拓展了网络带宽,提供了高速的交换通道:
图:6-3 Exadata体系结构图
ASM技术自其诞生以来就不断在Oracle产品中充当着越来越重要的角色。