共享存储文件系统

2024-09-08

共享存储文件系统(精选10篇)

共享存储文件系统 篇1

文件系统是操作系统中的一个重要组成部分, 传统系统采用路径的方式查找文件, 但面对越来越多的文件这种文件查找方式不堪复用, 因此需要提出一种新的文件查找方式。不需要人工干预就可以完成对文件的存储分类和查找。本文基于linux0.12内核分析实验, 代码量适中且没有其他文件子系统。

1 理论说明

Linux文件系统中在查找文件时, 需要用户提供路径, 系统根据路径找到文件的i节点, 通过i节点号找到文件由于软连接的存在, 因此一个文件允许存在多个i节点号但一个节点号只对应一个文件, 因此记录文件的任意i节点号就可以找到文件。

主要思路:通过为每个文件建立一套权限区分体系, 使文件按照类别以及所属的应用程序进行区分, 操作系统借助这个体系不使用繁杂的拓展名对文件分类的方式就可以完成对同类型文件的分类管理。

2 具体实现

2.1 前期的准备工作

(1) 在file_table.c中的fs.h下数据结构dir_entry写入两个变量分别为

定义如下:i_right表示文件的调用权限, 并做出规定, 1为文本文件, 2为图像, 以此类推, 0被认为是所有类型文件。

I_app表示文件所属的应用程序, 0代表所有程序都允许调用, 否则写入每个应用程序的唯一编码。

(2) 创建哈希表, 分别对应i_right和对应类型的文件的上一层 (父一层) i节点号, 从而可以通过不同的分类直接进入到本类型文件的存储位置之中。

创建哈希表, 分别对应i_right和目录的filepath。为了尽量少的对原有文件系统的修改而增加的一张表, linux中的查找操作都是基于路径间接查找, 为了利用原有代码而不需要做大幅度改动原有结构因此增加这一张表, 在文件系统中系统通过路径找到i节点号再找到文件, 并因为路径具有唯一对应的文件, 而每一个i节点也可以找到唯一对应的文件且与路径存在一一对应关系 (详见fs.h下dir_entry结构体) , 因此在实际试验中某些需要传入路径作为参数的函数不再进行修改, 使用路径近似代替i节点号。

建立一个二级列表, 第一级可以通过i_app找到第二级的列表, 第二级中的列表可以通过i_right找到对应文件的文件名, i节点号

2.2文件存入的过程

文件在存入时需要两个参数, 先传入i_right, 系统查找哈希表获得对应文件的上一层i节点, 并将文件存入这个位置, 这样就实现了文件的自动存储, 构成物理曾。再传入i_app, 系统将参数写入二级列表, 实现文件的集中管理, 构成逻辑层。

2.3 查询文件的过程

在内核open.c的open函数中增加2.1中的两个参数, 应用程序在读出文件时需要提供目标文件的i_app, 系统会返回属于应用程序的所有文件列表, 再传入一个i_right就可以返回同时满足两个条件的文件, 也就是当前应用程序可以调用的并且满足分类要求的文件。

2.4 对第二部分的总结

在文件查询部分的描述中我们基本能够得到结论, 对于文件系统的修改基于原有文件系统并不复杂但是可以有效屏蔽中间路径。在应用程序保存文件时用户可以直接选择文件类型找到文件的上一层目录, 调用函数如下

对其进行修改或重载, 本文将路径与i节点号建立一张表来完成转换。因此当文件存入时只要有完整的i_right和i_app就可以实现文件的自动存储, i_app可以通过应用程序自动写入, 而i_right需要用户判断或者应用程序的干预。

3 进一步设想

在这一部分中不提供具体试验内容。提供一个新的思路, 即新文件系统。目的:为统一各种设备并能够实现文件的完全分类。实现一种跨平台的文件传输以及自动分类存储。

3.1 主要思路

创造一个完整, 半封闭的文件管理体系, 文件在被建立时就已经完成了对文件的分类和从属的设置, 当这个文件被其他设备拷贝时, 这些参数随着文件被保留下来, 成为其他设备进行自动分类, 自动存储, 快速查找的依据。这就成为新系统的主要的结构。

3.2 实现

在第二部分的基础上进行进一步的修改。在应用程序创建文件时, 通过自动或者用户输入的方式完成对文件参数的写入过程。

(1) 在用户调用时, 不再使用原有的文件资源管理程序, 用户调用文件时需要通过应用程序进行调用, 这样就可以有效利用程序的不同编码完成对文件的基本定位甚至精确查找。

(2) 在应用程序删除时, 将二级列表下的每一个项目均级联删除。

(3) 在文件被传输时, 只允许i_app相同的两个应用程序之间进行传输, 传输中所有的信息被一同输送, 在目标端依照既定原则进行自动存储以及写入对应表。

4 应用价值

(1) 家用设备以及移动设备。在使用同一个文件系统的各个设备上, 文件被自动分类存放, 用户只需要提供概略的分类就可以找到文件所在的概略位置而且通过应用程序可以更加快速找到文件, 避免卸载。

(2) 云存储。在云存储中, 可以将参数i_app作为用户的身份识别, 可以利用文件系统的逻辑层完成对用户数据的管理。

参考文献

[1]赵炯.linux内核完全剖析-基于0.12内核[M].北京:机械工业出版社, 2009 (11) .

[2]博韦.深入理解LINUX内核[M].北京:中国电力出版社, 2004 (6) .

[3]Brian W.Kernighan, Dennis M.Ritchie, 徐宝文, 李志译.The C Programming Language[M].北京:机械工业出版社, 2003 (11) .

共享存储文件系统 篇2

2、以下可以看到我的linux系统有安装samba,可以进行下一步;    3、建立共享文件夹,命令如下:Mkdir /home/fileshare;如下图:    4、如下图,已建立好文件夹;    5、设置好文件夹权限,命令如下:Chmod 755 fileshare;    6、建立samba用户;

复制内容到剪贴板

Groupadd fileshare

Useradd –s /sbin/nologin file

Smbpasswd –a file

注意:访问共享的用户必须为samba用户,不能使用其他用户;

7、修改sambe配置文件;命令如下:

Vim /etc/samba/smb.conf;

8

修改samba配置文件全局设置;

复制内容到剪贴板

#==============================Global settings===============

[global] workgroup = WORKGROUP server string = Samba Server security = share

9、设置文件夹共享,如下:

[sharefile] path = /home/sharefile public = yes read nly = yes

10、重启smb服务;

Service smb restart;

11、Windows 访问共享成功,

共享存储文件系统 篇3

〔中图分类号〕 G633〔文献标识码〕 C

〔文章编号〕 1004—0463(2007)10(A)—0020—01

计算机网络建设的主要目的是为了共享网络中的软、硬件资源,其中最常见的就是文件的共享。但如果局域网中计算机安装的操作系统不一样,有Windows98、2000、NT和XP,它们之间互相访问就会出现很多问题,下面结合实际应用中的一些典型问题,以Windows XP为核心,介绍一下解决办法。

一、解决Windows XP在访问网上邻居时速度很慢的问题

在使用XP浏览网上邻居时有时速度会很慢,特别是网络中有Win98操作系统时尤为明显,这实际上是由于XP操作系统在浏览网上邻居时系统默认会延迟30秒,XP将使用这段时间去搜寻远程计算机是否有指定的计划任务(甚至有可能到internet中搜寻),如果搜寻时网络没有反应便会陷入长时间的等待。解决方法如下:

1. 关掉XP的计划任务服务(Task Scheduler)

可以从“控制面板→管理工具→服务”中打开“Task Scheduler”的属性对话框,单击“停止”按钮停止该项服务,再将启动类型设为“手动”,这样下次启动时便不会自动启动该项服务了。

2. 删除注册表中的两个子键

单击“开始”按钮,在“运行”对话框中输入“regedit”,进入注册表编辑器。删除“HKEY-LOCAL-MACHINE\SOFTWARE\Microsoft\Windows\Current

Version\Explover\RemoteComputer\NameSpace”下的两个子键,重启计算机即可正常使用了。其中,第一个子键决定是否要搜索网络共享打印机,如果网络中没有共享打印机便可删除此键;第二个子键决定是否需要查找指定的计划任务,这是造成访问网上邻居很慢的主要原因,必须将其删除。

二、解决其他Windows操作系统无法访问Windows XP的问题

在局域网中,经常会出现其他Windows操作系统(特别是Win98操作系统)无法正常访问XP操作系统的问题,甚至在网上邻居中就根本看不到对方。解决此类问题的方法如下:

1. 启用简单文件共享

XP提供的“简单文件共享”功能可以方便解决该问题。打开资源管理器,从菜单中选择“工具→文件夹”选项,单击“查看”选项卡,在文件与文件夹高级设置中选中“使用简单文件共享(推荐)”。设置好后,选择需要共享的文件夹,单击右键,从快捷菜单中选择“共享与安全”命令,在打开的对话框中选中“在网络上共享此文件夹”复选框,单击确定即可完成操作。如果系统安全要求较高的用户觉得这种方式不可靠,就只好采取下面的方法了。

2. 启用Guest账户实现共享

通过启用XP的Guest账户可以实现文件夹的直接访问,但必须注意以下四个问题:

(1)默认情况下,XP禁用Guest账户。所以必须首先在控制面板的“用户账号”选项中启用Guest来宾账户。

(2)默认情况下,XP的本地安全策略禁止Guest用户从网络访问本机。所以用户必须进行以下操作:从“控制面板→管理工具→本地安全策略→本地策略→用户权力指派”中找到“从网络访问此计算机”选项并加入Guest帐户,在“拒绝从网络访问这台计算机”选项中删除Guest账户。

(3)默认情况下,XP的“本地安全策略→安全选项”中的“账户:使用空白密码的本地用户只能进行控制台登陆”选项是启用的。所以,空密码的任何账户都不能从网络访问本机共享资源,而Guest账户在默认情况下,用的正是空密码。所以必须禁用此项安全策略。

(4)从资源管理器的文件夹选项中取消“使用简单文件共享(推荐)”选项。

启用了Guest账户后,最大的好处是访问XP时不需要输入用户名和密码,这种方法比较适合于用户不确定、访问量较大的局域网。

3. 利用自己的账户远程访问

开启Guest账户并不能达到多用户不同权限访问的目的。而在实际运用中,用户经常会用自己的账户和密码,通过网络访问XP,这时可能会遇到一种情况:登录对话框中的用户名是灰的,始终是Guest用户,无法输入自己的用户账号。这是因为有个安全策略在作怪:“控制面板→管理工具→本地安全策略→安全选项→网络访问:本地账户的共享和安全模式”这一项被设置成了“仅来宾”的方式,所以账户名被固定为Guest。只需修改上述安全策略为“经典”,用户就可以直接输入自己的账号和密码进行网络访问。

湖北台电视剧共享存储系统简介 篇4

电视剧播出在电视台节目编排,节目播出中占有举足轻重的地位,它与节目收视率、经营创收息息相关。电视剧播出具有播出总量大,审核工作量大,编辑工作量大、上载工作量大等特点。传统电视剧播出是以视频磁带作为存储媒介的,因此电视剧从备播到播出过程中的各个环节都需要大量的录像机,而传统的录像机线性编辑存在工作效率低、剪辑后图像质量下降、重播剧重复上载、广告安排变动时电视剧时长调整难度大等缺点;针对电视剧播出中存在的上述问题,我们设计并建设了播出系统整备互联平台及电视剧共享存储系统。电视剧共享存储系统由非编网和小型媒资系统组成,实际上就是设置在播出域并与播出系统紧密相连的非编网,非编网实现电视剧的剪辑打包审看校验迁移等功能,小型媒资系统负责原版电视剧的存储调用。电视剧共享存储系统通过播出系统整备互联平台与播出网以及全台媒资系统相联。电视剧共享存储系统的设计建设,运行管理,技术维护也全部由播出部负责。其主要功能和工作流程都是围绕电视剧的播出、编辑和存储而设计的,其编辑及存储的都是播出视频服务器所支持的MPEG-2 IBP编码的MXF封装格式的视频文件,可直接调用播出系统现有的己上载素材,生产出来的电视剧无需再次转码即可供播出视频服务器使用。

电视剧剪辑系统采用千兆以太网架构,配备2台48口思科3750G,采用交换机堆叠技术连接;使用EMC VNX5500作为核心存储,共划分了6卷,两个卷用作原版剧存储(单卷10T共20T),两个卷用作电视剧剪辑(单卷8T共16T),单卷的总读取带宽高达850MB/s,总写入带宽约350MB/s,满足现有系统需求并有一定的富余,可供将来系统升级扩容使用,两个卷用作对外素材交换的缓存(分别为3T和4T),两个卷分别用作迁入及迁出的缓存,以更好地实现权限的分配及素材的删除管理,所有卷通过2个NAS使用NFS方式访问,通过域实现权限管理。系统配备域控服务器两台,数据库服务器两台,两台数据库服务器间通过EMC Atuostart软件实现了数据库磁盘的实时复制及自动切换,达到数据库服务器的热备;两台媒资管理服务器,实现媒资的迁入迁出编目查询等功能,四台接口服务器,分别提供非编内部流程管理,及对外信息交换的接口,审片及MD5校验的功能,三台后台打包服务器,用于完成非编软件生成的故事板的打包工作,提高非编工作站的使用效率。值得一提的是,全部服务器及非编工作站全部使用64位的操作系统及应用软件,以更好地满足高清非编制作的需要。

湖北电视台整备互联系统使用光纤和千兆网线将大洋电视剧剪辑系统、捷成媒资系统以及现有播出系统从物理上整合起来,实现节目共享。整备互联系统由8台HP服务器,2台云存储服务器、2台Cisco交换机、一台山石防火墙构成。考虑到播出安全,使用防火墙阻隔从大洋、捷成系统传入播出的消息流,通过在防火墙上增加安全策略来保护播出系统安全;2台交换机为并行架构,分别用于接入消息流和素材流,并在每台交换机上根据区域原则划分了VLAN,并做了安全策略,实现按需互通;8台HP服务器全部为双网段模式,在这些服务器部署了专业的防病毒软件和相应的整备软件,并根据实际功能配置不同的网关.在最大程度上阻隔病毒的传入;2台云存储服务器为单网段模式,主要用于缓存素材,提供FTP功能。

如图1所示,整备系统8台HP服务器分别为2台域控制器/数据库服务器,2台接口服务器,2台回迁服务器和2台迁移服务器。域控制器/数据库服务器提供整个整备区域管理功能和“整备数据”存储功能,装有Microsoft SQL2008专业数据库软件,实现了先进、可靠、安全的数据存储,数据库服务器之间运用NEC Express Cluster软件,实现了数据库磁盘的实时复制,达到数据库服务器的热备;2台接口服务器分别是大洋剪辑网接口服务器和媒资网接口服务器,用于整备系统和大洋剪辑网及媒资网之间提供WEB接口服务,2台回迁和迁移服务器主要完成播出网,大洋剪辑网和媒资网的文件传输工作;2台云存储服务器用于缓存大洋剪辑网和媒资网过来的电视剧集,可以把它看作是整个整备互联系统的二级存储,在素材进入云存储的时候.无论通过哪台主机写入,云存储会通过内部机制自动将素材同时写入这2台主机,大大增强了素材存储的安全性。

整备互联系统提供Web Service接口服务、MD5校验服务、技审服务,软审服务和迁移服务,电视剧的迁移使用全文件的流程化管理,并制定了三级审片制度,通过编辑人员人工审查,软件自动技审,导播播前终审,最大程度避免有问题的电视剧素材进入播出系统,在素材迁移过程中使用MD5校验技术保证文件在迁移过程中的完整性。当频道人员从电视剧剪辑网提交剧集到播出区播出时,打包完成后频道审核人员审看通过后Web Service接口会收到来自剪辑网的剧集相关信息,迁移服务器通过检测Web接口获取迁移任务迁移素材并对素材进行MD5的校验工作,当校验信息正确时才将素材写入数据库.否则视作不安全素材直接删除,素材入库后技审服务器会对素材进行自动技审,最后导播用软审软件终审通过后,剧集才会通过迁移软件自动迁至播出服务器待播。整个流程安全透明,充分保证了节目及素材传输到播出系统之后的安全性及完整性,确保了安全播出的需要。

整备系统还同时提供了素材的回迁功能,播出网上载的原版电视剧可以提交到电视剧剪辑网进行编辑,还可以把重播率较高的剧集提交到媒资网进行存储,也在一定程度上避免了重复劳动,提高了工作效率。节目编播全程文件化不仅仅意味着从原来磁带介质通过上载进行播出改为文件进入播出系统播出,更意味着我们的生产模式、组织架构、业务流程、审核机制、安全保证等等都会随之发生巨大改变。播出质量的审核与监看与全程文件化密切相关。电视剧播出流程:影视剧购入后,通过录入、编目进入媒资系统。播出前,各频道申请,审批后调入电视剧共享存储系统编辑网剪辑。制作完毕,通过审核,提交播出系统。整个流程中仅购入后一次上载,全程素材文件传递、全程电子化审核。基于数字媒体资源为核心的运营模式,为电视台带来的结果将是业务实现手段的转变和业务核心管理的提升,建立具有扩展性的全业务平台。它是对当前资源独享的巨大变革.是实现全面数字化视频播出、节目传输、网上发布,交换出售等增值服务的前提,对电视台业务的全面展开和深入发展具有极其重要的现实意义。电视剧共享存储系统投入使用以来,已经为湖北广播电视台电视频道播出提供了播出版电视剧上千集,避免了节目制作人员上载、剪辑、下载、再上载、播出这一繁复的过程。电视剧共享存储系统的建成和使用带来湖北台播出系统网络架构创新,节目编播流程创新、数字化媒资管理创新,向实现争创一流电视台目标更进一步,努力向一流目标进军。

摘要:本文对湖北广播电视台电视剧共享存储系统的搭建和作用进行了介绍,重点阐述了该系统的构成及硬件特点,采用该系统后电视剧制作和播出上有了改变,这种改变带来了电视剧生产效率的成倍提高。

共享存储文件系统 篇5

clearcase/“ target=”_blank“ >ccd”>于千万人之中遇见你,缘份啊,。。。。。

samba服务器的文件共享配置

1.进入LINUX,配置/etc/samba/smb.conf

仔细配置

workgrup

netbiosname

hosts allow = IP #允许访问的IP段

quest account =nobody #使用默认

security=share*

[public] 注意将“;”号去掉

path=/pub #共享文件夹

public=yes

only guest=yes

writable=yes

printable=no

guest k=yes

保存退出

2.进入/ect/rc.d/init.d/

执行#./smb restart

3.检验samba并访问WIN2000的共享资源

testparm

smbstatus

smbclient -L //2000的计算机名 -U 用户名

输入密码便可显示2000的共享资源

如要进入某个文件夹则

smbclient -L //2000的计算机名/共享名 -U 用户名

进入后出现类似DOS的提示符,我们可用FTP命令进行操作

以上是在LINUX下访问WIN2000的共享资源,要想在2000下访问LINUX的共享资源怎么办?可能有些人会直接到2000的网上领居中双击LINUX的samba SERVER的图标但进入不了,这是怎么回事,

别着急,第4步就是我要说的。

4.在RH桌面,单击“控制面板”--“服务”

启动smb(协议)、itentd(TCP连接用)

停止iptables、ipchains(两个防火墙)

RH启动时开启防火墙禁止网络连接,所以从2000的网邻中不能访问samba服务器。

OK后,保存退出

5.此时在到2000下便可访问了~~~~~~~~~!!

注释:

如果在security处设置成

security=user

则我们在从2000访问LINUX的时候需要提供密码

配置如下:

在控制台

#smbadduserlinuxname:2000name #增加用户

用户名和密码存于

/etc/samba/smbusers

/etc/samba/smbpasswd

修改smb.conf中的

encrypt passwords=yes

smb passwd file= /etc/samba/smbpasswd

保存并重启SMB

此时在到下试试你的配置是否生效吧

共享存储文件系统 篇6

分布式共享存储器 (Distributed Shared Memory—DSM) 作为分布式操作系统中的一个资源管理部件, 帮助没有物理上共享的存储器的分布式操作系统实现共享存储器模式。其原理就是在分布式系统中提供一个可供系统内所有节点共享的虚拟地址空间, 该虚拟地址空间可以被用户自由使用, 每一个节点都可以拥有存储在空间的数据, 以此类推, 可以利用多个节点存储非常多的数据, 当需要对共享地址空间中的数据进行访问时, 映像管理员就会把共享存储器地址变换为本地地址或远程的物理存储器地址, 是一种物理上分布、逻辑上共享的分布式共享存储器。

2 DSM设计与实现的相关问题

(1) 共享地址空间结构和粒度。地址空间可以是平面的、分段的和物理的。共享地址空间结构是指存储器中共享数据的布局方法。粒度指的是共享单元的大小, 一般是指字节、数据结构等。共享地址空间结构与粒度联系非常紧密。

(2) 缓存一致性协议。DSM经常出现缓存一致性问题。不同的协议有不同的假设, 选择协议依赖于存储器访问模式和支持环境。在写无效协议中, 一块共享数据可能有很多个只读副本, 但仅有一个可写副本, 每进行一次写时, 除了一个以外, 其他副本均变成无效。在写更新协议中, 每次写都要对所有副本进行更新。

(3) 可扩充性。DSM系统具有可扩充性。集中的瓶颈和全局公用信息的操作及存储是限制DSM系统可扩充性的两个重要因素。

(4) 数据定位和访问。在DSM系统中共享数据, 必须要先通过应用程序能找到相关的数据, 对数据进行定位。DSM系统是一个支持数据迁移的系统, 在数据定位和访问方面存在一定的困难。

(5) 同步原语。缓存一致性协议对于维持共享数据一致性具有一定的作用。但是, 还需要利用同步原语来对访问共享数据的活动进行同步, 这样才能够确保共享数据一致性。

(6) 异构性。系统结构不同的两台机器之间要能够实现数据共享是存在一定困难的。所以, 首先要解决异构性问题, 才能够实现分布式共享。

(7) 替换策略。分布式共享存储系统中的共享数据如果过多, 就会占满缓存器的有效空间, 如何将这些共享数据转移出去和放到哪里去也成了一大难题。

(8) 颠簸。DSM系统很容易就出现颠簸, 例如, 当两个节点对一个数据项同时进行写的过程中, 就可能产生以高速率来回传送数据的现象, 称之为乒乓效应, 这样就会使任何实际工作都不能进行。

3 实现DSM的算法

共享存储器模型为访问共享数据包含两个基本操作:data:=read (address) 和write (data, address) , 其中read是指返回由address指出的数据项, write是指把由地址address指出的内容设置为data。根据是否允许迁移或复制, 针对DSM设计与实现的相关问题, 可以提供中央服务员算法、迁移算法、读复制算法和全复制算法来解决这一问题, 具体如下所示:

(1) 中央服务员算法。中央服务员算法是指利用一个中央服务员来为所有对共享数据的访问提供服务并保持共享数据唯一的副本。读和写操作都包括由执行该操作的进程向中央服务员发送请求报文, 中央服务员执行请求并回答, 读操作时回答数据项, 写操作时回答一个承认。

(2) 迁移算法。迁移算法会将数据迁移到访问它的节点。实际上, 它就是一个“单读者/单写者” (SRSW) 协议, 确保在整个系统中一次只有一个进程读或写指定的数据项。

(3) 读复制算法。读复制算法是指对于一个当前不在本地的块中的一个数据项进行读操作时, 先与远程节点通信以获得那个块的一个只读副本, 然后再进行读操作。如果被执行写操作的数据所在的块不在本地或在本地但主机无写权时, 必须先使此块在其他节点的所有副本无效, 之后再进行写操作。

(4) 全复制算法。全复制算法允许数据块在进行写时也可以复制, 遵循“多读者/多写者” (MRMW) 协议。通过对所有的写操作进行全局排序可以实现保持复制数据一致性, 并且只是对与发生在执行读操作节点上的写操作相关的那些读操作进行排序。

4 结语

DSM系统与机密耦合的多机系统相比, 其具有性价比高、规模可扩充、兼容性良好等优点。本文分析了DSM系统设计与实现的相关问题, 研究了DSM的实现算法, 对于改善分布式共享系统的性能具有重要的作用。

摘要:目前, 分布式共享存储系统已经能够支持科学计算、Web服务器以及大型数据库管理等多种应用, 具有较好的可扩展性和较高的性价比, 同时也容易进行程序开发。文章对分布式共享存储系统的设计与实现进行了研究, 分析了DSM设计和实现问题, 论述了DSM的实现算法。

关键词:分布式,共享存储器系统,设计,实现

参考文献

[1]韩德志.网络存储技术及其进展[J].计算机应用研究, 2005 (7) :5-8

共享存储文件系统 篇7

随着现代医学的发展, 医院诊疗工作越来越多地依赖现代化的检查结果。像X光检查、CT、MRI、超声、胃肠镜、血管造影等影像学检查的应用越来越普遍。在传统的医学影像系统中, 影像的存储介质是胶片、磁带等, 其耗材成本支出高, 存放、查找、借阅难, 且由于信息资源不能共享, 难以避免病人重复检查等问题, 使得病人检查费用居高不下。因此, 传统的医学影像管理已经无法适应新型医疗卫生服务的要求, 采用数字化影像管理方法来解决这些问题已迫在眉睫。目前, 虽然有部分医院已经开始对医疗影像的数字化管理, 在医院内部实现了这些资源的共享, 但跨院间的信息共享尚不能实现。

鉴于此, 区域PACS平台的业务建设将紧紧围绕“完善公共卫生和医疗服务体系、合理配置医疗卫生资源”的重点进行, 预期本项目实施后, 将达到以下效果:

从社会角度, 通过实现对医学影像检查设备资源的合理配置、整合与共享, 从而节省医疗资源的重复设置, 减少医疗设备投资浪费。通过率先在联网医院的范围内建立区域内居民“以人为本”的诊疗信息资料库, 为将来实现区域医疗信息化打下基础。另外, 通过减少对传统影像胶片的使用, 从而降低对环境的污染。

从病人角度, 实现在某一家医院进行过检验检查后, 即可在联网范围内的其它医院调阅到相关的影像图像和报告。从而避免病人在多家医院的重复检验检查, 降低医疗费用支出负担, 缓解“看病难、看病贵”矛盾。通过诊疗信息的交换共享, 方便就医者在某医院内以及联网医院范围跨医院的诊疗。

从临床医生角度, 实现对病人历史诊疗资料、医学影像检查资料的跨院调阅, 便于掌握病人病历和诊疗的整体情况, 为提高医疗服务的质量创造条件, 减少误诊或错诊的可能性。此外, 通过整体上把握病人的病史资料, 从而方便了对疑难病症实现专家会诊、实现对医学科学专题研究等提供有效信息和有利手段。

区域医疗信息交换共享在国内外受到了普遍关注, 国内各地纷纷出台了相应的建设项目和计划方案。国际上一些基于IHE解决方案的项目已经或者正在进行中, 从技术架构上理解这些项目对我国区域医疗信息共享交换有重要意义。

基于区域医疗共享的PACS用于将患者分布在各级医院中的诊疗信息、检验检查结果和医学影像进行基于国际IHE规范的共享交换和协同医疗。通过构造区域内部的医学影像信息交换平台, 以实现区域内医院的医学影像资源的共享与整合。此平台是卫生主管部门推动双向转诊和远程医疗的关键技术辅助手段, 可以有效地避免患者重复检查, 远程诊断咨询或者远程会诊, 远程教学和医学继续教育, 区域内部医学影像资源共享或者医院内部PACS系统的互联互通, 远程医学影像质量控制等。

该系统的研发和推广使用, 可以很大提高医院医疗技术水平, 实现高档设备, 优质医疗资源等信息共享和远程诊断等, 同时也会产生很大的社会效益和经济效益。

2 系统总体设计

根据影像图像和报告数据交换的特点及其功能需求, 影像数据中心系统架构设计遵循以下原则:

开放性。可与各医院异构PACS系统集成互联通信;可逐步将各级医院的影像纳入进行存储管理和应用。

标准化。遵循国际医疗影像信息共享技术架构框架文件IHE XDS–I;遵循医学影像通信标准D ICOM和其它相关医疗标准 (如HL7等) ;支持常用各类DICOM图像的共享交换和相应的通信传输语法。

可管理性。具有对所有共享影像进行中心注册管理功能;能对所有图像进行集中式存储备份。

安全性。在图像提交、传输和查询中提供数据私密性和完整性保护;符合DICOM有关数据通信安全性和使用可追踪性要求;系统具有容灾设计和快速灾难恢复能力。

根据以上原则, 通过研究集中分布系统架构具有的诸多优点, 完全适合区域共享的需求。采用集中分布系统架构能够:

(1) 集中与分布式相结合的架构, 合理利用了已有的医院资源, 同时又增加了数据的获取渠道, 平衡利用有限网络带宽资源;

(2) 影像数据中心系统的中心节点和医院节点自动互为备援数据在医院和中心异地备份;

(3) 在医院前置机正常工作的前提下, 整体架构将为分布式。

医院间共享数据尤其是医学影像的共享成为越来越迫切的需求。如图1所示, 显示了医学影像共享的一般需求:

影像仪器端传入各医院端PACS服务器中, 经过医院端前置服务器对影像进行数据匹配后, 定时通过DICOM通讯方式传到医学影像数据中心PACS应用服务器。中心端PACS应用服务器在收到影像资料的同时在数据库服务器中建立对应影像数据的索引, 在索引服务器中建立病人影像检查的索引。因此本共享系统主要分为中心PACS服务系统, 医院PACS系统, 和工作站系统。

(1) 区域PACS数据中心。建立一个影像数据中心, 连接区域内所有医院, 用于存储病人在就诊过程中所产生的所有文字信息和影像, 存储设备部署在中心医院。各医院生产的数据存储在本地, 同时, 为影像数据中心提供一个备份数据。

(2) 区域PACS信息共享与交换平台。建立一个区域PACS信息共享与交换平台, 采用Web方式发布到各个医院临床工作站, 可以与医院HIS或电子病历系统进行嵌入式集成, 方便医护人员使用。在该平台上, 医生可以完成会诊和转诊业务。同时, 也可以借助此平台实现患者在各医院之间的影像信息共享和调阅。

(3) 应用系统及接口。遵循IHE技术框架, 采用国际标准的HL7接口和DICOM接口与各相关系统进行通讯。区域PACS信息交换平台可支持多个接口组的方式, 每个接口组按照医院数据量的大小来确定连接一家或者多家医院, 避免由于数据量过大而对接口吞吐量造成影响。

建立影像业务患者个人唯一索引机制, 进而建立患者病案资料档案库。

(4) 共享流程

(1) 医院C工作站向数据中心搜索A医院PACS系统的病人数据;

(2) 中心服务器返回确认数据可用, 并返回数据列表;

(3) 医院C工作站根据列表直接请求A医院PACS系统取回病人的医学影像、报告等。

3 系统功能

3.1 中心PACS服务系统

中心PACS服务系统是区域共享系统的关键, 负责存储各医院PACS系统信息, 经过用户认证的医院工作站客户端可以通过WCF服务取得可访问的各医院PACS系统信息, 直接访问获取远程数据列表和DICOM影像。中心服务系统包括系统数据库信息管理、医院信息增删改管理、访问量统计、访问控制、用户认证、远程WCF获取访问量、WCF获取访问列表信息。中心PACS服务系统的层次方框图如图2所示。

3.2 医院PACS系统

医院PACS系统管理和存储了医院服务器的全局信息, 包括了设备管理、网关管理、工作站管理、用户管理、系统信息管理、DICOM上传请求监听、DICOM下载请求监听等。可以医院内部独立使用, 必要时与外部医院进行图像传输。

3.3 医生工作站系统

工作站系统是医生终端使用, 它提供了:DICOM影像获取模块, 主要有读取本地DICOM列表、读取远程DICOM列表、获取可访问医院列表、远程下载DICOM影像等功能;DICOM影像操作模块, 主要有图像旋转、图像放大、图像测量、图像灰度调节、图像亮度调节、放置各种标签等功能;诊断报告编写模块, 包括获取编写模板、保存报告到数据库等功能;工作站信息管理模块, 包括了各种模板管理 (如报告词条、报告标题、检查方法的管理) 、工作站系统配置 (如修改密码、数据库配置) 等功能。

3.4 主要功能模块

(1) 医院PACS信息管理模块

此模块是中心服务系统提供的进行各医院服务器信息的管理, 加入局域网共享的医院需要在这个中心服务器中登记, 增删改操作正确完整后点击保存按钮将一次性保存到数据库中, 并触发添加访问权限和记录访问量, 减少与数据库的交互。

(2) 医院访问控制模块

此模块主要实现各医院之间的访问控制, 通过设置访问权可以控制对其他医院是否可见, 从而实现访问控制。

(3) 设备管理模块

此模块是医院PACS系统提供对医院内各个相关网络设备的管理, 可以设置医院内网关、各科室影像上传设备、医生终端工作站等。

(4) DICOM请求侦听模块

DICOM请求侦听模块的设计使用DICOM标准中的SCP、SCU两个服务, 其中SCP是服务提供者, SCU是服务使用者。在模块设计中, 所要做的是在需要对远程图像进行获取的时候, 开启SCU服务, 查询远程服务端是否开启服务并进行验证, 验证成功后才发送接收图像的C-GET请求。而在需要将文件传输至远程客户端的时候, 则需要开启SCP服务来为远程客户端提供传输服务。接收的图像将存在本地指定目录中, 以方便医生的查看和诊断。

(5) DICOM列表获取模块

医生工作站可以获取本地DICOM影像列表, 和本医院可访问的其他医院的DICOM影像列表, 下载远程DICOM影像列表将调用中心服务器提供的WCF服务, 获取的可访问医院列表中包含了远程下载该医院DICOM影像列表的信息。

(6) DICOM远程下载模块

医生工作站可以通过SCP、SCU服务向医院PACS系统提供的DICOM图像进行远程接收。接收的图像将存在本地指定目录中, 以方便医生的查看和诊断。

(7) DICOM影像操作模块

此模块是医生工作端提供对图像处理以方便医生对图像进行更细致的查看和诊断, 其中包括了图像旋转、图像放大、图像锐化、测量长度、测量角度、调节灰度、放置各类标签, 以及设置显示窗口的数量。

(8) 诊断报告编辑模块

此模块是医生工作端提供医生对患者报告进行浏览、编写的功能。报告是医生对患者病情的描述, 是对患者诊断的重要依据。医生可以在允许的情况下下载患者在其他医院的诊断报告, 如果是在本医院的新检查, 可以编写对患者此次检查的报告, 以记录病情以及提供其他医院的医生查看。并且模块提供了各类报告编写模板, 增加医生工作效率, 医生也可以保存自己的模板。

4 结束语

笔者采用集中与分布式相结合的架构, 合理利用了已有的医院资源, 同时又增加了数据的获取渠道, 平衡利用有限网络带宽资源, 较好的解决了共享的问题, 在实际应用中取得了较好的效果。

参考文献

[1]石琳.以SOAP协议为基础的Web Service安全机制分析[J].科技致富向导, 2011, (30) .

[2]吕海燕, 李华伟, 车晓伟, 王丽娜.数据元注册方法研究与应用[J].电子设计工程, 2011, (19) .

[3]张冰波, 宋荣华.基于Web services的分布式信息检索机制的研究[J].软件导刊, 2011, (7) .

[4]罗爱静, 平静波.区域卫生信息化建设探讨[J].医学与哲学 (人文社会医学版) , 2011, (7) .

[5]伍枫, 胥悦雷.基于UDDI的服务注册中心的研究与优化[J].现代电子技术, 2011, (12) .

[6]李维, 陈祁.基于IHE PIX的MPI研究及其在医院的应用分析[J].医疗卫生装备, 2011, (6) .

[7]马文虎, 刘友华, 翟油华.基于IHE的医学影像信息系统集成研究与实现[J].信息技术与信息化, 2011, (2) .

[8]刘俊梅.医院信息系统的现状及其发展趋势[J].解放军护理杂志, 2011, (7) .

[9]宇文姝丽, 杨小平.电子病历存储模式研究[J].医学信息学杂志, 2011, (3) .

共享存储文件系统 篇8

随着电网建设的不断深入和推进,电网运行和设备检、监测产生的数据量呈指数级增长[1][2],数据类型从单一的结构化数据迅速向半结构化或者非结构化数据转变,对可靠性和实时性要求更高,远远超出传统电网状态监测的处理范畴。国内传统电力系统信息平台的建设大多采用价格昂贵的大型服务器,存储采用磁盘阵列,数据库采用关系数据库系统,业务应用采用紧密耦合的套装软件[3][4],导致系统扩展性较差、成本较高,难以适应新时代电网高要求高标准。因此电力行业进入了大数据时代,必须重新审视现有的存储技术[5]。

本文针对不同类型不同应用场景的数据,推出一套完整的存储策略来解决传统电力系统信息平台遇到的存储瓶颈。

2 电网大数据

要制定符合国网实际情况的存储应用策略,首先需要对公司各类数据进行调研和分析,理清各类数据的量级、数据重要程度、数据访问频率、数据访问的实时性、以及数据访问的带宽要求等,这是制定国网应用策略的基础。

2.1 电网大数据分类

根据电网数据内在结构,可以将其分为结构化数据及非结构化数据。结构化数据主要包括关系型数据库中的存储数据,然而随着科技进步和公司业务的发展,原有的结构化数据在全部数据量中所占的比例迅速降低。80%以上的新增数据都是视频流、图片、文档等半结构化或非结构化数据。因此本文的分析主要针对半结构非结构化数据,也兼顾结构化数据。

2.1.1 按数据的访问频率分类

不同类型的数据被访问频率和被处理热度是不一样的,可以分为冷数据和热数据。大量的冷数据并不需要很高的响应速度,若采用可扩展性更灵活的廉价存储方案,能够节省大量的设备投资成本。在分布式存储系统中,数据类型按照数据的使用热度,可以分为在线、近线、离线数据,对不同热度的数据采取不同的技术策略。

2.1.2 按数据的实时性分类

按照数据的实时性可以分为实时响应数据、准实时响应数据、非实时响应数据,实时响应数据一般定义要求响应时间小于1秒,准实时响应数据一般定义响应时间小于60秒,非实时响应数据一般定义为60秒以上。

2.1.3 按非结构化文件大小分类

按照非结构化文件可以分为小文件、中等文件、大文件,小文件一般定义为1M以内,中等文件一般为大于1M小于100M,大文件一般定义为100M以上,不同大小的文件采用的存储策略和技术不同。

2.1.4 按照数据量分类

按照数据量可以分为小规模数据、中等规模数据、海量数据,小规模数据一般定义为1TB以下,中等规模数据量一般定义为1TB以上,1PB以下,海量数据一般定义为1PB以上。对于海量数据通过使用廉价的设备,牺牲部分性能来获取更高的存储效率,降低存储投资。

2.2 电网大数据特点

电力企业的非结构化数据贯穿于发电、输电、变电、配电、用电和调度所有环节。几乎存在于企业的所有业务应用当中,不仅如此,公司非结构化数据还具有以下特点:

1)数据格式多样化。在业务应用过程中非结构化数据格式呈现出多样化方式.如Word、Excel、PPT、P DF、CEB、TXT、JPEG、压缩文件、Cad图纸等。

2)业务对象多样化。非结构化数据的业务对象包括凭证、公文、发票、报表、技术规范书、标书、设计图、可研估算书、批复文件、生产文档、结算文档、图纸策划等。

3)存储方式多样化。非结构化数据由各个业务应用自行管理,有结构化数据库、FTP、纸质材料等多种存储方式。

4)业务流程多样化。非结构化数据业务流程包括业务系统内流转、人工流转、打印、扫描、复印、上传、下载等。

5)安全课题多样化。目前,非结构化数据在电力企业的各个业务应用中已经实现了初步的安全管控,但对于非结构化数据在线安全、离线安全、数据容灾等方面还需加强和补充。

3 电网大数据数据存储策略

3.1 不同文件大小的存储策略

3.1.1 大文件存储策略

对于大文件的存储,采用目前主流、开源的HDFS系统,HDFS是目前应用最多的开源分布式文件系统[6,7,8,9]。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。它采用一次写入多次读取的文件模型,读取时采用流的方式批量读取(而非用户交互式读取)。HDFS采用主从架构,由唯一一个元数据节点(Name Node)和多个数据节点(Data Node)组成,HDFS的体系结构如图1所示。

1)数据块Blocks

HDFS默认的最基本的物理存储单位是64M数据块(可以进行配置),如果一个文件小于一个数据块的大小,它也不占用整个数据块的存储空间。

2)元数据节点Name Node

Name Node是集群的主节点,负责文件名的维护管理(包括文件和目录的创建、删除、重命名等),同时也管理数据块(Data Block)和数据节点(Data Node)的映射关系。

3)从元数据节点Secondary Name Node

Secondary Name Node周期性将Name Node的命名空间镜像文件和修改日志合并(合并过后的命名空间镜像文件也在从元数据节点保存了一份,以便备用),并上传到Name Node,便于Name Node恢复先前状态。

4)数据节点Data Node

Data Node是集群里的一台机器,负责数据的存储和读取。在写入时,由Name Node分配数据块的保存位置,客户端直接写到对应的Data Node。在读取时,客户端从Name Node获得文件与Data Block的映射关系后,到对应的数据节点读取数据。Data Node根据Na me Node的命令创建、删除、冗余复制Data Block。Dat a Node周期性的向namenode汇报其存储的数据块信息。

3.1.2 小文件存储策略

1)采用高端存储SAN或者NAS系统

网络附加存储(Network Attached Storage,简称NAS)即将存储设备通过标准的网络拓扑结构,连接到一群计算机上[10]。NAS是部件级的存储方法,它的重点在于帮助工作组和部门级机构解决迅速增加存储容量的需求。NAS产品包括存储器件(例如硬盘驱动器阵列、磁带驱动器或可移动的存储介质)和集成在一起的简易服务器,可用于实现涉及文件存取及管理的所有功能。简易服务器经优化设计,可以完成一系列简化的功能,例如文档存储及服务、电子邮件、互联网缓存等等。集成在NAS设备中的简易服务器可以将有关存储的功能与应用服务器执行的其他功能分隔开。

存储区域网络(Storage Area Network,简称SAN)采用光纤通道技术[11],通过光纤通道交换机连接存储阵列和服务器主机,建立专用于数据存储的区域网络。当前企业存储方案所遇到问题的两个根源是:数据与应用系统紧密结合所产生的结构性限制,以及小型计算机系统接口(SCSI)标准的限制。SAN正是专注于企业级存储的特有问题。SAN便于集成,能改善数据可用性及网络性能,而且还可以减轻管理作业。

NAS和SAN系统对于小文件的处理效率较高,但硬件成本较高。

2)采用Fast DFS文件系统

Fast DFS是一个开源的轻量级分布式文件系统[12,13]1[12,13]。它对小文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。

Fast DFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。存储节点存储文件,完成文件管理的所有功能:存储、同步和提供存取接口。

跟踪器和存储节点都可以由一台或多台服务器构成。跟踪器和存储节点中的服务器均可以随时增加或下线而不会影响线上服务。其中跟踪器中的所有服务器都是对等的,可以根据服务器的压力情况随时增加或减少。

为了支持大容量,存储节点(服务器)采用了分卷(或分组)的组织方式。存储系统由一个或多个卷组成,卷与卷之间的文件是相互独立的,所有卷的文件容量累加就是整个存储系统中的文件容量。一个卷可以由一台或多台存储服务器组成,一个卷下的存储服务器中的文件都是相同的,卷中的多台存储服务器起到了冗余备份和负载均衡的作用。

在卷中增加服务器时,同步已有的文件由系统自动完成,同步完成后,系统自动将新增服务器切换到线上提供服务。

当存储空间不足或即将耗尽时,可以动态添加卷。只需要增加一台或多台服务器,并将它们配置为一个新的卷,这样就扩大了存储系统的容量。

Fast DFS对小文件的存储效率较高,但由于其在存储文件时没有对文件进行分块处理,所以在大文件的处理上效率相对较低。

3)采用TFS文件系统

TFS(Taobao File System)是一个高可扩展、高可用、高性能的分布式文件系统[14],主要针对海量的非结构化数据,它构筑在普通的Linux机器集群上,可为外部提供高可靠和高并发的存储访问。它采用了HA架构和平滑扩容,保证了整个文件系统的可用性和扩展性。同时扁平化的数据组织结构,可将文件名映射到文件的物理地址,简化了文件的访问流程,一定程度上为TFS提供了良好的读写性能。

TFS系统的体系如图2所示。TFS的块大小一般为64M(可进行配置)。TFS的设计目标是海量小文件的存储,所以每个块中会存储许多不同的小文件。Data Ser ver进程会给Block中的每个文件分配一个ID,并将每个文件在Block中的信息存放在和Block对应的Ind ex文件中。这个Index文件一般都会全部load在内存,除非出现Data Server服务器内存和集群中所存放文件平均大小不匹配的情况。

在TFS中,将大量的小文件(实际用户文件)合并成为一个大文件,这个大文件称为块(Block)。TFS以Block的方式组织文件的存储。每一个Block在整个集群内拥有唯一的编号,这个编号是由Name Serve进行分配的,而Data Server上实际存储了该Block。在Name Server节点中存储了所有的Block的信息,一个Block存储于多个Data Server中以保证数据的冗余。对于数据读写请求,均先由Name Server选择合适的Data Server节点返回给客户端,再在对应的Data Server节点上进行数据操作。

4)采用相关合并技术赋予HDFS小文件支持能力

对于小文件问题,有两种解决方案:Hadoop Arch ive、Sequence File。

Hadoop Archive

将众多小文件打包成一个大文件进行存储,并且打包后原来的文件仍然可以通过Map Reduce进行操作,打包后的文件由索引和存储两大部分组成,索引部分记录了原有的目录结构和文件状态。其原理如图3所示。

Sequeues File

由一系列的二进制key/value组成,如果key为小文件名,value为文件内容,则可以将大批小文件合并成一个大文件。该方案对于小文件的存取都比较自由,不限制用户和文件的多少,支持Append追加写入,支持三级文档压缩(不压缩、文件级、块级别)。其存储结构如图4所示:

3.2 不同热度的非结构化数据存储策略

对于热数据,一般数据量不会太大,但由于并发访问高,为了提升数据的访问性能,考虑采用多副本机制,可使用两种策略。

3.2.1 热点数据存储高端存储

1)高端存储+RAID1(RAID5)

采用高端存储[15],并配合RAID1或者RAID5提升热数据访问效率。RAID1通过数据镜像实现数据冗余,在两对分离的磁盘上产生互为备份的数据。RAID1可以提高读的性能,当原始数据繁忙时,可直接从镜像中读取数据。RAID1是磁盘阵列中费用最高的,但提供了最高的数据可用率。当一个磁盘失效,系统可以自动地交换到镜像磁盘上,而不需要重组失效的数据。RAID5是一种存储性能、数据安全和存储成本兼顾的存储解决方案。RAID5可以理解为是RAID0和RAID1的折中方案。RAID5可以为系统提供数据安全保障,但保障程度要比Mirror低而磁盘空间利用率要比Mirror高。RAID5具有和RAID0相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作稍慢。同时由于多个数据对应一个奇偶校验信息,R AID5的磁盘空间利用率要比RAID1高,存储成本相对较低,是目前运用较多的一种解决方案。

2)分布式文件系统多副本机制

HDFS作为Hadoop中的一个分布式文件系统,而且是专门为它的Map Reduce设计,所以HDFS除了必须满足自己作为分布式文件系统的高可靠性外,还必须为Map Reduce提供高效的读写性能。首先,HDFS将每一个文件的数据进行分块存储,同时每一个数据块又保存有多个副本,这些数据块副本分布在不同的机器节点上,这种数据分块存储+副本的策略是HDFS保证可靠性和性能的关键,在这里,副本的存放策略又是HD FS实现高可靠性和搞性能的关键。

在大多数情况下,副本系数是3,HDFS的存放策略是将一个副本存放在本地机架节点上,一个副本存放在同一个机架的另一个节点上,最后一个副本放在不同机架的节点上。这种策略减少了机架间的数据传输,提高了写操作的效率。与此同时,因为数据块只存放在两个不同的机架上,所以此策略减少了读取数据时需要的网络传输总带宽。因为HDFS对文件的存储是分块来存储的,因此通过增加热点数据副本数据,可以有效提高热点数据的访问效率。

3.2.2 冷数据存储

通过分布式文件系统最少副本数,降低冷数据的存储成本。

3.3 数据不同访问延时存储策略

3.3.1 低延时数据存储策略

1)高端存储

以光纤为接口的存储网络SAN可提供多路4Gbps连接的高扩展性、高性能的网络存储机构,光纤交换机、光纤存储阵列同时提供高吞吐量和更大的服务器扩展空间。因此采用高端存储设备来解决低延时数据的存储问题。

2)采用盘古等分布式文件系统

在盘古系统中[16],文件系统的元数据存储在多个主服务器(Master)上,文件内容存储在大量的块服务器(C hunk Server)上。客户端程序在使用盘古系统时,首先从主服务器获取元数据信息(包括接下来与哪些块服务器交互),然后在块服务器上直接进行数据操作。由于元数据信息很小,大量的数据交互是客户端直接与块服务器进行的,因此盘古系统采用少量的主服务器来管理元数据,并使用Paxos协议保证元数据的一致性。此外,块大小被设置为64MB,进一步减少了元数据的大小,因此可以将元数据全部放到内存里,从而使得主服务器能够处理大量的并发请求。

3)优化开源的HDFS,满足低延时存储需求

HDFS不太适合于那些要求低延时(数十毫秒)访问的应用程序,因为HDFS是设计用于大吞吐量数据的,这是以一定延时为代价的[17]。HDFS是单Master的,所有的对文件的请求都要经过它,当请求多时,肯定会有延时。使用缓存或多master设计可以降低client的数据请求压力,以减少延时。

3.4 总体存储策略及演进路线

采用多种技术路线,构建面向不同文件大小、不同数据热度、不同访问延时的非结构化数据存储策略如下图所示:

前期

考虑到现有高端存储的利旧问题,及分布式文件系统在小文件存储和低延时数据访问等方面的问题,前期任保留高端存储,用于存放小文件、实时数据、在线数据、核心业务数据,将现有的大文件、非实时数据、离线业务数据、非核心业务数据逐步迁移至分布式存储上。同时,通过建立统一的数据管理平台,对外提供基于高端存储和分布式存储的统一界面。

中期

中期采用通过开源集成方式,采用不同的分布式存储产品(HDFS、Fast DFS),解决不同大小、不同延时要求、不同访问频率、不同重要程度的数据存储问题,同时通过自主研发方式,将现有的高端存储纳入到分布式存储的管理范围,最大程度上利用现有设备,减少投资。

后期

最后,通过采用统一的技术路线,选取一种开源的分布式文件系统(HDFS),通过自主研发和创新,解决HDFS在小文件存储、低延时访问等缺陷,使其满足各类业务数据的存储需求。

4 结束语

本文阐述了电网中大数据的数据特点、分类以及应用价值,重点分析了非结构化数据不同的存储策略,阐述了国网公司电网数据存储迁移的三大目标,逐步从昂贵的国外高端存储向开源的国产分布式文件系统转变,以满足新时代国网公司的新需要,响应国家去IOE政策,为我国电网大数据存储及处理提供参考。

摘要:随着科技的进步和时代的发展,电力行业得到长足的进步。伴随而来的是电网各个环节产生的数据量呈指数级增长,数据类型也从相对简单的结构化数据向非结构化数据转变。同时为响应国家去IOE政策和国网公司提出的集约型倡议,本文从数据的不同类型,不同的应用场景出发,对数据存储模式进行了详细的分析研究,推出了一套完整的数据存储和迁移方法 ,为国网大数据存储提供新的思路和模式。

共享存储文件系统 篇9

一般的嵌入式目标系统体积小,不可能象PC机那样带一个很大的磁盘存储器作为文件系统存储器。由于Flash存储器具有高可靠性、高密度、存取速度快、掉电可保存等特点,使之成为理想的嵌入式文件系统存储器。

嵌入式文件系统建立在实时系统内核之上,其设计不仅要求满足数据存储的各种要求,而且还要考虑其应用环境和存储器的物理特性。MS-DOS的FAT文件系统技术成熟、结构简单、系统资源开销小,嵌入式文件系统易于在设计上兼容FAT文件系统[1]。

2 可靠性

在MS-DOS的FAT文件系统中,仅仅对数据区域提供坏损管理,而对于它的主引导记录、文件分配表和根目录这三个极重要的文件系统数据结构却未做任何保护(虽然MS-DOS的FAT文件系统中存在着两张FAT表,但是DOS只是在更新FAT1时简单地复写FAT2表,但从不使用它)。一旦这三个区域的内容出现一点失效,将必然导致文件数据的大量损失。另外,如果这些数据结构的存储区域发生物理性损坏,更会导致整张磁盘的报废[2]。这在由Flash存储器占据很大成本比重的嵌入式应用中,是非常不希望的。

归结起来,嵌入式系统中的Flash存储器主要面临两大类不稳定因素:一是Flash存储器本身可能出现物理性的损坏;二是嵌入式系统面对较多的突发掉电与重启动,造成Flash存储器写操作的异常终止。

针对Flash存储器的物理损坏问题,对文件数据区域提供坏损块管理。在系统格式化时对坏块进行标记。

针对Flash存储器的写操作异常终止问题,将系统记录、文件分配表和根目录表这三个对Flash文件系统最重要的数据结构均进行双份的存储改善其安全性。在文件系统的操作中,程序对每一个表结构的两个备份进行顺次修改,以此确保Flash存储器上总是存有一整套完好的系统记录表、文件分配表和根目录表。在每块的首页空闲区保存了FAT表中该簇的簇值。在系统被启动运行时,文件系统初始化时,根据三个表在所在块的最后一页空闲区的写入成功标志和最后的更新时间确定每一张表备份的合法性和有效性,读取正确的记录。通过这样的设计,即使文件系统在使用中出现了写操作异常终止的情况,错误将只涉及当时被操作的文件数据,不会扩散给Flash文件系统中的其他文件,使损失降到了最低,更不会因此损坏三个文件系统表结构,造成整个文件系统的彻底瘫痪。

通过以上的改进,该Flash文件系统的可靠性比MS-DOS FAT文件系统有了很大的提高。

3 耗损平衡

JFFS文件系统中系统耗损平衡机制可以在不同的功能模块中采取不同的策略来控制[3]。下面分析耗损平衡机制在不同功能模块中的实现方法,研究它们的实现效率和系统代价。

(1)在垃圾收集模块中实现

(2)在块分配模块中实现

(3)使用专门的耗损平衡模块实现

上述三种策略可以在系统不同的模块中同时或分别实现,在耗损平衡的控制效果和实现耗损平衡的系统开销上有所不同。

通过上面三种实现闪存文件系统耗损平衡方法之间的比较,考虑到策略在嵌入式系统中实现的开销,考虑兼容FAT文件系统对系统记录、FAT表的频繁更新操作。对于系统记录、FAT表和根目录表采用交替更新来控制系统的耗损平衡;对于数据区在文件系统启动建立空闲块链表时,产生一个随机数,从该随机数开始的块开始搜索建立空闲块链表,如没有空闲块再从该存储器的第二块开始向后搜索空闲块,再根据空闲块的分配按先进先出策略来控制系统的耗损平衡。这样基本上保证了存储器各块的平均使用。

4 垃圾回收

FAT文件系统中没有垃圾收集机制,但由于FlashMeory的特点,为了提高文件系统性能加入了垃圾机制,优化文件系统的性能。考虑到嵌入式系统自身的特点,即系统中资源的有限性,在垃圾收集策略的实现上需要一定的可行性,尽量降低算法的复杂度,减小系统开销,且应该便于实现。故本文件系统垃圾收集算法如下:

将Flash盘中块分为三个队列,分别是干净块,空闲块和脏块队列。干净块队列是此块上的数据都有效。脏块是此块的数据己删除,需擦除变为空闲块。空闲块是指没有数据存储的可分配块,它们的状态可记录在FAT表中,当存储文件需要分配块时,如没有空闲块可分配,则启用垃圾收集机制进行脏块的擦除。或者当系统启动或空闲时,空闲块的数目少于设定的空闲块的数目n时,则启用垃圾收集机制进行脏块的擦除。其垃圾收集流程如图1所示。

5 性能优化

为了提高系统的性能,要采取以下策略:

(1)由于文件的写入速度与要擦除的块时间确定,同时还由要写入的数据量有关,故尽量减少写入的次数。

(2)文件删除时,对其目录项的第一个字节做删除标记,同时释放该文件所占用的簇链,并标记为脏块,当系统启动或空闲时启动垃圾收集进程进行脏块的收集。

(3)为加快给文件分配空闲块的速度在系统启动时就建立空闲块链表,按先进先出策略取得空闲块。

(4)为提高文件的查找速度,除根目录外将文件目录项所占用的簇在FAT表中标记为EOC,查找文件时只查找根目录和簇值为EOC的簇,提高了查找文件的速度。

(5)将FAT表以数组形式调入内存做为全局变量,利用数组的随机访问特性,大大提高了簇的寻址速度。

6 多任务支持

为了加载的文件系统跟内核很好地配合工作,在μcos-Ⅱ内核的0S_TCB中增加了文件控制块指针,该指针指向该任务打开的文件控制块链表。用户任务对文件进行读写操作时,系统必须维护当前被用户任务所打开的所有文件,用文件控制块来登记这些被打开的文件的相关信息。一个用户任务可能同时打开几个文件,对文件读写时要记录下文件的当前位置,以便在挂起后重新调度运行时能从这个位置继续进行。每个文件控制块记录了当前任务打开每个文件进行读写的当前位置。

7 实现与测试

(1)硬件环境

FFS的测试环境由宿主机和目标机组成。宿主机为一般PC机;目标机ARMSYS44BO-P嵌入式系统开发板,配有K9F5608型号的32M的NandFlash芯片。

(2)软件环境

目标操作系统:μcos-Ⅱ;宿主机操作系统:WINXP;开发调试编译工具:ARM Develop Suite V1.2。

(3)通信设置

PC机通过网络接口连接到开发板的网络接口,这样建立了主机与目标机的一条通信线路。这条线路主要用于程序下载。第二条线路是PC通过串口和目标板上的串口相连,用于程序下载,调试信息交互,主要用于目标系统的数据回显,我们在WINXP操作系统中启用一个监控串口的超级终端来接收并显示数据。

(4)系统测试

“测试”一般是指“为了发现程序中的错误而执行程序的过程”。但是在不同的开发阶段、对于不同的人员,测试的任务是不同的。

(5)功能测试

功能测试分为两部分,第一部分测试Flash驱动程序;第二部分测试文件系统核。通过功能测试和可靠性测试,验证了FFS文件系统有比较完整的文件系统功能,在数据的可靠性等方面能够满足设计初衷。

摘要:基于实时嵌入式操作系统μCOS-Ⅱ内核,采用类似DOS的FAT文件系统,实现了一种适用于NandFlash的嵌入式文件系统。该文件系统从可靠性、耗损平衡、垃圾回收及文件系统的优化几个方面进行设计。

关键词:flash存储器,嵌入式,文件系统

参考文献

[1]张长宏.一种基于NandFlash的嵌入式文件系统的设计.青海大学学报(自然科学版),2006;06.

[2]罗华春.基于Flash存储器的嵌入式文件管理器设计.交通与计算机,2005;01.

共享存储文件系统 篇10

随着计算机技术、网络技术和信息技术的发展, 网络越来越多地改变着现代人的生活。众多的网络用户迫切需要适合自身的、方便的、有效快捷的存储方式来满足工作中的各种数据共享和信息传输需求, 如网上办公和网上交流等要求用户将所需的文件存放在Interne上, 不受时间和空间的限制, 方便“携带”文件和与他人“共享”文件。尽管各大计算机硬件生产商都推出各种新产品来帮助人们解决各式各样携带文件的困扰, 但是携带一些移动存储设备却有诸如容量大小限制等自身的缺点。电子邮箱所提供的附件功能是最早的网络文件存储系统, 但电子邮箱的附件对文件的大小也有一定的限制。网络文件存储系统是计算机技术和网络应用迅速发展的一个必然趋势, 通过将用户的数据上传到虚拟空间, 用户登录到互联网, 在不同计算机之间实现文件的共享与信息传输[1,2,3]。因此, 研究和开发网络文件存储管理系统具有一定的现实意义。

1 网络文件存储管理系统分析与设计

1.1 系统功能需求分析

网络文件存储管理系统的工作原理与FTP, 电子邮件等基本相同[4,5], 在服务器硬盘上为每一个客户独立分配虚拟的数据存储空间, 要求用户通过客户端软件即浏览器进行访问, 登录系统后既可以将所需文件上传至文件夹, 也可以进行所需文件的下载, 还可以对文件及文件夹进行浏览、搜索、重命名、添加、删除等操作, 实现文件的共享管理, 保证数据的安全性。

因此, 本系统可分为用户管理、文件夹管理和文件管理三大模块。用户管理分为普通用户和管理员用户。普通用户具有注册、登录、密码管理、退出等功能;管理员用户具有普通用户管理、登录、退出等功能。文件夹管理主要是针对注册用户和管理员使用, 可以实现文件夹的查询、新建、重命名、移动、删除等操作。文件管理主要包括文件的上传、下载、重命名、删除等操作。

1.2 系统设计

1.2.1 功能模块设计

根据需求分析, 网络文件存储管理系统的功能模块主要包括用户模块、文件夹模块和文件模块三个部分。

(1) 用户模块。用户模块用于管理普通用户和管理员用户, 主要包括:注册、登录、密码找回、密码修改等, 具体功能结构如图1所示。

(2) 文件夹模块。文件夹模块用于管理文件, 主要包括新建文件夹、修改、移动、删除等, 具体功能结构如图2所示。

(3) 文件模块。文件模块用于文件的各种操作, 是网络文件存储管理系统的核心, 主要包括上传、下载、移动、修改、删除、查询、属性等, 具体功能结构如图3所示。

1.2.2 系统层次结构设计

根据功能模块设计, 网络文件存储管理系统分为三层, 第一层为前台管理层, 第二层为文件夹管理层, 第三层为文件管理层, 其层次结构如图4所示。

1.2.3 数据库设计

根据系统功能设计的要求及功能模块的划分, 网络文件存储管理系统使用数据库SQL Server 2005, 系统数据库名称为Web Disk DB[6,7,8,9], 数据库设计了用户表users、文件目录表Directory和文件属性表Url三个表。

(1) 用户表 (users) :表中id为自动编号存储用户id;name字段存储用户登录名;password字段存储登录密码;email字段存储用户邮箱;question字段存储提示问题;answer字段存储提示问题答案, 帮助用户找回密码使用。主键为id。表结构见表1。

(2) 文件目录表 (Directory) :表中Dir ID字段存储目录ID;Name字段存储文件或文件夹名称;Parent ID字段存储该文件或文件夹的父目录ID;Contain字段存储文件或文件夹的大小;File Count字段存储文件的数量;Dir Count字段存储文件夹的数量;Flag字段存储用于区分是文件还是文件夹的标识;Create Date字段存储文件或文件夹的创建时间。主键为Dir ID。表结构如表2所示。

(3) 文件属性表 (Url) :表中Url ID字段存储ID;Url字段存储文件的链接地址;Type字段存储文件的类型;Dir ID字段存储文件在文件目录表Directory中的Dir ID值;Create Date字段存储文件的创建时间。Url ID为主键, Dir ID为引用键。表结构见表3。

2 网络文件存储管理系统的具体实现

2.1 创建文件夹

创建文件夹由页面Add Folder.aspx实现, 页面上添加一个Dropdown List控件, 一个Text Box控件, 一个非空验证控件, 两个Button按钮, 其界面如图5所示。

Dropdown List控件显示的目录信息由函数Page_Load (objectsender, Event Args e) 调用函数Bind Directory Data () 实现。部分实现代码如下:

2.2 重命名文件夹

重命名文件夹由页面Edit Folder.aspx实现, 页面上添加一个Text Box控件, 一个非空验证控件, 两个Button按钮, 其界面如图6所示。页面Edit Folder.aspx初始化时, 首先从地址栏中获取参数n Dir ID的值, 然后显示重命名文件夹的名称。部分实现代码如下:

2.3 搜索文件

搜索文件由页面Search File.aspx实现, 页面上分别添加一个Grid View控件、一个Dropdown List控件、一个Text Box控件、一个非空验证控件、两个Button按钮, 其界面如图7所示。页面运行时, 首先要显示目录信息, 通过触发事件Search Btn_Click (object sender, Event Args e) , 调用函数Scarch Files (string s Name) 根据关键字s Name从数据库中搜索文件, 并使用File View控件显示搜索结果, 实现搜索文件功能。部分实现代码如下:

2.4 移动文件或文件夹

移动文件或文件夹由页面Show Disk.aspx实现, 其运行界面如图8所示。页面运行时, 首先获取需要移动的文件或文件夹, 然后获取移动到的文件夹的Dir ID值, 最后调用函数Move Directory (int n Dir ID, int n Parent ID) 实现文件或文件夹的移动。部分实现代码如下:

3 网络文件存储管理系统的测试及分析

为了发现程序和系统中可能存在的错误, 系统在每一部分具体实现的同时还进行了大量的测试。测试数据除采用正常数据外, 还包括各种异常数据和临界数据, 用它们来检验程序逻辑上的正确性。代码测试后, 还对系统进行程序功能测试和综合测试, 检测系统整体的功能实现。测试结果表明, 系统界面友好, 运行稳定, 操作简单, 其功能达到了设计要求, 满足网络文件存储管理的需要。

4 结语

本文利用B/S模式结构, 通过ASP.NET技术, 采用ASP.NET 2.0和C#开发语言, 以Microsoft Visual Studio2008作为集成开发环境, 结合SQL Server 2005数据库, 设计实现了一个相对完善的网络文件存储管理系统, 重点分析了该系统的设计思路与实现过程, 讨论了其关键技术及其主要实现方法, 实现了用户登录、文件夹管理以及文件管理等功能, 为网络文件管理提供了高效便捷的资源交换手段, 提高了资源利用率。但对服务器端文件存储的安全管理等尚需进一步研究。

摘要:随着网络技术的发展, 网络文件存储系统日益普及。为了实现网络资源共享, 提高资源利用率, 通过ASP.NET技术, 采用ASP.NET 2.0和C#开发语言, 以Microsoft Visual Studio 2008作为集成开发环境, 结合SQL Server 2005数据库软件, 设计实现了一个相对完善的网络文件存储管理系统。系统利用B/S模式结构, 实现了用户登录、文件夹管理以及文件管理等功能, 为网络文件管理提供了高效便捷的资源交换手段, 具有一定的实用价值。

关键词:网络文件存储,设计,实现,B/S模式结构

参考文献

[1]张源伟, 杨铭, 郭昊.基于PHP技术的网络文件管理系统设计[J].物联网技术, 2013, 3 (4) :79-80.

[2]杨世恩.基于B/S结构的网络文件管理系统设计[J].教育教学论坛, 2011, 5 (30) :113-114.

[3]张巨松.网络存储系统的设计与实现[D].武汉:华中科技大学, 2011.

[4]韩晓菊.基于.NET的网络文件下载系统的设计[J].科技视界, 2013, 3 (31) :85-85.

[5]张江露, 陈晓晖.基于ASP.NET 2.0文件存储服务系统的设计与实现[J].实验科学与技术, 2011, 9 (4) :31-34.

[6]杨扬, 贾君君, 李为卫.基于ASP.NET的网络文件管理系统开发应用研究[J].计算机科学, 2011 (z1) :222-224.

[7]童爱红.Visual C#.NET应用教程[M].2版.北京:北京交通大学出版社, 2011.

[8]王小科, 赵会东.ASP.NET程序开发范例宝典[M].3版.北京:人民邮电出版社, 2012.

上一篇:增强视觉效果下一篇:交通监管系统