Hadoop 大数据第一天
大数据第一天 1.Hadoop生态系统
1.1 Hadoop v1.0 架构
MapReduce(用于数据计算)
HDFS(用于存储数据)
1.2 Hadoop v2.0 架构
MapReduce(用于数据计算,Hadoop提供计算框架) 其他非Hadoop计算框架
YARN(用户管理和分配集群资源,包括软硬件资源)
HDFS(用于存储数据)
1.3 Hive(基于MR的数据仓库)
类似SQL,通常用于离线数据处理(采用MapReduce)
可以理解为HQL->MR的语言翻译器
用途:用于日志、多维度数据分析
1.4 Pig(基于MR的数据分析工具)
定义了一种数据流语言Pig Latin
用途:用于数据离线分析
1.5 Mahout(数据挖掘库)
提供多种数学统计算法库
1.6 HBase(分布式数据库)
由表、列族、行键、时间戳组成
1.7 Zookeeper(分布式协作服务)
用途:统一命名、状态同步、集群管理、配置同步等
1.8 Sqoop(数据同步工具)
用途:用于Hadoop与传统数据库之间的数据传递
1.9 Flume(日志收集工具)
用途:收集日志文件
构成:agent、collector
1.10 Oozie(作业流调度工具)
用途:对不同的框架和作业进行统一的管理和调度,提高资源利用率;作业的状态监控和预警
1.11 版本演化
Apache版本————原生态 推荐2.x.x
CDH版本————打包发行版 推荐CDH5.0.0 2.HDFS————Hadoop分布式文件系统
2.1 优点
1.高容错性
数据自动保存多个副本
副本丢失后,自动恢复
2.适合批处理
移动计算而非数据
数据位置暴露给计算框架
3.适合大数据处理
4.流式文件访问
一次性写入,多次读取
保证数据一致性
5.可构建在廉价的机器上
通过多副本提高可靠性
提供了容错和恢复机制
2.2 缺点
1.低延迟数据访问
2.小文件存取
3.并发写入、文件随机修改
2.3 架构
1.NameNode————存储元数据
Active NameNode:激活NameNode,主Master(只有一个),管理HDFS的名称空间,数据块映射信息,配置副本策略等
Standby NameNode:热备NameNode,当Active NameNode出现故障时,快速切换为新的Active NameNode
2.Secondary NameNode————备份NameNode
3.DataNode————存储文件数据
Slave(可以有多个),存储实际数据块和执行数据块的读/写
4.数据块
a.文件被切成固定大小的数据块,其中默认大小为64MB,可配置,如果一个文件大小不足64MB,则单独存成一个数据块
b.一般来说每个数据块有三个副本
2.4 读写原理
1.读文件
1.客户端发送读文件请求给NameNode(通过Distributed FileSystem)
2.NameNode查找是否存在该文件,将查询相关结果返回给客户端
3.如果文件存在,将数据块存储信息返回给客户端,客户端根据数据块读取文件(通过FSData InputStream)
4.客户端关闭读数据连接(通过FSData InputStream)
2.写文件
1.客户端发送写文件请求给NameNode(通过Distributed FileSystem)
2.NameNode查找是否存在该文件,将查询相关结果返回给客户端
3.如果文件不存在,客户端将文件大小发给NameNode并开辟相关数据块(通过FSData OutputStream)
4.第一个DataNode接收完第一个数据包后(注意不是数据块,网络中的数据包),将数据包传给下个DataNode节点,并开始接收下一个数据包
5.第四步如此类推,接收完毕后,将信息返回给客户端
6.客户端关闭写数据连接(通过FSData OutputStream)并将完成信息回返给NameNode(通过Distributed FileSystem)
2.5 访问方式
1.Shell命令
2.Java API
3.REST API
4.其他
2.6 安装流程
1.硬件准备
2.软件准备(推荐CDH)
3.将Hadoop安装包分发到各个节点下
4.安装JDK
5.修改/etc/hosts配置文件
6.设置SSH免密码登陆
7.修改配置文件(修改后使用scp命令分发到各个节点)
8.启动服务
9.验证
2.7 常用的shell命令
dfs命令
namenode -format命令
dfsadmin命令
fsck命令
balancer命令
Hadoop 大数据第一天的更多相关文章
- 《Hadoop大数据架构与实践》学习笔记
学习慕课网的视频:Hadoop大数据平台架构与实践--基础篇http://www.imooc.com/learn/391 一.第一章 #,Hadoop的两大核心: #,HDFS,分布式文件系统 ...
- 【每天五分钟大数据-第一期】 伪分布式+Hadoopstreaming
说在前面 之前一段时间想着把 LeetCode 每个专题完结之后,就开始着手大数据和算法的内容. 想来想去,还是应该穿插着一起做起来. 毕竟,如果只写一类的话,如果遇到其他方面,一定会遗漏一些重要的点 ...
- 超人学院Hadoop大数据资源分享
超人学院Hadoop大数据资源分享 http://bbs.superwu.cn/forum.php?mod=viewthread&tid=770&extra=page%3D1 很多其它 ...
- 超人学院Hadoop大数据技术资源分享
超人学院Hadoop大数据技术资源分享 http://bbs.superwu.cn/forum.php?mod=viewthread&tid=807&fromuid=645 很多其它精 ...
- 超人学院Hadoop大数据资源共享
超人学院Hadoop大数据资源共享-----数据结构与算法(java解密版) http://yunpan.cn/cw5avckz8fByJ 訪问password b0f8 很多其它精彩内容请关注: ...
- hadoop大数据技术架构详解
大数据的时代已经来了,信息的爆炸式增长使得越来越多的行业面临这大量数据需要存储和分析的挑战.Hadoop作为一个开源的分布式并行处理平台,以其高拓展.高效率.高可靠等优点越来越受到欢迎.这同时也带动了 ...
- 【HADOOP】| 环境搭建:从零开始搭建hadoop大数据平台(单机/伪分布式)-下
因篇幅过长,故分为两节,上节主要说明hadoop运行环境和必须的基础软件,包括VMware虚拟机软件的说明安装.Xmanager5管理软件以及CentOS操作系统的安装和基本网络配置.具体请参看: [ ...
- Hadoop大数据部署
Hadoop大数据部署 一. 系统环境配置: 1. 关闭防火墙,selinux 关闭防火墙: systemctl stop firewalld systemctl disable firewalld ...
- (第1篇)什么是hadoop大数据?我又为什么要写这篇文章?
摘要: hadoop是什么?hadoop是如何发展起来的?怎样才能正确安装hadoop环境? 这些天,有很多人咨询我大数据相关的一些信息,觉得大数据再未来会是一个朝阳行业,希望能尽早学会.入行,借这个 ...
随机推荐
- js-JavaScript高级程序设计学习笔记21 改善JavaScript性能的方法
第24章 最佳实践 1.性能 1.避免全局查找 将在一个函数中会用到多次的全局对象保存在局部变量.比如多次使用document.getElement...,可以首先var doc=document,把 ...
- microsoft docx document operation with Java POI library
microsoft docx document operation with Java POI library combine multiple docx document into one docu ...
- <<< jquery简介、开头语法、在线开发手册
简介 jQuery是一个兼容多浏览器的javascript框架,核心理念是write less,do more(写得更少,做得更多).jQuery在2006年1月由美国人John Resig在纽约的b ...
- 交换机--Switch
交换机(Switch)意为"开关"是一种用于电(光)信号转发的网络设备.它可以为接入交换机的任意两个网络节点提供独享的电信号通路.最常见的交换机是以太网交换机. 这里的" ...
- C#+ AE 注意问题汇总(不断更新)
1.AE的COM对象释放问题尤其是IFeatureCursor 建议用 ESRI.ArcGIS.ADF.ComReleaser.ReleaseCOMObject(pObj); 或者 int iRefs ...
- .Net创建windows服务入门
本文主要记录学习.net 如何创建windows服务. 1.创建一个Windows服务程序 2.新建安装程序 3.修改service文件 代码如下 protected override void On ...
- CSS大杂烩(1)
box-sizing 有4种方式 border-box 用来减去padding内边框和边框 前提是设置好固定宽高 content-box 在宽和高之外内边距和边框 其实基本上和原来一样 inherit ...
- sql clear dblog
USE [master]GOALTER DATABASE ndFlightPolicy SET RECOVERY SIMPLE WITH NO_WAITGOALTER DATABASE ndFligh ...
- 一段freemarker高级分页效果的代码
<a onclick="page(1)">首页</a> [#if currpage != 1] [#assign last=currpage - 1] &l ...
- PHP之static静态变量详解(一)
什么是static静态变量?(以下为在C语言中的理解) 静态变量 类型说明符是static. 静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在静态存储区内分配存储单元),该 区域中的数据在 ...