《Hadoop技术详解》一2.1 目标和动机
2023-09-11 14:17:46 时间
本节书摘来异步社区《Hadoop技术详解》一书中的第2章,第2.1节,作者: 【美】Eric Sammer 译者: 刘敏 , 麦耀锋 , 李冀蕾 , 等,更多章节内容可以访问云栖社区“异步社区”公众号查看。
2.1 目标和动机Apache Hadoop的重要组成部分是Hadoop分布式文件系统(HDFS,Hadoop Distributed Filesystem)。HDFS的设计初衷是为了支持高吞吐和超大文件的流式读写操作。传统的大型存储区域网络(Storage Area Network, SAN)和网络附加存储(Network Attached Storage, NAS)给TB级的块设备或文件系统提供了一种集中式的低延时数据访问解决方案。因为SAN和NAS支持全功能POSIX语法,具有很好的存储伸缩性和低延时访问等优点,所以可以完美地满足关系数据库、内容交付系统及类似数据的块存储要求。然而,试想一下这样的场景:成千上万台机器同时启动,并从集中式存储系统中同时读取成百TB的数据。传统存储技术不可能达到这样的规模!
为了解决这个问题,我们可以用一些独立的机器搭建一个高性价比系统。这个系统中的每台机器都拥有自己的I/O子系统、磁盘、RAM、网络接口、CPU,且支持部分POSIX功能(或按需求裁剪)。以下就是HDFS的一些特定目标。
可以存储几百万个大型文件,每个文件大小可以超过几十GB;文件系统的容量可达数十PB。 利用横向扩展模式(scale-out),使用基于磁盘簇(JBOD)而不是磁盘阵列(RAID)的普通商用服务器实现大规模数据存取,同时,在应用层完成数据复制以实现存储的可用性和高吞吐率。 优化是针对大型文件的流式读写操作,而不是为了满足小文件的低延时访问。批量处理的性能比互动响应的实时性更加重要。 能容忍机器某些部件故障和磁盘失效。 支持MapReduce处理所需要的功能与规模要求,详细内容请阅读第3章。尽管HDFS可以不依赖MapReduce而独立应用于大型数据集的存储,但如果将它们结合在一起,系统就会如虎添翼。例如,利用HDFS将输入数据分割成数据块分别存储在不同机器上的特点,MapReduce可以将计算任务分配给数据块所在的机器,从而实现数据读取的本地化,提高系统的效率。
【Hadoop技术篇】hive的优化,经典面试 1) 开启配置:set hive.optimize.bucketmapjoin = true; 2) 一个表的bucket数是另一个表bucket数的==整数倍== 3) bucket列 == join列 4) 满足map join条件
异步社区 异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。
相关文章
- 使用Hadoop中遇到的一些问题
- hadoop上线和下线节点
- 基于Hadoop的云盘系统客户端技术难点之一 上传和下载效率优化
- 基于Hadoop的云盘系统客户端技术选型说明
- 高可用Hadoop平台-实战
- 高可用Hadoop平台-Hue In Hadoop
- Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别 Pig
- 详解:从Greenplum、Hadoop到现在的阿里大数据技术
- 图解Hadoop hdfs 管理元数据的机制
- Atitit Hadoop的MapReduce的执行过程、数据流的一点理解。 目录 1. Why 为什么使用hadoop1 2. Hadoop的MapReduce的执行过程1 2.1. Had
- 【Hadoop基础】hadoop fs 命令
- 使用SAP Data Hub Developer Edition将数据写入Hadoop
- Hadoop中mapreduce作业日志是如何生成的
- 11.2hadoop监控:日志配置、堆栈跟踪、度量和JMX
- 009-Hadoop Hive sql语法详解4-DQL 操作:数据查询SQL-select、join、union、udtf
- Hadoop 搭建分布式环境 hadoop-3.0.0.tar.gz
- Hadoop之—— CentOS Warning: $HADOOP_HOME is deprecated解
- Hadoop大数据生态组件环境安装
- 大数据Hadoop之——部署hadoop+hive环境(window10)
- 大数据Hadoop之——实时计算流计算引擎Flink(Flink环境部署)
- 大数据Hadoop之——Kafka鉴权认证(Kafka kerberos认证+kafka账号密码认证+CDH Kerberos认证)
- Hadoop(24):Yarn的常用命令