大数据基础Hadoop 2.x入门
hadoop概述
- 存储和分析网络数据
- 三大组件
- MapReduce
- 对海量数据的处理
- 思想:
- 分而治之
- 每个数据集进行逻辑业务处理map
- 合并统计数据结果reduce
- HDFS
- 储存海量数据
- 分布式存储
- 安全性高
- 副本数据
- YARN
- 分布式资源管理框架
- 管理整个集群的资源(内存、CPU核数)
- 分配调度集群资源
- 分布式资源管理框架
- Common
- 工具
- MapReduce
hadoop生态圈
- Hive(蜜蜂)通过使用sql语句来执行hadoop任务
- HBase 存储结构化数据的分布式数据库
- HBase放弃了事务特性,追求更高的扩展
- 和HDFS不同的,HBase提供数据的随机读写和实时访问,实现对表数据的读写功能
- zookeeper 维护节点状态
Hadoop安装
- 使用docker安装
docker run -i -t -p 50070:50070 -p 9000:9000 -p 8088:8088 -p 8040:8040 -p 8042:8042 -p 49707:49707 -p 50010:50010 -p 50075:50075 -p 50090:50090 sequenceiq/hadoop-docker:2.6.0 /etc/bootstrap.sh -bash
HDFS基本概念
- 块 (Block)
- HDFS的文件被分成块进行存储
- HDFS块的默认大小64M
- 块是文件储存处理的逻辑单元
- NameNode
- NameNode是管理节点,存放文件元数据
- 文件与数据块的映射表
- 数据块与数据节点的映射表

- DataNode
- 是HDFS的工作节点,存放数据块
HDFS中数据管理与容错
数据块副本

心跳检测

二级NameNode

HDFS中文件读写的流程

HDFS写入文件的流程

HDFS的特点
- 数据冗余,硬件容错
- 流式的数据访问
- 适合存储大文件
- 适合数据批量读写,吞吐量高
- 不适合交互式应用,低延迟很难满足
- 适合一次写入多次读取,顺序读写
- 不支持多用户并发写相同文件
HDFS命令行操作
- hadoop fs -ls /
- hadoop namenode -format 格式化操作
- hadoop fs -ls /user
- hadoop fs -put hadoop-env.sh /user/root 把文件放入hadoop
- hadoop fs -rm input
- hadoop fs -rm hadoop-env.sh
- hadoop fs -mkdir input
- hadoop fs -cat input/hadoop-env.sh
- hadoop fs -get input/hadoop-env.sh hadoop-env2.sh
- hadoop dfsadmin -report
MapReduce原理
- 分而治之,一个大人物分成多个小的子任务(map),并行执行后,合并结果(reduce)
- 比如:100GB的网站访问日志文件,找出访问次数最多的IP地址
- 根据日期切分,比如按周,每周一份进行统计
- 再合并到某几个机器进行分析合并
MapReduce运行流程
- 基本概念
- Job & Task 一个job就例如上面的例子,task可以分为map task和reduce task
- JobTracker
- 作业调度
- 分配任务、监控任务执行进度
- 监控TaskTracker的状态

- TaskTracker
- 执行任务
- 汇报任务状态
- MapReduce作业执行过程

MapReduce的容错机制
- 重复执行
- 重复4次仍旧失败放弃
- 推测执行
- 假设有个TaskTracker执行特别慢,它会启动另一个TaskTracker执行相同的任务,两个谁先执行完,就放弃另一个
MapReduce应用
WordCount单词计数
- 由于我是docker安装,具体例子可以参考如下
- docker安装的容器里,自带了例子,位置是/usr/local/hadoop-2.6.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar
大数据基础Hadoop 2.x入门的更多相关文章
- 【大数据系统架构师】1.2 大数据基础Hadoop 2.X
1. hadoop环境搭建 1.1 伪分布式环境搭建 1.1.1 伪分布式环境搭建 1.1.2 伪分布式搭建结果 hdfs可视化界面: http://od001:50070/dfshealth.htm ...
- 大数据技术Hadoop入门理论系列之一----hadoop生态圈介绍
Technorati 标记: hadoop,生态圈,ecosystem,yarn,spark,入门 1. hadoop 生态概况 Hadoop是一个由Apache基金会所开发的分布式系统基础架构. 用 ...
- 大数据之Hadoop技术入门汇总
今天,小编对Hadoop入门学习知识进行了汇总,帮助大家更好地入手大数据.小编关于Hadoop入门总共发写了12篇原创文章,文章是参照尚硅谷大数据视频教程来进行撰写的. 今天,小编带你解锁正确的阅读顺 ...
- 大数据:Hadoop入门
大数据:Hadoop入门 一:什么是大数据 什么是大数据: (1.)大数据是指在一定时间内无法用常规软件对其内容进行抓取,管理和处理的数据集合,简而言之就是数据量非常大,大到无法用常规工具进行处理,如 ...
- Hadoop基础之初识大数据与Hadoop
前言 从今天起,我将一步一步的分享大数据相关的知识,其实很多程序员感觉大数据很难学,其实并不是你想象的这样,只要自己想学,还有什么难得呢? 学习Hadoop有一个8020原则,80%都是在不断的配置配 ...
- 大数据和Hadoop生态圈
大数据和Hadoop生态圈 一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop ...
- hadoop(一)之初识大数据与Hadoop
前言 从今天起,我将一步一步的分享大数据相关的知识,其实很多程序员感觉大数据很难学,其实并不是你想象的这样,只要自己想学,还有什么难得呢? 学习Hadoop有一个8020原则,80%都是在不断的配置配 ...
- 大数据和hadoop有什么关系?
本文资料来自百度文库相关文档 Hadoop,Spark和Storm是目前最重要的三大分布式计算系统,Hadoop常用于离线的复杂的大数据处理,Spark常用于离线的快速的大数据处理,而Storm常用于 ...
- Hadoop专业解决方案-第1章 大数据和Hadoop生态圈
一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop生态圈小组已经翻译完成,在此 ...
随机推荐
- Android中竖线随内容高度变化而变化的问题和解决办法
项目中要求显示竖线,并且竖线高度不确定,竖线的高度要随着内容的变化而变化.不能使用match_parent 充满,也不能在布局中写死,此时使用 android:layout_height=" ...
- Java中的Integer和int
Java中的Integer是引用类型,而int是基本类型.Integer是int的包装器类型. java中的基本类型有布尔类型boolean;字符类型char;整数类型byte,int,long,sh ...
- centos7.5 安装mysql8.0
把这个rpm文件下载下来放到服务器上,或者在linux系统中通过wget命令下载 wget http://dev.mysql.com/get/mysql80-community-release-el7 ...
- 第一天接触stm32
1.先新建一个文件夹,里面分别键六个名为COMSIS.FWLIB.HARDWARE.MDK.OBJ.USER的空文件夹 2.创建好文件夹就可以往里面添加文件啦,这三个文件夹放置如图所示的文件,其余三个 ...
- Python Day 11
阅读目录 内容回顾 函数的参数 函数的嵌套调用 ##内容回顾 # 什么是函数:具体特定功能的代码块 - 特定功能代码块作为一个整体,并给该整体命名,就是函数 # 函数的优点: # 1.减少代码的冗余 ...
- 理解RNN
摘自:https://zybuluo.com/hanbingtao/note/541458 语言模型就是这样的东西:给定一个一句话前面的部分,预测接下来最有可能的一个词是什么. 语言模型是对一种语言的 ...
- UC浏览器input文本框输入文字回车键自动提交
这是测试今天在jira给我提出的一个bug 下面是贴的代码 屏蔽或者禁止回车键 <!DOCTYPE html> <html> <head> <meta cha ...
- 用chrome模拟微信浏览器访问页面
有的网页通过限制 user agent 来达到禁止在微信浏览器以外的地方访问,我们通过chrome修改user agent即可破解. CHROME浏览器,进入开发者模式 切换到手机浏览模板 打开 N ...
- post文件下载
this.$http({ method: 'post', url: '/file/download', responseType: 'blob', data: JSON.stringify(this. ...
- sudo -iu [用户] 命令无法正常切换到用户目录的原因
今天干活时遇到一个问题,在sudo -iu [用户]命令执行后无法切换到用户对应的[ 用户@机器 ~$ ]命令行 .bashrc已正常配置为 if [ -f /etc/bashrc ]; then . ...