这里又单独说一下对象存储,主要借鉴百度百科,对对象存储有了一点认识

首先,

对象存储系统(Object-Based Storage System)是综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了高可靠性、跨平台性以及安全的数据共享的存储体系结构。

传统块存储与对象存储结构对比示意图:

对象存储主要由对象(object),对象设,备(Object-based Storage Device),文件系统组成。

(1)对象:包含了文件数据以及相关的属性信息,可以进行自我管理

对象存储的基本单元。每个Object是数据和数据属性集的综合体。数据属性可以根据应用的需求进行设置,包括数据分布、服务质量等。在传统的存储中,块设备要记录每个存储数据块在设备上的位置。Object维护自己的属性,从而简化了存储系统的管理任务,增加了灵活性。Object的大小可以不同,可以包含整个数据结构,如文件、数据库表项等。

(2)对象设备:一个智能设备,是Object的集合

每个OSD都是一个智能设备,具有自己的存储介质、处理器、内存以及网络系统等,负责管理本地的Object,是对象存储系统的核心。OSD同块设备的不同不在于存储介质,而在于两者提供的访问接口。主要提供数据存储和安全访问。OSD使用Object对所保存的数据进行管理。它将数据存放到磁盘的磁道和扇区, 将若干磁道和扇区组合起来构成Object,并且通过此Object向外界提供对数据的访问。每Object同传统的文件相似,使用同文件类似的访问接 口,包括Open、Read、Write等。但是两者并不相同,每个Object可能包括若干个文件,也可能是某个文件的一部分,且是独立于操作系统的。 除了具体的用户数据外,OSD还记录了每个Object的属性信息,主要是物理视图信息。将这些信息放到OSD上大大减轻了元数据服务器的负担,增强了 整个存储系统的并行访问性能和可扩展性。(因为可以直接和客户端进行数据传输了。)

(3)文件系统:文件系统运行在客户端上,将应用程序的文件系统请求传输到MDS和OSD上,元数据服务器(Metadata Server,MDS)。系统提供元数据、Cache一致性等服务文件系统对用户的文件操作进行解释,并在元数据服务器和OSD间通信完成所请求的操作。现有的应用对数据的访问大部分都是通过POSIX文件方式进行的,对象存储系统提供给用户的也是标准的POSIX文件访问接口。同时,文件系统必须维护不同客户端上Cache的一致性,保证文件系统的数据一致。

文件系统访问过程:

              (1)客户端应用发出读请求;
              (2)文件系统向元数据服务器发送请求,获取要读取的数据所在的OSD;
              (3)然后直接向每个OSD发送数据读取请求;
              (4)OSD得到请求以后,判断要读取的Object,并根据此Object要求的认证方式,对客户端进行认证,如果此客户端得到授权,则将Object的数据返回给客户端;
              (5)文件系统收到OSD返回的数据以后,读操作完成。
 

(4)元数据服务器 (Metadata Server)

为客户端提供元数据,主要是文件的逻辑视图,包括文件与目录的组织关系、每个文件所对应的OSD等。在传统的文件系统中,元数据由本机或者文件服务器负责维护,每次对数据块的操作都要获取元数据。在对象存储系统中,由于每次操作只有一次对元数据的访问,具体的数据传输都由OSD和客户端通过直接连接进行,大大减少了元数据的操作,降低了元数据服务器的负担,从而为系统的扩展提供了可能性。
特点:
       (1)客户端采用Cache来缓存数据
       (2)当多个客户端同时访问某些数据时,MDS提供分布的锁机制来确保Cache的一致性。
       (3)为客户端提供认证
       (4)为了增强系统的安全性,MDS为客户端提供认证方式。OSD将依据MDS的认证来决定是否为客户端提供服务。
(5)网络连接
为客户端提供认证,为了增强系统的安全性,MDS为客户端提供认证方式。OSD将依据MDS的认证来决定是否为客户端提供服务。网络连接是对象存储系统的重要组成部分。它将客户端、MDS和OSD连接起来,构成了一个完整的系统。
 posted on 2014-10-14 14:29  zmlctt  阅读(639)  评论(0编辑  收藏  举报