当前位置:首页 > 技术与方案 > 数据库技术相关

Unix管道技术和SAN存储应用的结合 (图)

(2012-09-26 16:39:06)

“管道”技术是Unix操作系统最具特色的功能之一,而SAN存储技术目前在很多行业中的应用都已经较为普及,笔者在文中介绍的是某省建设银行使用的系统,这是笔者在工作中实际接触的例子,结合笔者的经验,我们一起来研究一下采用Unix管道技术解决备份问题的方法,同时着重为读者介绍有关“管道”的概念。

一、SAN存储的实际应用和问题

(一)某省建行建成的备份体系(如图1)


实际环境需要备份的系统有:
1.生产系统
两套IBM Sequent NUMA-Q 2000 DYNIX CLUSTER,该操作系统为DYNIX/ptx4.5.1,数据库为Informix7.31 Dynamic Server,数据量在100GB左右。
2.清算系统
操作系统为HP-UX 10.01,数据库为Informix7.12,数据量为2GB左右。
3.证券系统(重要客户系统)
操作系统为AIX4.3,数据库为Informix7.31,数据量为4GB左右。
4.信贷系统
操作系统为SCO5.05,数据库为Informix7.23,数据量为6GB左右。
5.管理系统
操作系统为Windows 2000 Server,数据库为SQL Server 7,数据量为300GB左右。

(二)某省建行备份系统存在的问题
1.备份软件无法使用多个驱动器对Sequent服务器上的Informix数据库进行并行备份和恢复。
2.清算业务服务器上的旧版本的Informix数据库无法使用备份软件进行自动备份。
对于第一个问题,我们采用VERITAS的软件解决了并行备份和恢复。对于第二个问题,由于旧版本的Informix数据库不支持onbar工具,给自动备份出了个难题,经过分析,我们认为采用Unix管道技术可以解决备份的问题。

二、Unix管道技术

管道是Unix操作系统最强大和最具特色的性能之一,从功能上讲,管道机制提供了一种在各进程之间大量传输信息的通道;而从本质上讲,管道是一个特殊的文件。管道是以Unix文件系统为基础而设计的,它具有对普通文件操作的一般特性,如用于普通文件的打开(OPEN)、读(READ)、写(WRITE)、关闭(CLOSE)等系统调用同样可以作用于管道。
Unix操作系统下的管道分为无名管道(PIPE)和有名管道(FIFO)两种,它们在不同的领域下有效地完成了相关进程之间的数据共享和信息交换,从而保证了进程间的协同工作。与Unix系统提供的其他进程通信机制,如信号(SIGNAL)、消息传送(MESSAGE PASSING)、共享内存(SHARED MEMORY)等相比,管道机制具有如下三个突出的特点:
(1)发送进程能以比较简单的方式,源源不断地把产生的消息以自然流的方式写入管道,而不需要考虑对每次传送的信息长度的限制。
(2)接收进程能在适当的时机从管道按需提取信息,同样也不必以固定的消息长度为单位进行。
(3)发送和接收进程都能以一定的方式了解对方进程是否存在,并且可以通过管道的现存消息情况(管道空、管道有信息、管道满)等相互协调动作。

无名管道(PIPE)
无名管道是一个特殊的打开文件,只能在程序中由系统调用PIPE(P)生成。其中参数P的定义为:
INT P[2];
无名管道由一个在基本文件系统存储设备上的INODE,一个与其相连的内存INODE,两个打开文件控制块(分别对应管道的信息发送端和信息接收端)及其所属进程的描述信息来标识,在系统执行PIPE(P)命令行之后生成。在P[0]中返回管道的读通道打开文件描述符;在P[1]中返回管道的写通道打开文件描述符。从结构上看,无名管道没有文件路径名,不占用文件目录项,因此文件目录结构中的链表不适用于这种文件,它只是存在于打开文件结构中的一个临时文件,随其所依附的进程的生存而生存,当进程终止时,无名管道也随之消亡。

 

更多
关闭窗口 打印 
网站首页    -    联系我们    -   收藏本站    -    网站地图                                                               客户服务热线:0571-85023000
本网站所有网页信息已申请知识产权和著作权保护,版权归四海光纤公司所有,未经授权禁止任何人复制或镜像,违者必究。
公司主营:杭州光纤光缆视频会议系统,是专业的通信网络工程、视频会议系统建设专家

中华人民共和国备案号:浙ICP备10018243号