Hadoop学习之整体介绍及环境搭建

1 大数据概述

1.1 什么是大数据

数据(data)是事实或观察的结果,是对客观事物的逻辑归纳,是用于表示客观事物的未经加 工的的原始素材。

大数据:传统处理方式无法解决的不仅大而且复杂的数据集的存储和计算。

1.2 大数据的四个特性

(1)容量(Volume):数据的大小决定所考虑的数据的价值和潜在的信息

(2)种类(Variety):数据类型的多样性,包括文本,图片,视频,音频等

(3)速度(Velocity):指获得数据的速度以及处理数据的速度

(4)价值(Value):合理运用大数据,以低成本创造高价值

容量大,种类多,速度快(产生数据的速度快,要求时延小 ),价值高( 整体价值,单条记录没有价值 )

1.3 大数据价值应用

将各个小型数据集合并后进行分析可得出许多额外的信息和数据关系性,可用来政治经济国庆调控、察觉 商业趋势、判定研究质量、避免疾病扩散、打击犯罪或测定即时交通路况等。

2 Hadoop概述

2.1 什么是Hadoop

大数据存储和计算的一整套解决方案,软件平台。

Hadoop 提供的功能:利用服务器集群,根据用户的自定义业务逻辑,对海量数据进行分 布式处理

2.2 Hadoop的核心组件

Common(基础设施):工具包,RPC 框架等

HDFS(Hadoop Distributed File System): 分布式的文件系统(海量数据的存储)

MapReduce: 分布式的计算框架(海量数据离线运算)

Yarn(Yet Another Resources Negotiato): 分布式资源调度系统(2.x后才有)

2.3 Hadoop的发行版本

apache hadoop: 2008年,初学者入门,简单易入手

cloudera hadoop: 2009年,企业中使用 CDH,性能强

hortonworks hadoop: 2011年,文档全面

2.4 Hadoop的相关组件

(1)Hive:基于大数据技术的SQL数据仓库工具,可以将结构化的数据文件映射为一张数据库   表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。

(2)HBase:基于 Hadoop 的列式分布式 NoSQL 数据库

(3)Zookeeper:分布式协调服务基础组件

(4)Sqoop:数据导入导出工具

(5)Ambari:创建、管理、监视 Hadoop 的集群,是为了让 Hadoop 以及相关的大数据软件更容易使用的一个web工具。

(6)Flume:日志数据采集框架

(7)Oozie/Azkaban:工作流调度引擎

(8)Mahout:基于 MapReduce/Flink/Spark 等分布式运算框架的机器学习算法库

2.5 分布式和集群的区别

分布式:不同的业务模块部署在不同的服务器上或者同一个业务模块分拆多个子业务,部署在不同的服务器上,解决高并发的问题。

集群:同一个业务部署在多台机器上,提高系统可用性

分布式的主要工作是分解任务,将职能拆解;集群主要的使用场景是为了分担请求的压力,也就是在几个服务器上部署相同的应用程序,来分担客户端请求,主要是简单加机器解决问题,对于问题本身不做任何分解。

分布式处理里必然包含任务分解与结果归并。分布式中的某个子任务节点,可能由一个集群来代替;集群中任一节点,都是做一个完整的任务。集群和分布式都是由多个节点组成,但是集群之间的通信协调基本不需要;而分布式各个节点的通信协调必不可少。

将一套系统拆分成不同子系统部署在不同服务器上(分布式),然后部署多个相同的子系统在不同的服务器上(集群),部署在不同服务器上的同一个子系统应做负载均衡。

3 Hadoop完全分布式集群搭建

3.1 准备工作

(1)准备多个节点(比如3台)

(2)修改ip地址,静态ip地址

(3)修改主机名称和主机映射

(4)系统启动级别

(5)防火墙和selinux关闭:selinux:linux的安全管理策略文件位置/etc/selinux/config

(6)同步时间:ntpdate ntp1.aliyun.com

(7)jdk安装

(8)ssh免密登录

3.2 完全分布式集群搭建

(1)下载hadoop软件包:http://hadoop.apache.org/或http://archive/apache.org/dist/

(2)上传到服务器:put -r hadoop.tar.gz

(3)解压:

(4)进程规划:例子如下

bigdata01 bigdata02 bigdata03
Namenode    
DataNode DataNode DataNode
    SecondaryNameNode
  ResourceManager  
NodeManager NodeManager NodeManager

(5)配置

①hadoop-env.sh

#配置整个hadoop的环境,hadoop进程是jvm进程,配置jdk的环境变量

export JAVA_HOME=jdk的安装目录

②core-site.xml

默认的文件系统,默认(file:///本地文件系统),

hdfs://ip:port        hdfs集群的入口地址(namenode:客户端的请求和响应)

这个配置说明:①使用分布式的文件系统

②namenode所在的节点为bigdata

③hdfs集群的访问路径: hdfs://hdp01:9000

<property>

<name>fs.defaultFs</name>

<value>hdfs://bigdata01:9000</value>

</property>

临时文件的存储目录

<property>

<name>hadoop.tmp.dir</name>

<value>/home/refuel/opt/module/hadoop-2.7.7/data</value>

</property>

③hdfs-site.xml

dfs.replication:副本数(默认3个)

dfs.blocksize:每个块的大小(1.x默认64M   2.x默认128M)

namenode的元数据存储的目录

<property>

<name>dfs.namenode.name.dir</name>

<value>/home/refuel/opt/module/hadoop-2.7.7/data/name</value>

</property>

datanode的lock信息存储的目录

<property>

<name>dfs.datanode.data.dir</name>

<value>/home/refuel/opt/module/hadoop-2.7.7/data/data</value>

</property>

secondarynamenode的节点配置

<property>

<name>dfs.secondary.http.address</name>

<value>bigdata03:50090</value>

</property>

④mapred.site.xml

将mapred-site.xml.template 复制一份并重命名为mapred-site.xml

mapreduce的作业运行平台

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

⑤yarn-site.xml

配置Resourcemanager的主机名

<property>

<name>yarn.resourcemanager.hostname</name>

<value>bigdata02</value>

</property>

NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

⑥slaves

从节点的列表

bigdata01

bigdata02

bigdata03

⑦环境变量

(1)/etc/profile


(2)当前用户:
          ~/.bashrc
           ~/.bash_profile
  
         export HADOOP_HOME=/home/hadoop/hadoop-2.7.7
         export PATH=$PATH:$HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source .bash_profile

⑧发送到其他节点

⑨hdfs集群(namenode)格式化

hdfs namenode -format (除第一次格式化外,其他次格式化需要将logs文件及相关的data文件删除)

⑩启动集群

1.逐个进程启动
  hadoop-daemon.sh start/stop namenode/datanode/secondarynamenode
  yarn-daemon.sh start/stop ResourceManager/NodeManager
2.整个集群启动(涉及到通信,ssh免密登录)
  start-dfs.sh/stop-dfs.sh
  start-yarn.sh(必须在rm节点启动)/stop-yarn.sh
3.全部启动
  start-all.sh/stop-all.sh

Hadoop学习之整体介绍及环境搭建相关推荐

  1. PHP从入门到放弃之(一)PHP介绍PHP学习路线图PHP开发软件环境搭建

    一.什么是PHP? PHP(外文名:PHP: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言.语法吸收了C语言.Java和Perl ...

  2. MyBatis-学习笔记01【01.Mybatis课程介绍及环境搭建】

    Java后端 学习路线 笔记汇总表[黑马程序员] MyBatis-学习笔记01[01.Mybatis课程介绍及环境搭建][day01] MyBatis-学习笔记02[02.Mybatis入门案例] M ...

  3. nginx学习笔记-01nginx入门,环境搭建,常见命令

    nginx学习笔记-01nginx入门,环境搭建,常见命令 文章目录 nginx学习笔记-01nginx入门,环境搭建,常见命令 1.nginx的基本概念 2.nginx的安装,常用命令和配置文件 3 ...

  4. phalapi-入门篇1(简单介绍以及环境搭建)

    2019独角兽企业重金招聘Python工程师标准>>> #phalapi-入门篇1(简单介绍以及环境搭建)# ##前言## 先在这里感谢phalapi框架创始人@dogstar,为我 ...

  5. uni-app实战之社区交友APP(1)项目介绍和环境搭建

    文章目录 前言 一.项目介绍 二.环境搭建和创建项目 1.开发环境搭建 2.创建uni-app项目 三.多端调试环境搭建 1.安卓手机调试配置 2.iOS真机调试配置 3.微信小程序调试配置 4.支付 ...

  6. 【opencv4】opencv视频教程 C++(opencv教程)1、opencv介绍和环境搭建

    下一讲:[opencv4]opencv视频教程 C++(opencv教程)2.加载,修改,保存图像 [opencv_C++] 入门强推!!![B站最全] 文章目录 opencv介绍和环境搭建 open ...

  7. Web应用测试(一)Selenium介绍及环境搭建

    Selenium介绍及环境搭建 一.背景介绍: (更好的阅读体验,请移步我的个人博客)软件测试比赛刚刚落下帷幕,在空档期,写写这些天的感受.不知不觉参加了好多次软件测试比赛了,开发者测试,移动应用测试 ...

  8. 华芯微特SWM181学习笔记--GPIO应用与环境搭建

    华芯微特SWM181 系列 32 位 MCU(以下简称 SWM181)内嵌 ARM® CortexTM-M0 内核, SWM181 支持片上包含精度为 1%以内的 24MHz.48MHz 时钟,并提供 ...

  9. 强化学习——蛇棋游戏gym环境搭建

    强化学习--蛇棋游戏gym环境搭建   学习强化学习精要核心算法与Tensorflow实现这本书中,关于蛇棋游戏利用gym搭建.游戏的规则非常简单,详细请参考冯超的书<<强化学习精要核心算 ...

最新文章

  1. AI 技术与人类主体想象 ——基于人工直觉在线讨论的研究
  2. IT新人如何快速成长
  3. BAT脚本加防火墙455端口
  4. 魅蓝x android 7,魅蓝x2什么时候发布 魅蓝x2发布时间最新消息
  5. python中字符串注意事项
  6. Python基础----字符串
  7. nginx ---- nginx.conf核心配置文件
  8. 跟女朋友约会一般都干些什么?
  9. 搭建redis主从复制,遇到的问题总结
  10. logging模块(二十六)
  11. After Effects CC 2019 for Mac(AE中文直装版)
  12. 读《MySQL是怎样运行的》笔记记录
  13. aws linux vps使用教程,亚马逊云(AWS)注册账号和启动服务器EC2(centos镜像)教程(踩坑记)...
  14. 翻译PDF 翻译PPT 保留原格式 一键搞定
  15. 「Hortic Res」APETALA2的同源物CaFFN可调节辣椒的开花时间
  16. 租用云主机可以做什么用?
  17. MATLAB设计控制系统仿真实验,基于MATLAB的自动控制原理实验仿真系统的设计
  18. CAS:385437-57-0,DSPE-PEG-Biotin,磷脂-聚乙二醇-生物素用于生物分子的检测
  19. 【重磅】马晓东所著的《数字化转型方法论》获“大数据科技传播奖”,与李兰娟等10位院士、BAT高管共获殊荣
  20. C语言(四):程序流程结构

热门文章

  1. Golang切片的三种简单使用方式及区别
  2. java异常个人理解
  3. java学习笔记IO之字节输入输出流
  4. ASP.NET开发,简化与封装
  5. 可遇不可求的Question之不支持一个STA 线程上针对多个句柄的WaitAll
  6. boost库在ubuntu下的安装
  7. 美图赏析:拆解USB无线网卡,电路方案非常经典
  8. 你确定你会使用git commit?
  9. html判断整数小数点后两位小数点,js控制input框只能输入数字和一位小数点且小数点后面只有两位小数...
  10. 根据大小分割大文本_基于深度学习的图像分割在高德地图的实践