linux裸设备文件系统,3.2.5 文件系统(CIO/DIO)和裸设备(1)

3.2.5  文件系统(CIO/DIO)和裸设备(1)

我们在创建DMS表空间容器时可以选择使用裸设备或文件系统,下面我们来看看两者的区别。我们知道,内存的读写效率比磁盘高近万倍,因此数据库通常会在内存中开辟一片区域,称为Buffer Pool,使数据的读写尽量在这部分内存中完成。同样地,在文件系统中,操作系统为了提高读写效率,也会为文件系统开辟一块Buffer用于读写数据的缓存。这样,数据库中的数据会被缓存两次。为了避免操作系统的这次缓存,我们可以采用裸设备作为数据文件的存储设备。裸设备,也称为裸分区(Raw Partiton),是一个没有被加载(Mount)到操作系统的文件系统上的磁盘分区,它通过字符设备驱动来访问。裸设备的I/O读写不由操作系统控制,而是由应用程序(如数据库)直接控制。

裸设备的优点:

由于屏蔽了文件系统缓冲器而进行直接读写,从而具有更好的性能。对硬盘的直接读写就意味着取消了硬盘与文件系统的同步需求。这一点对于纯OLTP系统非常有用,因为在这种系统中,读写的随机性非常大以至于一旦数据被读写之后,它们在今后较长的一段时间内不会得到再次使用。除了OLTP,裸设备还能够从以下几个方面改善DSS(决策支持系统)应用程序的性能:

排序:对于DSS环境中大量存在的排序需求,裸设备所提供的直接写功能也非常有用,因为对临时表空间的写动作速度更快。

顺序访问:裸设备非常适合于顺序I/O动作。同样地,DSS中常见的顺序I/O(表/索引的全表扫描)使得裸设备更加适用于这种应用程序。

直接读写,不需要经过操作系统级的缓存。节约了内存资源,在一定程度上避免了内存的竞争。

避免了操作系统的cache预读功能,减少了I/O。

采用裸设备避免了文件系统的开销。比如维护I-node、空闲块等。

裸设备的缺点:

裸设备的空间大小管理不灵活。在放置裸设备的时候,需要预先规划好裸设备上的空间使用。还应当保留一部分裸设备以应付突发情况。这也是对空间的浪费。

需要操作系统root用户干预,因为裸设备的创建、更改权限、扩展大小等都需要root用户完成,增加了管理的成本。

文件系统的优点:

文件系统易于管理和维护,如文件的基本管理以及安全和备份等。

文件系统的缺点:

性能比不上裸设备。

我们在选择表空间容器时,从性能上考虑尽量采用裸设备,但是如果我们使用自动存储方式创建数据库和表空间,这种方式不支持裸设备。或者我们为了便于管理而采用文件系统方式。这时候我们采用合理设置文件系统相关选项和表空间的相关选项。下面我们来讲解文件系统方面应该注意的事项。

CIO/DIO

直接 I/O(DIO)由于可以绕过在文件系统级别进行高速缓存,从而改进内存性能。此过程可减少CPU开销并使得更多的内存可用于数据库实例。并发I/O(CIO)具有DIO的优点,并且还可以消除串行化写访问权。与使用文件系统缓冲I/O相比,在具有大量事务处理工作负载和回滚时CIO/DIO机制可增大吞吐量。

DIO和CIO在HP-UX、Solaris、Linux和Windows操作系统***版本上都受支持。

关键字NO FILE SYSTEM CACHING和FILE SYSTEM CACHING是CREATE和ALTER TABLESPACESQL语句的一部分,允许您指定将对每个表空间使用DIO还是CIO。当 NO FILE SYSTEM CACHING有效时,只要可能,数据库管理器都会尝试使用"并发 I/O"。在不支持CIO的情况下(例如,当使用了JFS 时),将取而代之使用DIO。

建议在表空间级别启用或禁用UNIX、Linux和Windows上的非缓冲I/O。这将允许您在特定表空间上启用或禁用非缓冲I/O,同时避免数据库的物理布局中的任何依赖性。它还允许数据库管理器确定每个文件最适合使用哪种I/O,缓冲的还是非缓冲的。

NO FILE SYSTEM CACHING子句用于启用非缓冲I/O,从而禁用特定表空间的文件高速缓存。一旦启用了非缓冲 I/O,数据库管理器就会根据平台自动确定将使用直接 I/O还是并发I/O。由于使用CIO可以提高性能,所以只要支持CIO,数据库管理器就会使用它。

【责任编辑:云霞 TEL:(010)68476606】

点赞 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值