黑龙江移动GPFS技术方案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
黑龙江移动经分数据库GPFS技术方案建议书
国际商业机器中国服务有限公司
2022年04月
目录
1.1系统架构介绍 (1)
1.2O RACLE RAC运行在裸设备上的技术架构 (2)
1.3O RACLE RAC运行在GPFS上的系统架构 (4)
1.3.1GPFS(General Parallel Files System)介绍 (4)
1.3.2方案实施基本流程 (8)
1.3.3主机间高可用性的实现 (10)
1.3.4SAN网络高可用性的实现 (11)
1.3.5网络高可用性的实现 (11)
1.4IBM对技术方案的建议 (12)
1.4.1GPFS和裸设备在接管速度上的比较 (12)
1.4.2GPFS和裸设备在管理上的比较 (12)
1.4.3GPFS和裸设备在性能上的比较 (14)
1.4.4结论 (17)
1.5GPFS上的其它重要功能 (17)
1.5.1本地存储容灾功能 (17)
1.5.2实现高效的文件并发访问 (18)
1.5.3备份某个时间点的数据 (19)
1.6成功案例 (19)
1.1 系统架构介绍
黑龙江移动经分数据库系统架构如下图所示。
2台数据库服务器(IBM p570)和1台存储设备(IBM DS8300,512块146G 硬盘,做成64个RAID5。
其中32个是6+P+S 的RAID5,有效容量779G ;32个是7+P 的RAID5,有效容量是909G )组成集群系统,采用SAN 网络存储体系结构。
正常情况下ORACLE 9I RAC 数据库在两台服务器上并行运行。
当一台主机故障时,另外一台主机自动接管运行故障主机的资源组。
在AIX 平台上,Oracle RAC 可以运行在并发卷组(Concurrent Volume Group )的裸设备上,也可以运行在IBM 的通用并行文件系统上(GPFS ,General Parallel File System )上。
GPFS 是和AIX 操作系统一起产生的、紧密结合的、支持从多台主机对
IBM DS8300 存储阵列
512块146G 硬盘,RAID5 S
P570-1 P570-2
2-Nodes HACMP
Cluster 光纤交换机
光纤交换机
16 16
文件进行并发访问的高性能文件系统,在高性能运算领域占据着举足轻重的地位。
Oracle RAC运行在GPFS上,和运行在裸设备上相比,具有更快的接管速度、超强的可管理性和更好的I/O条带化性能。
更快的接管速度使故障的接管时间更短,提高了系统的持续服务能力;超强的易管理性大大降低系统管理的工作量,减少人为出错的几率,增加系统的稳定性,管理简单意味着更稳定;对于容量在T级别的数据库,GPFS的条带化能够提供比裸设备更好的I/O性能;GPFS的I/O条带化原理保证无论是随着业务模式的变化,还是存储的扩容,系统性能能够一直保持在最优状态。
考虑到黑龙江移动的数据库是一个海量的数据库(50T左右),对系统性能和管理都存在在巨大的挑战,GPFS的优势正好能够定位于解决这两方面的问题,IBM推荐黑龙江移动的经分数据库采用GPFS架构。
为更充分理解GPFS的优势,在后面的章节中,我们对两种方案的技术细节进行详细介绍。
1.2Oracle RAC运行在裸设备上的技术架构
Oracle RAC运行在裸设备上的技术架构如下图所示。
在当前黑龙江移动环境下,DS8300共有512块146G硬盘,做成64个RAID5。
其中32个是6+P+S的RAID5,有效容量为779G;另外32个是7+P的RAID5,有效容量为909G。
在使用裸设备的情况下,为存储空间使用上的有效性和灵活性,每个RAID分成若干个128G的LUN,这样总共分为378个128G的LUN,在AIX 5.3操作系统中对应378个vpath。
在378个vpath上,创建40个卷组(并发卷组和普通卷组),在卷组上再创建逻辑卷(Logical Volume),在逻辑卷上创建文件系统或者直接作为裸设备来使用。
ORACLE 9I RAC数据库的数据文件存放在并发卷组的裸设备上,通过HACMP来管理。
可以想象,如此海量的数据,无论是数据库的物理规划,还是日常维护,对系统管理员都是非常繁重的工作,而且,即使最初花费了大量的精力进行I/O分布的规划,随着业务运行模式的不同,I/O冲突随时也可能会出现。
由于 vpath数目众多、
VG 数目众多、LV 数目众多,系统启动、HACMP 的启动都需要花费大量的时间。
对海量数据库,使用裸设备的架构是令人苦恼的。
LUN1a
LUN2a
DS8300
hdisk1b Logical Volume Device Drive datavg(并发卷组) lv1 lv2 lv3 Raw Dev Raw Dev Raw Dev Oracle RAC 数据库 应用程序 File System fsvg1 LVDD 数据文件 数据文件
HACMP Daemon p570-1 AIX 5.3 应 用 层 逻 辑卷管理
物 理
层 hdisk1b
hdisk1a Logical Volume Device Drive datavg(并发卷组) lv1 lv2 lv3 Raw Dev Raw Dev Raw Dev
Oracle RAC 数据库 应用程序 File System fsvg2 LVDD 数据文件 数据文件 HACMP Daemon p570-2
AIX 5.3 网络交换机-1 网络交换机-2 p5701_svc p5701_stb p5702_svc p5702_stb
Oracle Interconnection EtherChannel Oracle Interconnection
EtherChannel
图一 Oracle RAC on Raw Device 系统逻辑架构图
hdisk1a
1.3Oracle RAC 运行在GPFS上的系统架构
GPFS(General Parallel Files System),IBM通用并行文件系统,是和AIX操作系统一起产生的、紧密结合的、支持从多台主机对文件进行并发访问的高性能文件系统,在高性能运算领域占据着举足轻重的地位。
在AIX平台上,Oracle RAC的数据文件支持存放在并发卷组的裸设备中和GPFS文件系统中。
Oracle RAC运行在GPFS 上,和运行在裸设备上相比,具有更快的接管速度、超强的可管理性和更好的I/O条带化性能。
在本方案中,IBM的群集软件HACMP负责主机间相互接管;Oracle RAC的数据文件存放在三台主机能够同时并行访问的GPFS文件系统中,使用GPFS内置的文件复制功能实现两台存储的在线热备份,当一台存储发生故障时,不影响业务的正常运行。
系统逻辑架构如图二所示。
1.3.1GPFS(General Parallel Files System)介绍
1.3.1.1GPFS简介
GPFS 是IBM 公司第一个共享文件系统,起源于IBM SP 群集系统上使用的虚拟
共享磁盘技术(Virtual Shared Disk )。
作为整个技术的核心,GPFS 是一个并行的磁盘文件系统,它保证在群集内的所有节点可以并行访问同一个文件系统(类似与NFS 文件系统的功能);而且针对此文件系统的服务操作,可以同时安全地在使用此文件系统的多个节点上实现。
GPFS 允许多台主机共享文件,而这些文件可以分布在不同节点的不同硬盘上;它提供了标准的UNIX 文件系统接口,允许应用不需修改或者重新编辑就可以在其上运行。
GPFS 也支持UNIX 文件系统的工具(例如tar 、cp 等),即用户可以像使用普通文件系统一样使用基于GPFS 的文件系统,唯一不同的在于管理GPFS 文件系统的命令(例如在GPFS 文件系统中添加磁盘需要使用mmaddisk 命令,在一个节点上执行此命令,该命令对系统所做的修改在所有节点上都能够被看到)。
LUN1a
LUN2a
DS8300
网络交换机-1
网络交换机-2 p5701_svc p5701_stb p5702_svc p5702_stb Oracle Interconnection
GPFS Admin LAN
EtherChannel 图二 HACMP + Oracle RAC on GPFS 系统逻辑架构图
p570-1 AIX 5.3 hdisk1a NSD1a
hdisk1b NSD1b p570-2
AIX 5.3 hdisk1a NSD1a hdisk1b
NSD1b GPFS /gpfs_ora Oracle RAC 数据库以及应用程序 数据文件
HACMP Daemon HACMP Daemon
GPFS提供的文件系统操作服务可以支持并行应用和串行应用,它允许任何节点上的并行应用同时访问同一个文件或者不同的文件。
GPFS文件系统是一个成熟的并行文件系统,和AIX操作系统紧密结合,在高性能计算领域有广大的客户群。
Oracle RAC版本支持GPFS文件系统,在国内外也有众多的用户。
一个比较典型的例子是,使用Oracle RAC的SAP系统只支持在GPFS上运行。
1.3.1.2GPFS术语
GPFS cluster
GPFS群集是指多个节点的集合,它们共享同一个或者多个并行文件系统;群集里的节点可以并发访问这些文件系统里的数据。
GPFS Admin LAN
用于不同节点的GPFS 守护进程之间交换控制信息的内部网络。
在所有节点均能够访问SAN的环境下,GPFS文件系统的数据在SAN之间移动,而控制信息在GPFS Admin LAN上流动。
Network Shared Disk (NSD)
Network Shared Disk (NSD) 是GPFS的一个磁盘子系统,它提供对GPFS共享磁盘文件系统的远程管理和全局命名的功能。
例如,在使用DS8100磁盘阵列的AIX操作系统中,一个 vpath对应一个NSD。
Failure Group
Failure Group是一个磁盘的集合,一个单点故障会引起集合内部的所有磁盘同时失效。
Metadata
Metadata由I-nodes和非直接块组成,包含文件大小、最后修改时间、构成文件的磁盘块分布等信息。
用来组织和定位在GPFS文件系统中经过条带化后的用户数据。
Quorum
Quorum是保障GPFS资源可用和完整性的机制。
在一个GPFS系统中,如果半数以上节点上的GPFS守护进程正常工作,此机制就被激活。
GPFS文件系统就处于可用状态。
1.3.1.3GPFS特点
更好的系统性能
✧一个GPFS文件系统可以横跨在群集内的所有主机上,分布在所有磁盘上。
GPFS文件系统在读写文件时采用条带化技术,将数据分成条带并行写入到该
GPFS下的所有NSD中。
在有高速数据通道(例如IBM High Performance
Swith,网络带宽可达500MB/s)的GPFS配置下,读写文件时可以通过所有
主机的光纤通道访问所有的磁盘,I/O条带化性能无可比拟。
✧GPFS的条带化原理保证同一个GPFS下所有磁盘的I/O负载是均衡的,没有
一块磁盘会比其它磁盘更繁忙。
✧GPFS支持超大文件系统。
GPFS2.3版本对GPFS文件系统的大小已经没有限
制,IBM实验室测试过的GPFS文件系统大小为200T。
而在AIX5.2中,JFS2文件系统的最大尺寸为1T。
✧GPFS支持对文件的并发访问。
它允许任何节点上的并行应用同时访问同一个
文件或者不同的文件。
准确的系统一致性
✧GPFS通过一套复杂的信令管理机制提供数据一致性;通过这套机制允许任意
节点通过各自独立的路径访问同一个文件。
即使节点无法正常工作,GPFS也
可以找到其它的路径。
✧和传统的锁机制相比,信令管理机制也确保了文件并发访问的高效性。
高可用的文件系统
✧GPFS是一种日志文件系统,为不同节点建立各自独立的日志。
日志种记录
Metadata的分布,一旦节点发生故障后,可以保证快速恢复数据。
✧GPFS Fail-over功能通过规划,将数据分布到不同Failure Group内达到高可用
性,减少单点故障的影响。
为了保证数据可用性,GPFS可以在多个Failure
Group内为每个数据实例做备份,即使创建文件系统时没有要求复制,GPFS
也会自动在不同的Failure Group内复制恢复日志。
增强的系统可扩展性
✧通过GPFS,系统资源可以动态调整;可以在文件系统挂载情况下添加或者删
除硬盘。
当系统处于相对空闲时,用户可以在已配置的硬盘上重新均衡文件
系统以提高吞吐量。
✧可以在不重新启动GPFS服务情况下添加新节点。
简化的管理手段
✧GPFS自动在各个节点间同步配置文件和文件系统信息,
✧在同一个GPFS cluster内,对GPFS的管理可以在任一个节点上进行,在一个
节点上执行的命令将在cluster内的所有节点上生效。
1.3.2方案实施基本流程
方案实施的大概步骤如下:
1.3.
2.1系统硬件的基本安装和配置
安装所有硬件产品,包括3台IBM pSeries主机,两台DS8100磁盘阵列,两台16口光纤交换机,以及完成这些设备之间的连线。
在3台主机上安装操作系统。
在两台DS8100上创建RAID10,根据具体要求划分LUN(Logical Unit Number)。
在AIX上安装DS8100驱动程序,认出所有LUN。
每一个LUN在AIX中对应多个hdisk,通过DS8100的多路径驱动软件,这些hdisk对应一个vpath(为简单起见,以下我们简化为一个LUN对应一个hdisk)。
1.3.
2.2安装配置GPFS并实现存储间的在线热备份
一个GPFS文件系统中硬盘个数越多,GPFS的I/O性能就越好;同时尽量一个RAID上创建一个LUN,这样避免同一个RAID内磁盘的冲突。
因此,针对黑龙江移动的配置,对LUN划分需要从如下几点考虑:
✓确定分配给GPFS的存储空间:在当前的64个RAID5中,确定有多少个RAID5给GPFS使用。
例如,50个。
✓对分配给GPFS的RAID5,每一个RAID5创建一个LUN。
对分配给其它使用的RAID5,为提高空间使用率,可以一个RAID5创建多个LUN,例如128G
一个LUN。
✓可以考虑创建两个GPFS:一个GPFS中的RAID5是6+P+S类型的,另外一个GPFS的RAID5是7+P类型的。
也可以创建一个GPFS,包括所有的
RAID。
可以在实施的时候做测试,来确定哪种方式更合理。
✓将Oracle RAC数据文件、归档日志文件、应用程序文件均存放在一个两个GPFS文件系统内,通过目录进行文件分类管理。
创建GPFS的简要步骤如下:
1.创建GPFS cluster,该cluster中包含2台IBM pSeris主机。
在创建cluster时,
需要指定GPFS Admin LAN,我们使用Oracle RAC的Inter Connection作为
GPFS Admin LAN。
2.创建NSD,每个vpath对应一个NSD。
如果要实现双存储间的热备份,需要
将两个存储内的NSD指定在两个不同的Failure Group中(同一个存储的NSD 在相同的Failure Group中)。
3.创建GPFS文件系统包含所有的NSD。
如果要实现双存储间的热备份,GPFS
文件复制参数打开,这样在缺省情况下任何文件会被复制两份,且分布在不
同的磁盘阵列上。
1.3.
2.3Oracle 9i RAC的安装和配置
在GPFS上安装和配置Oracle 9i RAC。
1.3.
2.4HACMP安装和配置
安装HACMP,配置HACMP网络和资源组。
由于应用程序存放在GPFS文件系统上,因此不需要接管。
每个主机只需要定义一个Cascading资源组,用于接管对外服务IP地址和起停应用进程。
1.3.
2.5应用程序安装配置
安装应用程序,实现HACMP的对程序的接管。
1.3.
2.6系统测试
系统设置完毕后,进行主机间的接管测试和GPFS的各种测试。
1.3.3主机间高可用性的实现
主机间高可用性的通过IBM的HACMP软件结合Oracle 9i RAC的在线接管功能实现。
正常情况下,一个ORACLE 9I RAC数据库同时运行在两台主机上,起到负载均衡的作用;HACMP软件运行在两台台主机上,监控群集系统可能发生的异常情况。
当某台主机发生故障时,HACMP会根据系统定义的逻辑选择某台存活的主机接管故障主机的资源组,接管步骤如下:
1.接管故障主机的Service IP地址到本主机的Standby网卡上。
使用HACMP 5.3
的IP Alias功能,IP地址接管时间在5秒钟左右。
✓应用系统文件存放在GPFS上,一台主机的损坏对其它主机没有影响,无需接管。
✓Oracle 9i RAC不需要接管。
故障主机上的查询事务能够自动被其它主机接管,插入和更新事务被自动提交或者回滚。
2.在本地主机启动故障主机的应用程序进程。
1.3.4SAN网络高可用性的实现
本方案中,采用两个互为备份的16口光纤交换机,每台主机采用两个光纤卡连接光纤交换机,每台DS8100磁盘阵列采用8个光纤通道卡连接光纤交换机。
主机上运行IBM SDD多通道负载均衡软件。
这样,在SAN网络内任何部件的损坏对业务不会造成影响。
1.3.5网络高可用性的实现
各业务系统对外服务IP地址的高可用性是通过HACMP的IP地址切换功能实现的。
为了防止网络交换机的单点故障,建议黑龙江移动采用两个单独的网络交换机,各主机的Service网段和Standby网段位于不同的交换机上,但两个交换机需要在一个VLAN里。
Oracle RAC需要高速网络通道(也称作Memory Channel,或者Oracle Inter-Connection)实现实例间的数据交换,从而达到并行的目的。
高速通道速度越快,并行访问的性能就越好。
我们可用使用每台主机HACMP中Standby网卡来作为高速通道,但在发生接管时,性能会收到影响。
为实现更快速稳定的高速通道,本方案建议采用单独的千兆网络来作为Oracle Interconnection,并采用EtherChannel通道技术。
EtherChannel通道技术能够绑定多块网卡到一个IP地址,这样既能够增加网络带宽(两块1G的千兆网卡绑定后变成2G),也能够起到网卡间相互备份的作用,任何一个网卡的损坏不会造成IP地址的不可访问。
实现EtherChannel功能除了要求操作系统支持外(AIX 5L支持EtherChannel功能),还需要网络交换机支持该功能。
为了防止网络交换机的单点故障,需要采用支持跨交换机做EtherChannel的网络交换机(例如Cisco 3750),将来自同一个主机的两块网卡绑定在不同的网络交换机上。
GPFS Admin LAN对GPFS的正常工作非常重要,如果某台主机该网卡损坏,那么该主机上的GPFS文件系统就会被umount下来。
如果整个GPFS Admin LAN宕掉,那么只有一台主机能够正常工作。
鉴于GPFS Admin LAN的重要性,需要采用跨网络交换机的EtherChannecl通道技术。
由于GPFS Admin LAN上仅仅传输文件系统的控制信息,数据量不大,因此可以使用Oracle Inter connection网络来作为GPFS Admin LAN。
1.4IBM对技术方案的建议
这两种方案均能够很好的满足黑龙江移动经分系统的需求。
简单的比较这两种方案,我们不难发现,Oracle RAC运行在GPFS上,比运行在裸设备上,无论是从系统架构原理、实施难易程度,还是从日常管理的复杂性,都有很大的优势。
根据GPFS 的原理,结合国内外用户的实践经验,Oracle RAC运行在GPFS上,比运行在裸设备上,优势主要体现在接管速度上、管理上和性能上三个方面。
下面做详细的阐述。
1.4.1GPFS和裸设备在接管速度上的比较
在接管速度上,和运行在裸设备上的Oracle RAC相比,GPFS的接管速度更快。
主要表现在如下方面:
1.HACMP启动速度:Oracle RAC运行在裸设备上时,并发卷组需要HACMP
管理。
HACMP启动时,需要检查所有vpath的状态,检查LV的状态,vpath
越多, LV越多,启动时间越长。
Oracle RAC运行在GPFS上时,GPFS不在
HACMP里管理,HACMP只需负责IP地址,启动很迅速。
2.HACMP接管速度:Oracle RAC运行在裸设备上时,需要接管IP地址和卷组
(2分钟,不加起应用的时间);Oracle RAC运行在GPFS上时,HACMP只
需负责IP地址,接管很迅速(30秒)。
3.在双存储环境下,当一个存储损坏时,裸设备环境下数据库操作要挂起2到3
分钟左右;而在GPFS环境下,只需要挂起30秒左右。
1.4.2GPFS和裸设备在管理上的比较
就管理上而言,和裸设备相比,GPFS有超强的易管理性。
主要表现在如下方面:
1.可以将Oracle安装程序安装在GPFS文件系统上。
这样所有节点只需要共享
一套程序,所有配置只需要维护一份。
对安装和维护,和单机版的数据库没
什么区别。
节点越多,优势越明显。
2.ORACLE安装在裸设备时,需要首先创建并发卷组,由HACMP来管理并发
卷组,然后在并发卷组上创建裸设备,更改裸设备属组,同步到所有节点。
在GPFS上创建数据库时,只需要指定一个目录即可,ORACLE会自动创建数据文件。
3.在数据库物理结构规划时,需要仔细调整裸设备的物理分布,例如访问最频
繁的表空间的数据库文件要放置在不同的硬盘上,以免发生I/O冲突。
数据库越大,裸设备就会越多,规划工作会越复杂。
而GPFS由于自身能实现很好的条带化,只需在要创建GPFS时注意磁盘的物理分布即可。
GPFS文件系统中包含的磁盘越多,I/O条带化性能会越好。
4.在表空间管理时,裸设备必须手工限定大小,当空间不够时需要增加裸设
备。
而建立在GPFS文件系统上的表空间可以自动扩充,由文件系统自动进行管理。
而且GPFS文件系统是一种支持超大文件的文件系统,理论最大尺寸没有限制,已经测试过的GPFS文件系统可以建到200T(JFS2文件系统最大为1T)。
我们可以将所有存储都分配给GPFS文件系统,由GPFS自动进行管理,这样不仅管理简单,而且还能够获取最好性能。
5.当需要增加新的数据文件时,如果使用裸设备,需要停止业务运行,停止
HACMP,在并发卷组中创建新的逻辑卷,然后将卷组信息同步到所有节点上,再启动HACMP,启动业务。
而使用GPFS,因为是文件系统,不需要做任何额外的操作。
6.在扩容时,GPFS优势更加明显。
当系统增加新的存储空间时,使用裸设备需
要将新存储的逻辑盘加入到逻辑卷中,然后再创建新的裸设备,分配给数据库使用。
如此操作,需要停机的时间比较长。
而GPFS文件系统的扩容可以在线进行,只需要将硬盘加入到GPFS中,GPFS可以在线将数据重新条带到所有硬盘上,不需要人为干涉,减少出错的几率。
7.使用裸设备时,由于需要HACMP软件来管理并发卷组,HACMP在varyon
并发卷组时,要逐个检查裸设备的状态,裸设备越多,检查时间会越长,启动越慢。
而且多个节点启动时需要逐个顺序启动,时间会比较长。
一旦HACMP出现问题,导致卷组不正常,只能通过重新启动机器来解决。
如果使
用GPFS,则HACMP只需要负责网络IP地址的接管即可,启动和停止非常
迅速,而且不容易出问题。
GPFS自身的启动速度很快,几个T的文件系统,
在所有节点上同时mount可以只需要几秒钟时间。
8.在ORACLE RAC中,一个经常需要面临的问题是归档日志的备份。
假设一个
4个节点的RAC,如果不使用GPFS,则需要在每个节点上分别创建归档日志
目录,RMAN对其分别进行备份,故障点增多,备份和恢复非常麻烦。
也可
以使用NFS,但NFS存在速度慢、受制于网络、不稳定、存在单点故障的问
题。
而使用GPFS,就像单机版数据库一样,性能好,操作简单,有高可用
性,不容易出问题。
1.4.3GPFS和裸设备在性能上的比较
在进行GPFS和裸设备性能比较时,我们采用了SAN环境进行测试。
主机采用3台IBM p650,存储采用两台DS6800,SAN光纤交换机。
软件采用AIX 5.3 + ML02,HACMP 5.2 + PTF SET 5,GPFS 2.3 + PTF SET 6,Oracle 9i RAC 9.2.0.6。
我们将Oracle数据库的系统表空间文件创建在一个GPFS文件系统/gpfs2上。
然后在四块10G的硬盘上分别创建GPFS文件系统和裸设备,在两者上分别创建测试表空间和表,比较插入和查询的性能。
裸设备的创建有两种方式,一种是不做条带化,这是最常用的创建方法;另外一种是做最精细的条带化。
不做条带的裸设备创建命令如下,系统缺省将LV创建在两块盘上。
mklv -y 'ora_test_lv' -t'raw' testvg 640
条带化的裸设备创建命令如下,系统将LV创建在4块盘上,分布在盘的最中心位置。
mklv -y 'ora_test_lv' -t'raw' –‘S64K’ testvg 640 vpath1 vpath2 vpath3 vpath5
测试中使用的ORACLE命令如下:
(1) gpfs
drop table test;
drop tablespace test including contents;
CREATE TABLESPACE TEST
DATAFILE '/gpfs2/oradata/rac_test01_lv' size 10000M
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;
create table test TABLESPACE TEST as select * from dba_objects ;
begin
FOR counter IN 1..7 LOOP
insert into test select * from test;
insert into test select * from test;
commit;
END LOOP;
end;
(2) raw
drop table test1;
drop tablespace test1 including contents;
CREATE TABLESPACE TEST1
DATAFILE '/dev/rora_test_lv' size 10000M
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;
create table test1 TABLESPACE TEST1 as select * from dba_objects ;
begin
FOR counter IN 1..7 LOOP
insert into test1 select * from test1;
insert into test1 select * from test1;
commit;
END LOOP;
end;
测试结果如下表所示:
操作GPFS时间最精细的条带化的裸设
备时间不做条带的裸设备
时间
插入2500万条记录第一次2m14s 1m50s 2m50s
插入2500万条记录第二次2m07s 2m02s 3m12s
插入1亿条纪录9m18s 8m27s 14m20s
select count(*) 3m03s 2m53s 4m10s 我们曾使用不同的硬盘做测试,结果基本上都和上表所列吻合。
通过上述数据,结合GPFS文件系统的运行原理,我们可以得出如下结论:
1.如果裸设备能够做到和GPFS一样的条带化,那么在ORACLE RAC环境
下,单纯就性能而言,裸设备的性能要好一些。
从理论上来讲,GPFS实现
并发访问的机制事实上底层也使用裸设备,只不过在裸设备上又加上一层文
件系统层来实现条带化和方便管理。
2.如果裸设备不做条带化或者是简单的条带化,裸设备的性能比GPFS要差一
些。
3.在实际的生产环境中,在裸设备比较多的情况下,即使我们对每个裸设备都
做精细的条带化,但和使用GPFS相比,其效果就类似于本测试中裸设备不
做条带的效果。
因为,即使做最好的条带化,每个裸设备只可能位于有限的
几块硬盘上,而GPFS则横跨在所有盘上。
4.GPFS的条带化保证了Oracle的I/O性能是稳定的,在使用过程中会一直保持
最初创建时侯的性能,这是因为GPFS横跨在所有的硬盘上,所有的硬盘繁
忙程度一样,本身就起到了均衡I/O负载的作用。
而裸设备即使最初规划的很
好,可随着业务运行的模式不同,也会出现某些磁盘异常繁忙而某些磁盘异
常空闲的情况,I/O冲突问题随时可能会发生。
5.GPFS的条带化使数据库物理结构的规划变得异常简单,这是管理上的优势,
也是性能上的优势。
而且当裸设备很多时,不仅规划难度大,而且在性能上
也难易保证绝对的I/O均衡。
6.在存储扩容时,除操作简单外,GPFS在性能上比之裸设备也有很大的优势。
添加新的存储时,从安全性考虑,如果使用裸设备,一般不会将原来的裸设
备重新打散分布在新盘上以获取更好的I/O的性能;但GPFS添加新的硬盘
后,会自动重新做条带化,扩容使性能更好。
7.在业务压力增大时,裸设备由于条带化有限,会出现某些磁盘异常繁忙的情
况,从而造成业务瓶颈;而GPFS的条带化原理保证所有磁盘平分压力,即
使多台主机同时执行大量读写操作,磁盘的繁忙程度也不会过分增加。
1.4.4结论
从多方面的考虑,GPFS的解决方案更适合黑龙江移动经分系统的现状,IBM推荐黑龙江移动经分系统使用GPFS的的解决方案。
1.5GPFS上的其它重要功能
1.5.1本地存储容灾功能
目前,越来越多的客户使用了本地存储容灾功能,也就是在同一个机房放两个存储,使用各种手段保证这两个存储上的数据是实时同步的,一个存储的损坏不会影响业务的正常运行。
在这些手段中,利用GPFS本身的复制功能来实现本地容灾是非常简单实用的。
GPFS的复制功能实现简要步骤如下:
1.每一个LUN在AIX操作系统中对应一个vpath,在vpath上创建NSD时将来
自不同磁盘阵列的NSD设置在不同的失效组中(Failure Group,失效组是
NSD的一个属性)。
例如,第一个磁盘阵列的所有NSD的FG属性为1,第
二个磁盘阵列的所有NSD属性为2)。
2.创建GPFS时,将GPFS的复制参数打开,这样GPFS在写文件时就会自动将
文件同步到两个磁盘阵列上,实现本地存储容灾。
GPFS复制功能由于执行了额外的数据操作,因此对写性能会造成一定的影响,但影响不大。
测试数据表明在光纤环境下,对写操作的影响不会超过10%。
当执行读操作时,从距离磁头最近的磁盘进行执行读操作,对读性能有较大的提高(50%左右)。