×

分布式系统主要包括哪些系统

分布式系统主要包括哪些系统(当前主流分布式文件系统有哪些)

admin admin 发表于2023-05-13 18:52:20 浏览36 评论0

抢沙发发表评论

本文目录

当前主流分布式文件系统有哪些


目前几个主流的分布式文件系统除GPFS外,还有PVFS、Lustre、PanFS、GoogleFS等。
1.PVFS(Parallel Virtual File System)项目是Clemson大学为了运行Linux集群而创建的一个开源项目,目前PVFS还存在以下不足:
1)单一管理节点:只有一个管理节点来管理元数据,当集群系统达到一定的规模之后,管理节点将可能出现过度繁忙的情况,这时管理节点将成为系统瓶颈;
2)对数据的存储缺乏容错机制:当某一I/O节点无法工作时,数据将出现不可用的情况;
3)静态配置:对PVFS的配置只能在启动前进行,一旦系统运行则不可再更改原先的配置。
2.Lustre文件系统是一个基于对象存储的分布式文件系统,此项目于1999年在Carnegie Mellon University启动,Lustre也是一个开源项目。它只有两个元数据管理节点,同PVFS类似,当系统达到一定的规模之后,管理节点会成为Lustre系统中的瓶颈。
3.PanFS(Panasas File System)是Panasas公司用于管理自己的集群存储系统的分布式文件系统。
4.GoogleFS(Google File System)是Google公司为了满足公司内部的数据处理需要而设计的一套分布式文件系统。
5.相对其它的文件系统,GPFS的主要优点有以下三点:
1)使用分布式锁管理和大数据块策略支持更大规模的集群系统,文件系统的令牌管理器为块、inode、属性和目录项建立细粒度的锁,第一个获得锁的客户将负责维护相应共享对象的一致性管理,这减少了元数据服务器的负担;
2)拥有多个元数据服务器,元数据也是分布式,使得元数据的管理不再是系统瓶颈;
3)令牌管理以字节作为锁的最小单位,也就是说除非两个请求访问的是同一文件的同一字节数据,对于数据的访问请求永远不会冲突.

分布式文件系统有哪些主要的类别


1、单机文件系统
用于操作系统和应用程序的本地存储。
2、网络文件系统(简称:NAS)
基于现有以太网架构,实现不同服务器之间传统文件系统数据共享。
3、集群文件系统
在共享存储基础上,通过集群锁,实现不同服务器能够共用一个传统文件系统。

4、分布式文件系统
在传统文件系统上,通过额外模块实现数据跨服务器分布,并且自身集成raid保护功能,可以保证多台服务器同时访问、修改同一个文件系统。性能优越,扩展性很好,成本低廉。

分布式操作系统有哪些


【分布式操作系统】
一组相互连接并能交换信息的计算机形成了一个网络。这些计算机之间可以相互通信,任何一台计算机上的用户可以共享网络上其它计算机的资源。但是,计算机网络并不是一个一体化的系统,它没有标准的、统一的接口。网上各站点的计算机有各自的系统调用命令、数据格式等。若一台计算机上的用户希望使用网上另一台计算机的资源,他必须指明是哪个站点上的哪一台计算机,并以该计算机上的命令、数据格式来请求才能实现资源共享。为完成一个共同的计算任务,分布在不同主机上的各合作进程的同步协作也难以自动实现。因此,计算机网络存在的问题之一,是在网络上的不同类型计算机中,用某一种计算机所编写的程序如何在另一类计算机上运行。存在的另一个问题,是如何在具有不同数据格式、不同字符编码的计算机系统之间实现数据共享。另外,还需要解决分布在不同主机上的多个进程如何自动实现紧密合作的问题。
大量的实际应用要求一个完整的一体化的系统,而且又具有分布处理能力。如在分布事务处理、分布数据处理、办公自动化系统等实际应用中,用户希望以统一的界面、标准的接口使用系统的各种资源,实现所需要的各种操作。这就导致了分布式系统的出现。一个分布式系统有若干台独立的计算机构成,整个系统给用户的印象就像一台计算机。实际上,系统中的每台计算机都有自己的处理器、存储器和外部设备,它们既可独立工作(自治性),亦可合作。在这个系统中各机器可以并行操作且有多个控制中心,即具有并行处理和分布式控制的功能。分布式系统是一个一体化的系统,在整个系统中要有一个全局的操作系统,它负责全系统(包括每台计算机)的资源分配和调度、任务划分、信息传输、控制协调等工作,并为用户提供一个统一的界面、标准的接口。于是,分布式操作系统便诞生了。有了分布式操作系统,用户通过统一界面实现所需操作和使用系统资源,至于操作是在哪个计算机上执行的或使用的是哪个计算机的资源则是系统的事,用户是无须了解,也就是说系统对用户是透明的。
计算机网络是分布式系统的物理基础,因为计算机之间的通信是经由通信链路的消息交换完成的。它和常规网络一样具有模块性、并行性、自治性和通信性等特点。但是,它比常规网络又有进一步的发展。例如,常规网络中的并行性仅仅意味着独立性,而分布式系统中的并行性还意味着合作。原因在于,分布式系统已不再是一个物理上的松散耦合系统,而是一个逻辑上的紧密耦合的系统。
分布式系统和计算机网络的区别在于前者具有多机合作和健壮性。多机合作表现在自动的任务分配和协调,而健壮性表现在,当系统中有一个甚至几个计算机或通路发生故障时,其余部分可自动重构成为一个新的系统,该系统仍可以工作,甚至可以继续其失效部分的全部工作。当故障排除后,系统自动恢复到重构前的状态。这种自动恢复功能就体现了系统的健壮性。研制分布式系统的根本出发点和目的就是因为它具有多机合作和健壮性。正是由于多机合作,系统才具有响应时间短、吞吐量大、以及可用性好和可靠性高等特点。分布式系统是具有强大生命力的新生事物,是当前正在进行深入研究的热点之一。

linux 分布式系统都有哪些


常见的分布式文件系统有,GFS、HDFS、Lustre 、Ceph 、GridFS 、mogileFS、TFS、FastDFS等。各自适用于不同的领域。它们都不是系统级的分布式文件系统,而是应用级的分布式文件存储服务。
GFS(Google File System)
--------------------------------------
Google公司为了满足本公司需求而开发的基于Linux的专有分布式文件系统。。尽管Google公布了该系统的一些技术细节,但Google并没有将该系统的软件部分作为开源软件发布。
下面分布式文件系统都是类 GFS的产品。
HDFS
--------------------------------------
Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。 Hadoop是Apache Lucene创始人Doug Cutting开发的使用广泛的文本搜索库。它起源于Apache Nutch,后者是一个开源的网络搜索引擎,本身也是Luene项目的一部分。Aapche Hadoop架构是MapReduce算法的一种开源应用,是Google开创其帝国的重要基石。
Ceph
---------------------------------------
是加州大学圣克鲁兹分校的Sage weil攻读博士时开发的分布式文件系统。并使用Ceph完成了他的论文。
说 ceph 性能最高,C++编写的代码,支持Fuse,并且没有单点故障依赖, 于是下载安装, 由于 ceph 使用 btrfs 文件系统, 而btrfs 文件系统需要 Linux 2.6.34 以上的内核才支持。
可是ceph太不成熟了,它基于的btrfs本身就不成熟,它的官方网站上也明确指出不要把ceph用在生产环境中。
Lustre
---------------------------------------
Lustre是一个大规模的、安全可靠的,具备高可用性的集群文件系统,它是由SUN公司开发和维护的。
该项目主要的目的就是开发下一代的集群文件系统,可以支持超过10000个节点,数以PB的数据量存储系统。
目前Lustre已经运用在一些领域,例如HP SFS产品等。

linux下常用的分布式文件系统有哪些


Lustre是HP,Intel,Cluster File System公司联合美国能源部开发的Linux集群并行文件系统,名称来源于Linux和Clusters。同时Lustre也是一个遵循GPL许可协议的开源软件,Lustre也被称为平行分布式文件系统,常用于大型计算机集群和超级电脑中。

Lustre的主要组建包括:元数据服务器(Metadataservers, MDSs)、对象存储服务器(objectstorage servers, OSSs)和客户端。其中MDSs提供元数据服务,MGS管理服务器提供Lustre文件系统配置信息,OSS对象存储服务器expose块设备提供数据。

Lustre文件系统针对大文件读写进行了优化,能够提高性能的IO能力;在源数据独立存储、服务和网络失效的快速恢复、基于意图的分布式锁管理和系统可快速配置方面优异。

分布式存储的关键技术主要包括:全局名字空间、缓存一致性、安全性、可用性和可扩展性。从数据形态来划分,主要有:结构化数据、非机构化数据和半结构化数据。

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。


分布式系统基础设施包括


一个大型、稳健、成熟的分布式系统的背后,往往会涉及众多的支撑系统,我们将这些支撑系统称为分布式系统的基础设施。除了前面所介绍的分布式协作及配置管理系统ZooKeeper,我们进行系统架构设计所依赖的基础设施,还包括分布式缓存系统、持久化存储、分布式消息系统、搜索引擎,以及CDN系统、负载均衡系统、运维自动化系统等,还有后面章节所要介绍的实时计算系统、离线计算系统、分布式文件系统、日志收集系统、监控系统、数据仓库等。
分布式缓存主要用于在高并发环境下,减轻数据库的压力,提高系统的响应速度和并发吞吐。当大量的读、写请求涌向数据库时,磁盘的处理速度与内存显然不在一个量级,因此,在数据库之前加一层缓存,能够显著提高系统的响应速度,并降低数据库的压力。作为传统的关系型数据库,MySQL提供完整的ACID操作,支持丰富的数据类型、强大的关联查询、where语句等,能够非常客易地建立查询索引,执行复杂的内连接、外连接、求和、排序、分组等操作,并且支持存储过程、函数等功能,产品成熟度高,功能强大。但是,对于需要应对高并发访问并且存储海量数据的场景来说,出于对性能的考虑,不得不放弃很多传统关系型数据库原本强大的功能,牺牲了系统的易用性,并且使得系统的设计和管理变得更为复杂。这也使得在过去几年中,流行着另一种新的存储解决方案——NoSQL,它与传统的关系型数据库最大的差别在于,它不使用SQL作为查询语言来查找数据,而采用key-value形式进行查找,提供了更高的查询效率及吞吐,并且能够更加方便地进行扩展,存储海量数据,在数千个节点上进行分区,自动进行数据的复制和备份。在分布式系统中,消息作为应用间通信的一种方式,得到了十分广泛的应用。消息可以被保存在队列中,直到被接收者取出,由于消息发送者不需要同步等待消息接收者的响应,消息的异步接收降低了系统集成的耦合度,提升了分布式系统协作的效率,使得系统能够更快地响应用户,提供更高的吞吐。
当系统处于峰值压力时,分布式消息队列还能够作为缓冲,削峰填谷,缓解集群的压力,避免整个系统被压垮。垂直化的搜索引擎在分布式系统中是一个非常重要的角色,它既能够满足用户对于全文检索、模糊匹配的需求,解决数据库like查询效率低下的问题,又能够解决分布式环境下,由于采用分库分表,或者使用NoSQL数据库,导致无法进行多表关联或者进行复杂查询的问题。