分布式文件系统

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可安装在各种计算机硬件设备中 , 比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机 。
HDFS分布式文件系统具有以下优点:
支持超大文件
支持超大文件 。 超大文件在这里指的是几百M , 几百GB , 甚至几TB大小的文件 。 一般来说hadoop的文件系统会存储TB级别或者PB级别的数据 。 所以在企业的应用中 , 数据节点有可能有上千个 。
检测和快速应对硬件故障
在集群的环境中 , 硬件故障是常见的问题 。 因为有上千台服务器连接在一起 , 这样会导致高故障率 。 因此故障检测和自动恢复是hdfs文件系统的一个设计目标 。
流式数据访问
Hdfs的数据处理规模比较大 , 应用一次需要访问大量的数据 , 同时这些应用一般都是批量处理 , 而不是用户交互式处理 。 应用程序能以流的形式访问数据集 。 主要的是数据的吞吐量 , 而不是访问速度 。
简化的一致性模型
大部分hdfs操作文件时 , 需要一次写入 , 多次读取 。 在hdfs中 , 一个文件一旦经过创建、写入、关闭后 , 一般就不需要修改了 。 这样简单的一致性模型 , 有利于提高吞吐量 。
缺点
低延迟数据访问
低延迟数据 。 如和用户进行交互的应用 , 需要数据在毫秒或秒的范围内得到响应 。 由于hadoop针对高数据吞吐量做了优化 , 牺牲了获取数据的延迟 , 所以对于低延迟来说 , 不适合用hadoop来做 。

分布式文件系统

文章插图
大量的小文件
Hdfs支持超大的文件 , 是通过数据分布在数据节点 , 数据的元数据保存在名字节点上 。 名字节点的内存大小 , 决定了hdfs文件系统可保存的文件数量 。 虽然现在的系统内存都比较大 , 但大量的小文件还是会影响名字节点的性能 。
多用户写入文件、修改文件
Hdfs的文件只能有一次写入 , 不支持写入 , 也不支持修改 。 只有这样数据的吞吐量才能大 。
不支持超强的事务
没有像关系型数据库那样 , 对事务有强有力的支持 。

推荐阅读