004 Hadoop2.x基础知识
一:大数据应用
1.Cloudera
cloudera公司是Hadoop三大发行商之一,其版本为CDH版本,现在最新的版本是CDH5。
网站:http://archive.cloudera.com/cdh5/

现在官网上的最新的版本:

2.大数据的三大基础
Java
SQL
Linux
3.大数据的特性
大量的数据:PB级别
多样的数据类型
快速的数据流转
价值

二:学习的框架
1.官网:
hadoop.apache.org
目前学习的系列是Hadoop2.x,在2006年发布,几个重要的版本,2.2.0 ,2.5.0, 2.7.0
现在已经有了新的版本Hadoop3.0

2.特性
Hadoop是一个可靠性,可扩展,的分布式计算框架(The Apache™ Hadoop® project develops open-source software for reliable, scalable, distributed computing.)。

A) 可靠性
存储方面:
HDFS存储策略,副本数为3个
以块进行,检验块损坏,生成校验码,并将两次的校验码进行比较来判断。
计算方面:
如果计算中出现问题,会使用副本数继续计算。
B) 可扩展性
可以在原有的基础上任意添加多台机器。
C) 低成本(另外补充)
磁盘的成本低一些。
3.四个核心模块

Hadoop Common:支持模块的工具类
HDFS:分布式文件系统
Hadoop YARN:任务调度和集群资源(内存,CPU)管理框架
Hadoop MapReduce:一个基于YARN的并行处理大数据集的框架
4.Hadoop之父
doug cutting
5.Hadoop的起源
apache Lucene:全文检索工具包
Apache Nutch:web搜索引擎
Google三大论文:MapReduce,GFS,BigTable
二:HDFS分布式文件系统
1.文件系统
建立在无数的硬件上。
设计理念:一次写入,多次读取
主从架构
namenode
datanode
存储的是文件,文件属性
名称,位置,副本数,拥有者,权限,存储的块
存储形式:块(block,默认是128M)
假设一个文件是250M,则需要两个块存储,第一个块128M,第二个块122M(一个文件小于一个数据块的大小,不需要占用整个数据块的空间的).
多个文件不能放到一个块中的。
文件的与元数据
文件的属性。
给到namenode进行存储。
真正存储的是datanode。
2.框架

3.HDFS读写流程(都有一个就近原则)(大概)
读取
客户端先去namenode,知道文件的存储位置。
再去找datanode。
当读取到好几个文件的时候,这个时候设计到就近原则,同一个机架上读取文件肯定比读取其他机架上的数据快。
读取块。
写入文件
首先客户端找namenode,知道文件将要被分到哪个位置
然后再找到对应的datanode
然后去datanode写入。
写副本时,应该需要写一个到别的机架。
4.HDFS服务功能
Namenode:是主节点,存储文件的元数据
Datanode:在本地文件系统存储文件数据,以及数据块的校验和。
Secondary Namenode:监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照。
三:Hadoop YARN框架
1.框架

2.资源管理和调度框架
主从架构
Resourcemanager:管理整个集群的资源
NodeManager:资源所在
每个应用都有一个应用管理者:ApplicationMaster
container
使得应用不会被干扰,是资源的抽象,分装了每个任务需要的资源。
3.yarn的运行机制
当一个应用在yarn上运行,Resourcemanager首先会找一个nodemanager,给这个应用分配一个应用管理者(ApplicationMaster),使得应用管理者可以在nodemanager上运行。
然后管理者会计算出需要的资源,然后管理者根据计算出的资源向Resourcemanager申请资源
然后Resourcemanager给应用一个container,让应用在container中运行,
然后应用管理者进行监控和容错。
4.YARN服务功能

四:MapReduce框架
1.两个阶段
Map:并行输入数据
Reduce:对结果进行汇总
2.特点
适合离线批量计算
数据量大
启动开销大,每个mapreduce任务都会开一个Java虚拟机。
3.
004 Hadoop2.x基础知识的更多相关文章
- .NET面试题系列[1] - .NET框架基础知识(1)
很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...
- RabbitMQ基础知识
RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- selenium自动化基础知识
什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
- [SQL] SQL 基础知识梳理(四) - 数据更新
SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(五) - 复杂查询
SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...
随机推荐
- Shell中eval的用法示例
功能说明:告知shell取出eval的参数,重新运算求出参数的内容. 语 法:eval [参数]补充说明:eval可读取一连串的参数,然后再依参数本身的特性来执行. 参 数:参数不限数目,彼此之间用分 ...
- 使用abcpdf将html转换成pdf文件
ABCpdf.NET使用介绍 最新做一个项目需要生成pdf文档以供打印,研究决定使用abcpdf这款组件,先针对其使用方法做一个简单的总结介绍以给有需要的朋友做参考. 一. ABCpdf.NET简单介 ...
- 谁说码农不懂浪漫?js写的'老婆生日快乐'特效
一直被老婆抱怨不懂浪漫,老婆的生日又来了,老婆指着闺蜜空间上贴的老公做的胡萝卜心形浪漫晚餐告诉我:必须送她一份用心的礼物.我绞尽脑汁想出这么一法子,还是得用我们码农的独特方式,经过一天多的努力,终于做 ...
- 【转】WPF的知识
[-] 闲话WPF之二XAML概述 闲话WPF之五XAML中的类型转换 闲话WPF之十六WPF中的资源 2 闲话WPF之十九WPF中的传递事件 1 闲话WPF之二十WPF中的传递事件 2 闲话WPF之 ...
- 微服务深入浅出(3)-- 服务的注册和发现Eureka
现来说一些Eureka的概念: 1.服务注册 Register 就是Client向Server注册的时候提供自身元数据,比如IP和Port等信息. 2.服务续约 Renew Client默认每隔30s ...
- 远程连接工具PuTTY和MTPuTTY
PuTTY是一个Telnet.SSH.rlogin.纯TCP以及串行接口连接软件 官网 http://www.chiark.greenend.org.uk/~sgtatham/putty/ putty ...
- 【leetcode 简单】 第九十六题 最长回文串
给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串. 在构造过程中,请注意区分大小写.比如 "Aa" 不能当做一个回文字符串. 注意: 假设字符串的长度不 ...
- Python练习-一个Break跳出所有循环
Alex大神的需求:三层循环,在最内层循环中使用break,让所有循环结束; # 编辑者:闫龙 i=1; count=0; while 1==i : while 1==i: while 1==i: c ...
- linux源码安装nginx
任务目标:源码安装nginx,作为web服务修改配置文件,让配置生效,验证配置 首先要去官网nginx.org下载一个tar包: tar xvf 解包 进入到解包出来的目录,对configure进行配 ...
- 在window 8 或windows2012 上用命令行安装framework3.5 方法
找到对应操作系统安装目录的sources文件夹下的sxs文件夹,拷贝到本地电脑,如F:盘 根目录下 CMD(管理员身份)命令: dism.exe /online /enable-feature /fe ...