赞
踩
技术 | 功能 |
---|---|
Hadoop | 分布式离线计算框架 |
Spark | 分布式内存计算框架 |
Hive | HiveQL数据仓库系统 |
HBase | 分布式实时存储数据库 |
sqoop | 数据库间ETL工具 |
元数据分为 fsimage edits. 存放在NameNode中。
元数据又称之为解释性数据,记录数据的数据文件系统。元数据一般指文件大小、最后修改时间、底层存储位置、属性、所属用户、权限等信息。在 hdfs-site.xml下的dfs.namenode.name.dir的value值进行参数配置
由于不同节点启动顺序不一样,因此刚启动时会进入安全模式,只读不能写。
//HDFS服务
start-dfs.sh
stop-dfs.sh
//YARN服务
start-yarn.sh
stop-yarn.sh
//同时启动/关闭HDFS和TARN服务
start-all.sh
stop-all.sh
//JobHistory服务(只在namenode节点执行此命令)
mapred --daemon start historyserver
mapred --daemon stop historyserver
服务名称 | 端口 |
---|---|
通过浏览器查看HDFS | 9870 |
通过浏览器查看Yarn | 8088 |
通过浏览器查看历史作业 History server | 19888 |
HDFS | YARN | |
---|---|---|
master | NameNode | ResourceManager |
slaver | DataNode | NodeManager |
三副本放置策略(BlockPlacementPolicyDefault)
写请求方所在机器是其中一个Datanode,则第一份副本直接存放在本地,否则随机在集群中选择一个Datanode,第二个副本存放于不同第一个副本的所在的机架,第三个副本存放于第二个副本所在的机架,但是属于不同的节点。
其余的副本在遵循以下限制的前提下随机放置,一个节点最多放置一个副本,如果副本数少于两倍机架数,同一机架不能放置超过两个副本。
HDFS block size 默认128M,splitsize一般等于block size,split有1.1倍原则,block没有。而maptask数目等于split数目。
reduce任务数量取决于map中partition数量。
**对象不能直接在网络中传输或者存放到磁盘中,所以需要进行序列化操作。**Java序列化包含信息太多不方便,所以需要Hadoop序列化。 Hadoop采用的运算模型是将任务分散在不同节点上进行初步处理;然后将分节点上已经计算完毕的任务汇总进行合并操作。在集群节点间通信时需要频繁的序列化和反序列化,因此要求序列化速度要快、体积要小、占用网络带宽要小,使数据适合远程传输并保证传输后数据的质量。
将Maptask结果写入缓冲区(Collect阶段),达到环形缓冲区阈值后,会溢写到磁盘里(Spill阶段),如果有分区则按照分区依次写入同时在不同分区里进行排序(Sort阶段)【快排】,写入磁盘后,最后对所有溢出的临时文件进行合并成一个数据文件(Merge阶段)同时也进行排序(Sort阶段)【归并】,由Reducer来拉取不同Maptask输出的数据文件中属于自己分区的数据(Copy阶段),进行合并(Merge阶段)同时对合并的数据进行排序(Sort阶段),最后输入给Reduce。
Mapfile多了index索引,其中的key是经过排序的,而SequenceFile的key是没有经过排序的。
TextInputFormat是以文件每一行行首在文件中的偏移量作为key,以一整行作为value。
KeyValueTextInputFormat默认按制表符将一行分为两列,第一列为键,第二列为值。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。