【IT168 现场报道】2013年4月18-20日,第四届中国数据库技术大会(DTCC 2013)在北京福朋喜来登酒店拉开序幕。在为期三天的会议中,大会将围绕大数据应用、数据架构、数据管理(数据治理)、传统数据库软件等技术领域展开深入探讨,并将邀请一批国内顶尖的技术专家来进行分享。本届大会将在保留数据库软件应用实践这一传统主题的基础上,向大数据、数据结构、数据治理与分析、商业智能等领域进行拓展,以满足于广大从业人士和行业用户的迫切需要。
自2010年以来,国内领先的IT专业网站IT168联合旗下ITPUB、ChinaUnix技术社区已经连续举办了三届数据库技术大会,每届大会超过千人规模,云集了国内技术水平最高的数据架构师、DBA、数据库开发工程师、研发总监、IT经理等,是目前国内最受欢迎的数据库技术盛会。
在2013中国数据库技术大会的“Oracle架构与优化”专场中,由ITPUB版主也是前阿里巴巴首席DBA吕海波为大家分享《Oracle ASM的IO架构优化实践》话题。
▲ITPUB版主、前阿里巴巴首席DBA吕海波
概念普及:什么是Oracle ASM
ASM是Oracle 10g R2中为了简化Oracle数据库的管理而推出来的一项新功能,这是Oracle自己提供的卷管理器,主要用于替代操作系统所提供的LVM,它不仅支持单实例,同时对RAC的支持也是非常好。ASM可以自动管理磁盘组并提供有效的数据冗余功能。ASM它提供了以平台无关的文件系统、逻辑卷管理以及软RAID服务。ASM可以支持条带化和磁盘镜像,从而实现了在数据库被加载的情况下添加或移除磁盘以及自动平衡I/O以删除“热点”。它还支持直接和异步的I/O并使用Oracle9i中引入的Oracle数据管理器API。
使用ASM的好处:
1、 将I/O平均分部到所有可用磁盘驱动器上以防止产生热点,并且最大化性能。
2、 配置更简单,并且最大化推动数据库合并的存储资源利用。
3、 内在的支持大文件
4、 在增量增加或删除存储容量后执行自动联系重分配
5、 维护数据的冗余副本以提高可用性。
6、 支持10g,11g的数据存储及RAC的共享存储管理
7、 支持第三方的多路径软件
8、 使用OMF方式来管理文件
在对Oracle ASM有一定认识之后,在性能优化方面也可以通过它来实现。ASM的I/O规化的对象包括AU和条带,而他们二者的区别是前者有大有小,后者可有可无。但是二者的使用过程中仍然存在很大的不同。吕海波认大/小AU的使用时机、使用条带的必要性等,甚至DG中磁盘的顺序都有可能影响性能。这些是创建数据库前的规化阶段,必须考虑的问题。
深入调优的前提:可调细粒度的
粗粒度不可调条带,相当于ASM没有条带,或者说,AU就是条带。条带宽度永远为1,不可改变。条带大小等于AU大小,也同样不可改变。这就是称它为“不可调”的原因。在此模式下,一个AU,其实就是一个条带。相反则是细颗粒条带,吕海波举了一个例子为大家解释其中的差异,DG1共有4块盘,编号分别分1至4。在DG1中创建一个数据文件,文件的第一个4M在1号盘1号AU 1号条带,第二个4M在2号磁盘1号AU 1号条带,等等,第5个4M在1号磁盘2号AU 1号条带,以次类推。每个AU,只有一个条带,不存在有几号AU 2号条带这个说法。
Oracle最大IO取决于连续的IO有多大,当然还有OS、和硬件的限制。比如下图中的条带下,条带大小512K,数据被以512K为单位,切割到多块磁盘。如果区大小为1M,这1M对数据库来说连续的数据,在ASM中被分别存储在两块磁盘中。此时,Oracle的最大IO大小,不会超过512K。
AU、条带,包括数据库中的Extent,都只决定数据如何存储,与最小IO无关。Oracle中的最小IO大小,取决于块大小。
·数据文件,最小IO是8K。
·Redo文件,最小IO是512字节。
·ASM元数据文件块大小是4096字节,这些文件的最小IO就是4K。
同时,吕海波认为AU、条带大小,并不影响最小IO大小,而且值得注意的是:条带,或AU,并不是ASM的最小IO。对于IO性能的影响是数据的分布,AU、条带决定了数据在存储介质中的分布,而数据的分布则可能会影响到IO性能。