1.副本放置策略
副本的存放,副本的存放是HDFS可靠性和性能的关键。HDFS采用一种称为rack-aware的策略来改进数据的可靠性、有效性和网络带宽的利 用。这个策略实现的短期目标是验证在生产环境下的表现,观察它的行为,构建测试和研究的基础,以便实现更先进的策略。庞大的HDFS实例一般运行在多个机 架的计算机形成的集群上,不同机架间的两台机器的通讯需要通过交换机,显然通常情况下,同一个机架内的两个节点间的带宽会比不同机架间的两台机器的带宽 大。
通过一个称为Rack Awareness的过程,Namenode决定了每个Datanode所属的rack id。一个简单但没有优化的策略就是将副本存放在单独的机架上。这样可以防止整个机架(非副本存放)失效的情况,并且允许读数据的时候可以从多个机架读 取。这个简单策略设置可以将副本分布在集群中,有利于组件失败情况下的负载均衡。但是,这个简单策略加大了写的代价,因为一个写操作需要传输block到 多个机架。
在大多数情况下,replication因子是3,HDFS的存放策略是将一个副本存放在本地机架上的节点,一个副本放在同一机架上的另一个节点,最后一 个副本放在不同机架上的一个节点。机架的错误远远比节点的错误少,这个策略不会影响到数据的可靠性和有效性。三分之一的副本在一个节点上,三分之二在一个 机架上,其他保存在剩下的机架中,这一策略改进了写的性能。
可以设计适合某种应用的副本放置策略
2.副本的选择策略
为了降低整体的带宽消耗和读延时,HDFS会尽量让reader读最近的副本。如果在reader的同一个机架上有一个副本,那么就读该副本。如果一个HDFS集群跨越多个数据中心,那么reader也将首先尝试读本地数据中心的副本。
关于一次写多次读,GFS中曾经支持多次写,后来发现对性能影响较大,hadoop就不实现了。
分享到:
相关推荐
内容概要:本文详细介绍了分布式文件系统HDFS的基本概念、架构组成、工作原理及其优劣特点。首先,文中阐述了HDFS的设计目标包括高容错性、高吞吐量以及可扩展性。接着,对NameNode和DataNode的功能进行了说明,并...
在处理分布式存储系统的元数据设计时,不同的设计方案各有优劣,需要根据实际应用需求和场景来选择最合适的解决方案。无论选择哪种方案,都要对数据的一致性、可靠性和系统的可伸缩性给予充分的考虑。
Hadoop分布式文件系统(HDFS)是大数据处理领域的一个关键组件,它被设计用于存储和处理大规模数据集。描述中的反复提及"HDFS支持压缩"暗示了这个压缩包可能包含了一些针对HDFS优化的压缩工具或库。 HDFS压缩是...
在研究方法上,项目的研究人员需要熟悉现有的相关技术成果,通过深入分析方法技巧,针对研究问题的特点和难点,进行实验和实践来比较各种方法及方案配置的优劣。此外,项目还需积极参加学术会议和利用现代通讯工具...
HDFS主要针对大规模数据集的存储而设计,优化了MapReduce数据处理流程。 Lustre是一种高性能的分布式并行文件系统,专为大规模的科学计算和数据中心环境设计。Lustre通过高性能的网络连接,将数据直接映射到计算...
HBase是Apache软件基金会旗下的一个开源分布式NoSQL数据库,它使用了Google的Bigtable模型,并运行在Hadoop文件系统(HDFS)之上。HBase具有良好的扩展性、水平扩展和高性能等特点,特别适合处理大量的稀疏数据。...
MINOS系统专为集群级别的Hadoop配置和监控而设计,同时提供了用户友好的Web界面和命令行工具,使得用户能够更直观、更便捷地管理集群。MINOS支持多种组件和服务,包括但不限于HDFS、HBase、Zookeeper等,并且可以...
7. **操作系统的结构**:操作系统的结构包括单体结构、微内核结构、层次结构、客户-服务器结构等,理解不同结构的特点和应用场景,能够分析系统设计的优劣。 8. **并发与同步**:并发执行的进程需要同步来保证数据...
- **架构**:Chukwa包含Adaptor、Collector、Hadoop档案系统(HDFS)和Chukwa Agent,支持复杂的调度和恢复策略。 - **特性**:Chukwa强调数据的持久化和低延迟,适用于监控和故障排查。 5. **Scribe** - **简介**...
Impala能够直接在Hadoop文件系统(HDFS)和HBase上运行SQL查询,而不需要转化成MapReduce任务。这样就大大减少了查询的延迟。Impala支持多种存储格式,并且查询性能相比Hive有显著提升,大约高出3到30倍。但是,...
ClickHouse是一个列式数据库管理系统,专为高速数据分析而设计。其核心优势在于: 1. **高性能**:由于采用列式存储,数据压缩率高,配合稀疏索引,能实现快速的查询响应。 2. **实时性**:支持从Kafka等消息队列...
- **优点**:面向对象的设计思想,方便集群,合理的对象设计带来高性能。 - **缺点**:多表关联功能受限,某些查询性能较低。 ##### 3. Hadoop - **优点**:近年来受到广泛关注,适用于大数据处理,支持分布式文件...
5. Google 为 Bigtable 设计的内部数据存储格式是 SSTable,它是一种高效的持久化数据结构。 6. 云计算分析处理最适合处理大数据,例如天气预报数据、科学计算数据和商业数据。耦合度高的数据可能不适合云计算,...
- **文件系统的选择**:分析了不同文件系统(如本地文件系统、HDFS、S3等)对于HBase性能的影响。 - **安装选项**:比较了从Apache官方下载二进制包安装与从源码编译安装两种方式的优劣。 - **运行模式**:介绍了...
- **Hadoop**: Hive的数据存储于HDFS上,查询请求最终会被转化为MapReduce任务来执行。 ### Hive数据模型 Hive的数据模型包括数据库、文件、表和视图等组成部分。其中: - **数据库**: 用于组织和管理多个表的...
这些数据包括但不限于历史质检记录、产品设计图纸以及生产过程中的各种数据。 - **具体作用**:通过大数据分析技术,可以将这些海量数据进行收集和整合,形成统一的数据平台,为后续的数据分析和挖掘奠定基础。 **2...
**优劣对比**: - **Fair Scheduler**: 更适合单租户环境,能够确保所有任务都有机会运行。 - **Capacity Scheduler**: 适用于多租户环境,可以保证不同队列之间的资源隔离。 - **FIFO Scheduler**: 实现简单,但在...
例如,Facebook的Presto和Cloudera的Impala都是在HDFS上运行的SQL解决方案,证明了SQL在大数据环境中的高效能和扩展性。 NoSQL,尽管没有统一的标准,但它在某些特定场景下展现出优势: 1. **横向扩展**:NoSQL...