「大数据」Hadoop生态系统:分布式文件系统

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 「大数据」Hadoop生态系统:分布式文件系统

Apache HDFS

Hadoop分布式文件系统(HDFS)提供了一种在多台计算机上存储大型文件的方法。 Hadoop和HDFS源自Google文件系统(GFS)文件。 在Hadoop 2.0.0之前,NameNode是HDFS集群中的单点故障(SPOF)。 使用Zookeeper,HDFS高可用性功能通过提供在具有热备用的主动/被动配置中的同一群集中运行两个冗余NameNode的选项来解决此问题。

  • hadoop.apache.org
  • 谷歌文件系统 - GFS文件
  • Cloudera为何选择HDFS
  • Hortonworks为何选择HDFS

Red Hat GlusterFS

GlusterFS是一个横向扩展的网络附加存储文件系统。 GlusterFS最初由Gluster,Inc。开发,然后由Red Hat,Inc。在2011年购买Gluster后开发。2012年6月,Red Hat Storage Server被宣布为商业支持的GlusterFS与Red Hat Enterprise Linux的集成。 Gluster文件系统,现在称为Red Hat Storage Server。

  • www.gluster.org
  • Red Hat Hadoop插件

Quantcast文件系统

QFS QFS是一个开源的分布式文件系统软件包,适用于大规模MapReduce或其他批处理工作负载。它被设计为Apache Hadoop HDFS的替代品,旨在为大规模处理集群提供更好的性能和成本效益。它是用C ++编写的,具有固定占用内存管理。 QFS使用Reed-Solomon纠错作为确保可靠访问数据的方法。

Reed-Solomon编码在大容量存储系统中被广泛使用以校正与介质缺陷相关的突发错误。 QFS不是存储每个文件的三个完整版本(如HDFS),而是需要三倍的存储空间,因此它只需要1.5倍的原始容量,因为它会跨九个不同的磁盘驱动器对数据进行条带化。

  • QFS网站
  • GitHub QFS
  • HADOOP-8885

Ceph Filesystem

Ceph是一个免费的软件存储平台,旨在从单个分布式计算机集群中呈现对象,块和文件存储。 Ceph的主要目标是完全分发,没有单点故障,可扩展到exabyte级别,并且可以自由使用。数据被复制,使其具有容错能力。

  • Ceph文件系统站点
  • Ceph和Hadoop
  • HADOOP-6253

Lustre文件系统

Lustre文件系统是一种高性能的分布式文件系统,适用于大型网络和高可用性环境。传统上,Lustre被配置为管理存储区域网络(SAN)内的远程数据存储磁盘设备,SAN是通过小型计算机系统接口(SCSI)协议进行通信的两个或多个远程连接的磁盘设备。这包括光纤通道,以太网光纤通道(FCoE),串行连接SCSI(SAS)甚至iSCSI。

使用Hadoop HDFS,该软件需要一个专用的计算机集群来运行。但是,为其他目的运行高性能计算集群的人通常不会运行HDFS,这会使他们拥有一堆计算能力,这些任务几乎肯定会受益于一些地图缩减,并且无法将这些功能用于运行Hadoop的。英特尔注意到了这一点,并且在其上周悄然发布的Hadoop发行版2.5版本中增加了对Lustre的支持:用于Apache Hadoop *软件的英特尔®HPC分发,这是一款将英特尔分布式Apache Hadoop软件与英特尔®结合的新产品适用于Lustre软件的企业版。这是与Lustre集成的唯一Apache Hadoop发行版,Lustre是许多世界上最快的超级计算机1使用的并行文件系统.

  • wiki.lustre.org /
  • 带有Lustre的Hadoop
  • 英特尔HPC Hadoop

Alluxio

Alluxio是世界上第一个以内存为中心的虚拟分布式存储系统,它统一了数据访问并桥接了计算框架和底层存储系统。应用程序只需与Alluxio连接即可访问存储在任何底层存储系统中的数据。此外,Alluxio以内存为中心的架构使数据访问速度比现有解决方案快几个数量级。

在大数据生态系统中,Alluxio介于计算框架或作业(如Apache Spark,Apache MapReduce或Apache Flink)和各种存储系统(如Amazon S3,OpenStack Swift,GlusterFS,HDFS,Ceph或OSS)之间。 Alluxio为堆栈带来了显着的性能提升;例如,百度使用Alluxio将其数据分析性能提高了30倍。除了性能之外,Alluxio还将新工作负载与存储在传统存储系统中的数据相结合。用户可以使用其独立群集模式运行Alluxio,例如在Amazon EC2上运行,或者使用Apache Mesos或Apache Yarn启动Alluxio。

Alluxio兼容Hadoop。这意味着现有的Spark和MapReduce程序可以在Alluxio之上运行而无需更改任何代码。该项目是开源的(Apache License 2.0),并在多家公司部署。它是增长最快的开源项目之一。 Alluxio拥有不到三年的开源历史,吸引了来自50多家机构的160多名贡献者,包括阿里巴巴,Alluxio,百度,CMU,IBM,英特尔,NJU,红帽,加州大学伯克利分校和雅虎。该项目是Berkeley Data Analytics Stack(BDAS)的存储层,也是Fedora发行版的一部分。

  • Alluxio网站

GridGain

GridGain是在Apache 2.0下获得许可的开源项目。该平台的主要部分之一是内存中的Apache Hadoop加速器,旨在通过将数据和计算都带入内存来加速HDFS和Map / Reduce。这项工作是通过GGFS-Hadoop兼容的内存文件系统完成的。对于I / O密集型作业,GridGain GGFS的性能比标准HDFS快近100倍。从GridGain Systems转述Dmitriy Setrakyan谈论有关Tachyon的GGFS:

GGFS允许对底层HDFS或任何其他Hadoop兼容文件系统进行直读和写入,而无需更改代码。从本质上讲,GGFS完全从集成中删除了ETL步骤。

GGFS能够选择和保留内存中的文件夹,光盘上的文件夹,以及同步或异步与底层(HD)FS同步的文件夹。

GridGain正致力于添加原生MapReduce组件,该组件将提供本机完整的Hadoop集成而无需更改API,就像Spark目前强迫您做的那样。基本上,GridGain MR + GGFS将允许以即插即用的方式将Hadoop完全或部分内存,而无需任何API更改。

  • GridGain网站

XtreemFS

XtreemFS是一个通用存储系统,可满足单个部署中的大多数存储需求。它是开源的,不需要特殊的硬件或内核模块,可以安装在Linux,Windows和OS X上.XtreemFS运行分布式并通过复制提供弹性。 XtreemFS卷可以通过FUSE组件访问,该组件提供与POSIX类似语义的正常文件交互。此外,还包含Hadoops FileSystem接口的实现,使XtreemFS可以与Hadoop,Flink和Spark一起使用。 XtreemFS根据新BSD许可证授权。 XtreemFS项目由柏林Zuse研究所开发。该项目的开发由欧盟委员会自2006年以来根据拨款协议No. FP6-033576,FP7-ICT-257438和FP7-318521以及德国项目MoSGrid,“First We Take Berlin”,FFMK, GeoMultiSens和BBDC。

  • XtreemFS站点
  • 在XtreemFS上进行Flink。
  • Spark XtreemFS


相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
6天前
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
33 4
|
22天前
|
机器学习/深度学习 存储 运维
分布式机器学习系统:设计原理、优化策略与实践经验
本文详细探讨了分布式机器学习系统的发展现状与挑战,重点分析了数据并行、模型并行等核心训练范式,以及参数服务器、优化器等关键组件的设计与实现。文章还深入讨论了混合精度训练、梯度累积、ZeRO优化器等高级特性,旨在提供一套全面的技术解决方案,以应对超大规模模型训练中的计算、存储及通信挑战。
55 4
|
1月前
|
存储 运维 负载均衡
构建高可用性GraphRAG系统:分布式部署与容错机制
【10月更文挑战第28天】作为一名数据科学家和系统架构师,我在构建和维护大规模分布式系统方面有着丰富的经验。最近,我负责了一个基于GraphRAG(Graph Retrieval-Augmented Generation)模型的项目,该模型用于构建一个高可用性的问答系统。在这个过程中,我深刻体会到分布式部署和容错机制的重要性。本文将详细介绍如何在生产环境中构建一个高可用性的GraphRAG系统,包括分布式部署方案、负载均衡、故障检测与恢复机制等方面的内容。
116 4
构建高可用性GraphRAG系统:分布式部署与容错机制
|
1月前
|
机器学习/深度学习 分布式计算 算法
【大数据分析&机器学习】分布式机器学习
本文主要介绍分布式机器学习基础知识,并介绍主流的分布式机器学习框架,结合实例介绍一些机器学习算法。
205 5
|
24天前
|
SQL 分布式计算 算法
分布式是大数据处理的万能药?
分布式技术在大数据处理中广泛应用,通过将任务拆分至多个节点执行,显著提升性能。然而,它并非万能药,适用于易于拆分的任务,特别是OLTP场景。对于复杂计算如OLAP或批处理任务,分布式可能因数据交换延迟、非线性扩展等问题而表现不佳。因此,应先优化单机性能,必要时再考虑分布式。SPL等工具通过高效算法提升单机性能,减少对分布式依赖。
|
1月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
115 2
|
28天前
|
机器学习/深度学习 人工智能 分布式计算
【AI系统】分布式通信与 NVLink
进入大模型时代后,AI的核心转向大模型发展,训练这类模型需克服大量GPU资源及长时间的需求。面对单个GPU内存限制,跨多个GPU的分布式训练成为必要,这涉及到分布式通信和NVLink技术的应用。分布式通信允许多个节点协作完成任务,而NVLink则是一种高速、低延迟的通信技术,用于连接GPU或GPU与其它设备,以实现高性能计算。随着大模型的参数、数据规模扩大及算力需求增长,分布式并行策略,如数据并行和模型并行,变得至关重要。这些策略通过将模型或数据分割在多个GPU上处理,提高了训练效率。此外,NVLink和NVSwitch技术的持续演进,为GPU间的高效通信提供了更强的支持,推动了大模型训练的快
40 0
|
1月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
84 1
|
2月前
|
消息中间件 中间件 数据库
NServiceBus:打造企业级服务总线的利器——深度解析这一面向消息中间件如何革新分布式应用开发与提升系统可靠性
【10月更文挑战第9天】NServiceBus 是一个面向消息的中间件,专为构建分布式应用程序设计,特别适用于企业级服务总线(ESB)。它通过消息队列实现服务间的解耦,提高系统的可扩展性和容错性。在 .NET 生态中,NServiceBus 提供了强大的功能,支持多种传输方式如 RabbitMQ 和 Azure Service Bus。通过异步消息传递模式,各组件可以独立运作,即使某部分出现故障也不会影响整体系统。 示例代码展示了如何使用 NServiceBus 发送和接收消息,简化了系统的设计和维护。
65 3
|
2月前
|
消息中间件 存储 监控
消息队列系统中的确认机制在分布式系统中如何实现?
消息队列系统中的确认机制在分布式系统中如何实现?