对象存储技术-信息存储理论与技术-教学课件.ppt
对象存储技术对象存储技术网络存储需要解决的主要问题网络存储需要解决的主要问题随着网络技术的发展,网络化存储逐渐成为主流随着网络技术的发展,网络化存储逐渐成为主流技术。其需要解决的主要问题如下:技术。其需要解决的主要问题如下:提供高性能存储,在提供高性能存储,在I/OI/O级和数据吞吐率方面能满足成级和数据吞吐率方面能满足成百上千台集群服务器访问请求;百上千台集群服务器访问请求;提供安全的共享数据访问,便于集群应用程序的编写提供安全的共享数据访问,便于集群应用程序的编写和存储的负载均衡;和存储的负载均衡;提供强大的容错能力,确保存储系统的高可用性。提供强大的容错能力,确保存储系统的高可用性。主流网络存储结构的问题主流网络存储结构的问题存储区域网(存储区域网(SAN):):高性能高性能容错性容错性安全共享?安全共享?附网存储(附网存储(NAS):):扩展性扩展性共享共享性能?性能?Why Object Storage?Storage technology has progressed to the point that a change in the device interface is neededIntelligent,self-managed,aware of the storage applications they serve.Object:the convergence of two technologies:files and blocks对象存储结构对象存储结构 传统块存储与对象存储分层文件系统和平面地址空间的对比分层文件系统和平面地址空间的对比对象存储结构对象存储结构1.对象对象(Object)对象存储的基本单元。每个Object是数据和数据属性集的综合体。数据属性可以根据应用的需求进行设置,包括数据分布、服务质量等。在传统的存储中,块设备要记录每个存储数据块在设备上的位置。Object维护自己的属性,从而简化了存储系统的管理任务,增加了灵活性。Object的大小可以不同,可以包含整个数据结构,如文件、数据库表项等。10对象分类对象分类OSD的主要功能数据存储和安全访问数据存储和安全访问 OSDOSD使用使用ObjectObject对所保存的数据进行管理。它将数据存对所保存的数据进行管理。它将数据存放到磁盘的磁道和扇区,将若干磁道和扇区组合起来放到磁盘的磁道和扇区,将若干磁道和扇区组合起来构成构成ObjectObject,并且通过此,并且通过此ObjectObject向外界提供对数据的向外界提供对数据的访问。每个访问。每个ObjectObject同传统的文件相似,使用同文件类同传统的文件相似,使用同文件类似的访问接口,包括似的访问接口,包括OpenOpen、ReadRead、WriteWrite等。但是两者等。但是两者并不相同,每个并不相同,每个ObjectObject可能包括若干个文件,也可能可能包括若干个文件,也可能是某个文件的一部分,且是独立于操作系统的。除了是某个文件的一部分,且是独立于操作系统的。除了具体的用户数据外,具体的用户数据外,OSDOSD还记录了每个还记录了每个ObjectObject的属性信的属性信息,主要是物理视图信息。将这些信息放到息,主要是物理视图信息。将这些信息放到OSDOSD上,大上,大大减轻了元数据服务器的负担,增强了整个存储系统大减轻了元数据服务器的负担,增强了整个存储系统的并行访问性能和可扩展性。的并行访问性能和可扩展性。3、文件系统 文件系统对用户的文件操作进行解释,并在元数文件系统对用户的文件操作进行解释,并在元数据服务器和据服务器和OSD间通信,完成所请求的操作。间通信,完成所请求的操作。现有的应用对数据的访问大部分都是通过现有的应用对数据的访问大部分都是通过POSIXPOSIX文文件方式进行的,对象存储系统提供给用户的也是标准件方式进行的,对象存储系统提供给用户的也是标准的的POSIXPOSIX文件访问接口。文件访问接口。接口具有和通用文件系统相同的访问方式,同时为接口具有和通用文件系统相同的访问方式,同时为了提高性能,也具有对数据的了提高性能,也具有对数据的CacheCache功能和文件的条带功能和文件的条带功能。功能。同时,文件系统必须维护不同客户端上同时,文件系统必须维护不同客户端上CacheCache的一的一致性,保证文件系统的数据一致致性,保证文件系统的数据一致 15文件系统读访问实例:文件系统读访问实例:客户端应用发出读请求客户端应用发出读请求;文件系统向元数据服务器发送请求,获取要读取文件系统向元数据服务器发送请求,获取要读取的数据所在的的数据所在的OSD;然后直接向每个然后直接向每个OSD发送数据读取请求;发送数据读取请求;OSD得到请求以后,判断要读取的得到请求以后,判断要读取的Object,并,并根据此根据此Object要求的认证方式,对客户端进行认要求的认证方式,对客户端进行认证,如果此客户端得到授权,则将证,如果此客户端得到授权,则将Object的数据的数据返回给客户端;返回给客户端;文件系统收到文件系统收到OSD返回的数据以后,读操作完返回的数据以后,读操作完成。成。4.元数据服务器元数据服务器(Metadata Server)在传统的文件系统中,元数据由本机或者文件服务器负责维护,每次对数据块的操作都要获取元数据。在对象存储系统中,由于每次操作只有一次对元在对象存储系统中,由于每次操作只有一次对元数据的访问,具体的数据传输都由数据的访问,具体的数据传输都由OSD和客户端和客户端通过直接连接进行,大大减少了元数据的操作,通过直接连接进行,大大减少了元数据的操作,降低了元数据服务器的负担,从而为系统的扩展降低了元数据服务器的负担,从而为系统的扩展提供了可能性。提供了可能性。4.元数据服务器元数据服务器(Metadata Server)特点特点客户端采用客户端采用Cache来缓存数据来缓存数据 当多个客户端同时访问某些数据时,当多个客户端同时访问某些数据时,MDSMDS提供分布的提供分布的锁机制来确保锁机制来确保CacheCache的一致性。的一致性。为客户端提供认证为客户端提供认证为了增强系统的安全性,MDS为客户端提供认证方式。OSD将依据MDS的认证来决定是否为客户端提供服务。5.网络连接网络连接 网络连接是对象存储系统的重要组成部网络连接是对象存储系统的重要组成部分。它将客户端、分。它将客户端、MDS和和OSD连接起来,连接起来,构成了一个完整的系统构成了一个完整的系统。对象存储与传统存储的对比对象存储与传统存储的对比存储接口存储接口存储系统存储系统优点优点缺点缺点块块级级存存储储块块块存储设备块存储设备如如:SAN,:SAN,提供高性提供高性能的随机能的随机I/OI/O和数据和数据吞吐率吞吐率可扩展性和可管理性较可扩展性和可管理性较差、价格较高、不能满差、价格较高、不能满足成千上万足成千上万CPU CPU 规模的规模的系统系统文文件件储储存存文件文件块存储设备块存储设备文件系统文件系统如如:NAS,:NAS,扩展性好、扩展性好、易于管理、价格便宜易于管理、价格便宜开销高、带宽低、延迟开销高、带宽低、延迟大大,不利于高性能集群中不利于高性能集群中应用应用对对象象存存储储对象对象块存储设备块存储设备文件系统文件系统定位逻辑定位逻辑应用程序应用程序支持高并行性、可伸支持高并行性、可伸缩的数据访问缩的数据访问,管理管理性好、安全性高、适性好、安全性高、适合高性能集群使用合高性能集群使用处于发展阶段处于发展阶段,相应的硬相应的硬件、软件支持有待进一件、软件支持有待进一步完善步完善对象存储的特性(总结)对象存储的特性(总结)性能优势性能优势 存储设备的智能化存储设备的智能化 数据的共享更容易数据的共享更容易管理更方便管理更方便 更好的安全性更好的安全性 Lustre Retrospective1999 Initial ideas CMUSeagate:management aspects,prototypesMuch survives today2000 National LabsCan Lustre be next generation FS?100 GB/sec,trillion files,10,000s clients,secure,PBs2002 2003Many partners:Dell,HP,Cray,LNXI,DDN othersProduction use,1.0 releasedLustre SystemsClients1000s now,10,000s futureObtain access to Lustre Typical role:Linux compute serverOSS100s now,1000s futureObject storage serversLinux servers handling(stripes of)MDS10s,100s nodesMetadata request transaction engine.Linux server handling metadata requestsUnified StorageThe storage controller provides block-level access to application servers.It contains iSCSI,FC,and FCoE front-end ports for direct block access.The storage controller is also responsible for managing the back-end storage pool in the storage system.The controller configures LUNs and presents them to application servers,NAS heads,and OSD nodes.A is configured on these LUNs and is made available to applications for storing data.EMC Atmos29Read Request Workflow