[hadoop] hadoop的优缺点总结

hadoop有以下四个优点:
1)高可靠性:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。
2)高扩展性:能在廉价机器组成的集群间分配任务数据,可方便的扩展数以干计的节点。
3)高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
4)高容错性:能够自动将失败的任务重新分配。

同时hadoop 1.x有以下三个缺点:
1)不适合低延时数据访问,比如毫秒级的存储数据,是做不到的。
2)无法高效的对大量小文件进行存储。
(1)存储大量小文件的话,它会占用NamelNode大量的内存来存储文件目录和块信息。这样是不可取的,因为NameNode的内存总是有限的;
(2)小文件存储的寻址时间会超过读取时间,它违反了HDFS的设计目标。
3)不支持并发写入、文件随机修改。IHDFS
(1)一个文件只能有一个写,不允许多个线程同时写;
(2)仅支持数据append(追加),不支持文件的随机修改。

在hadoop2.x的时候更新了新特性
小文件存档
HDFS存档文件或HAR文件,是一个更高效的文件存档工具,它将文件存入HDFS块,在减少NameNode内存使用的同时,允许对文件进行透明的访问。具体说来,HDFS存档文件对内还是一个一个独立文件,对NameNode而言却是一个整体,减少了NameNode的内存。
在这里插入图片描述
这个新特性在一定程度上解决了hdfs存储小文件的问题,但是仍然不建议在hdfs中存储大量小文件.

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### Hadoop **Hadoop** 是一套开源框架,主要用于分布式存储和处理大量数据集。它由两个核心组件组成:HDFSHadoop Distributed File System)和MapReduce。 #### **优点** 1. **高容错性**:设计时考虑了系统的可靠性和容错性,能够自动检测并恢复节点故障,保证数据的持久性和服务的连续性。 2. **大数据处理能力**:适合处理PB级别的数据,提供强大的数据存储和计算能力。 3. **成本效益**:利用廉价的硬件构建大规模集群,降低了数据处理的成本。 4. **跨平台兼容性**:支持多种操作系统,易于部署和维护。 5. **生态系统丰富**:有丰富的工具和库,如Hive、Pig、HBase等,可以用于数据分析、SQL查询、实时数据处理等多种应用场景。 6. **社区活跃**:拥有庞大的开发者和使用者群体,技术支持和资源丰富。 #### **缺点** 1. **性能效率低**:相比其他现代大数据技术(如Spark),Hadoop的MapReduce模型在某些特定场景下执行速度较慢。 2. **复杂性**:学习曲线陡峭,配置和管理较为复杂,尤其是对于新手用户来说。 3. **内存利用率低**:传统MapReduce操作需要将整个任务加载到内存中,对大内存需求较高,并可能导致数据溢出到磁盘,影响效率。 4. **单点故障**:虽然整体有高容错性设计,但在某些特定的系统组件上可能存在单点故障问题,需要额外的监控和管理措施。 ### Spark **Spark** 是另一种高性能的大数据处理引擎,适用于多种应用场景,包括批处理、交互式查询、流处理、机器学习等。 #### **优点** 1. **速度快**:采用内存计算模式,数据在内存中迭代处理,相比于Hadoop MapReduce通常能更快地完成任务。 2. **易用性**:提供统一的API和编程模型,使得从简单的工作负载到复杂的机器学习应用都能轻松处理。 3. **动态调度**:Spark的动态调度算法可以根据实际运行情况优化任务执行路径,提高效率。 4. **集成能力强**:可以方便地整合各种数据源和服务,比如支持直接读取HDFS文件、MongoDB等数据库的数据。 5. **广泛支持**:支持Python、Scala、Java和R等多种语言环境。 6. **社区和生态发展迅速**:Spark有一个活跃的开发者社区,提供大量的案例研究和教程。 #### **缺点** 1. **内存依赖**:Spark基于内存计算,对内存的需求比Hadoop更高,在大型数据集或高并发环境下可能会遇到内存限制。 2. **配置复杂**:虽然相较于Hadoop有所简化,但Spark仍然存在一些配置选项,对于初学者来说可能不够友好。 3. **数据泄露风险**:由于Spark在内存中频繁操作数据,如果安全策略不当,可能会增加数据泄露的风险。 4. **不适合某些工作负载**:对于只关心结果而不在乎过程效率的工作负载,Hadoop可能是一个更合适的选择。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值