智能计算平台应用开发(初级)-数据存储-分布式文件系统_第1页
智能计算平台应用开发(初级)-数据存储-分布式文件系统_第2页
智能计算平台应用开发(初级)-数据存储-分布式文件系统_第3页
智能计算平台应用开发(初级)-数据存储-分布式文件系统_第4页
智能计算平台应用开发(初级)-数据存储-分布式文件系统_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章数据存储分布式文件系统云存储配置数据库数据库可视化工具文件系统简介文件文件是文件系统用来管理存储空间的数据以某种特定的组织方式构成的数据集合。元数据(Metadata)是保存文件属性的数据,如文件名、文件长度、文件所属用户组和文件存储位置等。文件系统简介文件系统一种存储和组织计算机数据的方法,能使访问和查找变得容易。传统文件系统基于数据存储块进行操作,数据块(Block)是存储文件的最小单元。数据块对存储介质划分了固定的区域,使用时按这些区域分配使用。用于管理和组织保存在磁盘驱动器上的数据的系统软件,是操作系统的重要构成部分。文件系统简介文件系统将文件组织成树结构的形式进行管理,通过抽象化自身管理的存储资源对外提供统一的访问接口,并对用户屏蔽具体的实现细节。文件系统按照底层数据存储结构和管理范围的不同的划分本地文件系统(LocalFileSystem)分布式文件系统(DistributedFileSystem)分布式与文件系统——分布式分布式移动互联网在迅猛发展,移动端的网络应用每天产生海量的文本、图片、音视频等小容量文件,传统的文件存储方式已经不能满足当前系统对于存储空间和访问效率的要求。分布式指的是文件、数据被切块分散存储到不同存储节点的每一块硬盘上。当前的分布式文件存储系统大多对文件进行分片存储,并会对文件元数据进行集中管理,这种存储方式可以对大文件实现高效存储,但是用于小文件存储时,会存在元数据服务器容量受限、访问效率低下和存储资源利用率不高等问题。分布式与文件系统——分布式文件系统的概念常见的分布式文件系统一般基于客户端与服务端(C/S)模式进行设计包括多个供用户访问的服务器和供用户调用的客户端服务器之间的对等特性允许一些服务器扮演客户端和服务端的双重角色。分布式文件系统(DistributedFileSystem)指文件系统管理的物理存储资源通过计算机网络互连的服务器集群,而不一定直接连接在本地节点上,服务器之间可以相互通信与协调,从而构成一个可以共享存储空间的大规模系统。分布式与文件系统——分布式文件系统的基本架构基本架构尽管分布式文件系统的种类很多,但分布式文件系统一般都会采用M/S架构。分布式文件系统一般由控制服务器、存储服务器和客户端3个部分构成。控制服务器主要负责整个分布式文件系统的管理、调度和控制等。存储服务器通常有多台;用于数据的存储与备份。客户端是用户使用的一端;用户通过客户端对分布式文件系统内的数据进行存储和访问。分布式与文件系统——分布式文件系统的基本架构分布式文件系统在吞吐量、I/O性能方面具有较强的优势,并且有良好的扩展性。分布式文件系统将多个存储服务器的存储资源进行统一管理和整合,组织成一个整体,统一对外提供聚合的存储容量和I/O带宽。分布式文件系统利用控制服务器定位数据所在的存储节点,然后将数据存储节点的地址返回给客户端,提高了系统的整体可用性、可靠性和扩展性。分布式与文件系统——分布式文件系统的基本架构市场普及率最高的、典型的数据密集型分布式应用——搜索引擎搜索引擎系统性能若仅仅依赖本地文件系统的基本功能,是远远无法满足海量用户的访问需求的因此,为提高响应速度,搜索引擎均采用分布式文件系统进行数据存储。分布式与文件系统——分布式文件系统分布式应用的快速推广与普及对分布式文件系统的发展方向起到重要影响,不同类型的分布式应用的特征各异,导致分布式应用分布式文件系统的性能需求不同。当前分布式文件系统大部分是针对特定的应用类型进行设计。例如,常见的分布式文件系统分布式文件系统说明GFS均是针对搜索引擎的应用需求进行设计的分布式文件系统;GFS和HDFS针对大量MapReduce分布式计算的使用场景,对大文件存储做了专门优化。HDFS(Apache开发的开源分布式文件系统)FastDFS为满足海量图片的高效存储需求进行设计,适合存储小文件。常见的分布式文件系统——GFS的简介GFS是由Google公司进行设计开发的高性能分布式文件存储系统,用于满足Google迅速增长的数据存储和处理需求,由许多廉价易损的普通组件组成,具有较好的容错性和可扩展性。Google根据公司的实际应用场景及业务需求,对传统的分布式文件系统的设计思想进行针对性的改进。在GFS中,组件失效是一种常态,需要迅速地侦测、冗余并恢复那些失效的组件。GFS针对大文件存储进行设计,保证多用户并发操作时数据追加的原子性。常见的分布式文件系统——GFS的系统架构GFS集群由3个角色构成。控制节点(Master);数据块节点(ChunkServer);客户端(Client)。常见的分布式文件系统——GFS的系统架构控制节点负责存储管理文件元数据以及协调系统整体活动。数据块节点用于存储并维护文件分割之后产生的数据块(Chunk);支持客户端读写文件数据。客户端向控制节点请求元数据;根据元数据的信息访问对应数据块节点上的文件数据。常见的分布式文件系统——GFS的系统架构每个数据块的大小是固定的,一般为64MB。每个数据块有一个全局唯一、不变的64位ID标识,称为chunk-handle,chunk-handle是在数据块创建时由控制节点分配的。每个数据块以普通Linux文件的形式存储在数据块服务器上。GFS中会存储数据块的多个副本,副本数默认为3,但可以通过修改配置文件进行设置。GFS将文件分割成的若干数据块(Chunk)常见的分布式文件系统——GFS的系统架构元数据包括命名空间、文件、Block的映射关系(文件包括哪些Block)和每个Block副本的存放位置等信息,还需加入额外的描述信息,用来校验。控制节点负责系统整体的管理与协调工作,如租约管理、孤儿块的垃圾收集和数据块服务器之间的块转移。控制节点以心跳的方式与系统内的每一个数据块服务器进行通信,发送指令并获取状态信息。控制节点:存储并维护GFS系统中的所有元数据常见的分布式文件系统——GFS的系统架构用户通过客户端与控制节点、数据块服务器进行交互。客户端与控制节点之间仅是进行元数据的访问操作。客户端与数据块服务器之间进行文件块的读写。客户端常见的分布式文件系统——GFS的系统架构客户端与控制节点、数据块服务器的交互过程在客户端与数据块服务器之间的交互过程中才有数据信息。当用户应用程序需要读取某个特定文件的数据时,因为数据块是定长的,所以客户端可以计算出这段数据跨越了几个数据块。客户端将文件名和需要的数据块索引发送给控制节点,控制节点根据文件名查找命名空间和文件与Chunk的映射表,得到数据块副本的存储位置,然后将数据块的chunk-handle和所有副本的存储位置返回给客户端。客户端根据一定的选择策略选取一个副本,然后与副本所在的数据块服务器建立连接,索取所需要的数据,数据块服务器将文件数据发送给客户端。常见的分布式文件系统——HDFS的简介HDFS是Apache软件基金会根据GFS的论文概念模型设计实现的开源分布式文件系统,用于作为Hadoop的存储系统。HDFS作为GFS的一个最重要的实现,与GFS的设计目标高度一致。常见的分布式文件系统——HDFS的系统架构HDFS系统架构整体由NameNode节点、DataNode节点和客户端3个角色构成。常见的分布式文件系统——HDFS的系统架构NameNode中心服务器;NameNode节点保存分布式系统中与DataNode节点相关的信息;负责管理文件系统的NameSpace和客户端对文件的访问。主要包括:DataNode节点的位置信息DataNode节点k的数据信息各副本的位置信息常见的分布式文件系统——HDFS的系统架构DataNode用于保存系统中的文件数据;每个DataNode节点将存储空间分割为大小为64MB的数据块(Block),文件数据就存储在这些数据块中;DataNode与数据块之间的对应信息,以元数据的形式保存在NameNode上。HDFS采用一定的副本策略,将多个副本分配至不同的DataNode节点,而NameNode节点中保存了这些映射信息,使HDFS更具可靠性。常见的分布式文件系统——HDFS的系统架构应用程序通过客户端将要访问的数据块信息发送到NameNode节点NameNode节点通过查询相应的元数据信息,获取数据块和DataNode之间的对应关系查找到具体存储数据块的DataNode节点,将DataNode信息发送至客户端。客户端接收到NameNode节点发送的信息,访问对应的DataNode节点,从而对元数据进行读写操作。客户端是应用程序访问元数据的代理。过程常见的分布式文件系统——FastDFS的简介FastDFS是一款轻量级、开源的分布式文件存储系统,由前淘宝架构师余庆开发。FastDFS专门针对互联网应用进行设计,主要用于存储海量小文件。FastDFS主要功能文件存储文件删除文件上传下载…FastDFS应用场景图片网站视频网站…常见的分布式文件系统——FastDFS的系统架构FastDFS包含3个角色。客户端(Client);跟踪服务器(Tracker);存储服务器(StorageServer)。常见的分布式文件系统——FastDFS的系统架构FastDFS支持动态扩容Tracker和StorageServer都至少包含一台服务器。在系统运行过程中服务器可以随时加入Tracker或StorageServer所在的集群,而不影响系统中其他原有服务器的正常运行。常见的分布式文件系统——FastDFS的系统架构在FastDFS中,存储服务器被划分为多个分组(Group)不同分组中存储的文件相互独立,所有分组一起对外提供完整的文件存取服务。每个分组由一台或多台存储服务器构成,同一分组中的存储服务器之间为对等关系,存储的文件是相同的,它们互为冗余备份并可以分担负载。当有新的存储服务器加入分组时,分组中原有的存储服务器会将已经存在的文件同步至新加入的服务器,同步完成后系统会将该服务器的状态改为在线,此时新加入的服务器便可对外提供存储服务了。常见的分布式文件系统——FastDFS的系统架构FastDFS系统容量FastDFS系统的整体容量等于各分组容量之和。由于分组中的各个存储服务器互为全冗余,因此单个分组的容量等于该分组中存储空间最小的那台存储服务器的容量。在FastDFS中,当系统存储容量不足时,可以通过增加分组的方式进行横向扩容。常见的分布式文件系统——FastDFS的系统架构文件上传过程常见的分布式文件系统——FastDFS的系统架构文件上传过程客户端将上传请求发送至TrackerTracker选取可用的存储服务器Tracker将相应信息返回给客户端客户端收到信息后直接与相应的存储服务器建立连接,进行文件上传上传完成后存储服务器会生成一个文件标识符并返回给客户端Tracker通过查询各StorageServer的状态信息并根据一定的负载均衡策略选取可用的存储服务器。之后执行下载操作时需要使

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论