赞
踩
Volume(大量)
Variety(多样)
Veloctiy(高速)
Value(价值密度低)
Veracity(真实性)
bit,Byte,KB,MB,GB,TB,PB,EB,ZB,YB,BB,NB,DB
疫情防控
健康吗
行程码
hadoop是一个由apache基金会 开发的分布式系统基础架构
主要目的 : 解决海量数据的存储 ,海量数据的计算 。
高可靠性
高扩展性
高效性
高容错性
低成本(开源的 )
Hadoop HDFS 是一个高可靠,高吞吐量 的分布式文件系统
Hadoop MapReduce 一个分布式离线计算框架
Hadoop YARN 作业调度和集群资源管理的框架
Hadoop Common 支持其他模块的工具模块 (Configuration ,序列化机制,日志操作)
Hadoop Ozone Hadoop 对象存储系统
HDFS 是一个分布式文件系统 ,采用的是主从架构 , 一个HDFS由一个NameNode和多个DataNode组成 ,其中NameNode为主服务器 ,管理文件系统的命名空间 和客户端对象的访问操作,DataNode管理存储的数据。
NameNode;
在hadoop1中 ,只能有一个NameNode 。 在hadoop2中 ,可以配置多个NameNode,解决NameNode单点故障问题,。
DataNode:
主要负责客户读写请求 ,在本地文件系统存储文件块数据,以及块数据的校验.
来存储真正的数据
yarn是一个资源调度的平台 ,负责为运算程序提供服务器运算资源 , 著亚欧一个 ResourceManager 和若干个NodeManager构成 ,在执行任务的时候还有一个 applicationMaster存在。
ResourceManager :
用来处理客户端的任务请求 ,监控NodeManager ,做资源的调度与分配
NodeManager:
单个节点的资源管理器
MapReduce 是一个分布式计算系统 ,将一个计算过程分为两个阶段 ,Map阶段和Reduce阶段 ,
Map阶段分而治之地处理输入的数据 ,Reduce阶段用来合并map 阶段的计算 。
大数据的转换
银行信用卡欺诈性检测
社交媒体市场分析
零售行业购物模式分析
#在当前主机上ssh登录当前主机 不需要密码 ssh localhost #进入到当前的ssh目录 cd ~/.ssh # 一直回车即可 ssh-keygen -t rsa +---[RSA 2048]----+ | ..*O@| | . + .oX=| | . o +.B =| | . +E+.++| | S .+.+o+| | .++. | | ..+ o | | .o+.+ | | *Oo. | +----[SHA256]-----+ # 加入授权 cat ./id_rsa.pub >> ./authorized_keys
分为3中模式
1:单机模式:只在一台计算机上运行,采用本地文件系统,何有采用分布式的文件HDFS
2:伪分布模式:存储采用分布式文件系统HDFS,但是HDFS名称节点和数据节点都在同一台计算机上
3:分布式模式:存储是采用分布式文件系统HDFS,而且HDFS的名称节点和数据节点位于不同的计算机上
下载上传安装文件
rz
解压软件
#解压文件到指定的目录
tar -zxf hadoop-2.10.0.tar.gz -C /usr/local/
#进入到指定目录
cd /usr/local/
#将文件夹的名字修改为hadoop
mv hadoop-2.10.0/ hadoop
查看一下版本号
#进入到hadoop目录下
[root@localhost hadoop]# ./bin/hadoop version
Hadoop 2.10.0
Subversion ssh://git.corp.linkedin.com:29418/hadoop/hadoop.git -r e2f1f118e465e787d8567dfa6e2f3b72a0eb9194
Compiled by jhung on 2019-10-22T19:10Z
Compiled with protoc 2.5.0
From source with checksum 7b2d8877c5ce8c9a2cca5c7e81aa4026
This command was run using /usr/local/hadoop/share/hadoop/common/hadoop-common-2.10.0.jar
需要修改一些配置文件 ,让hadoop在伪分布模式下顺利运行 ,配置文件都在 hadoop/etc/hadopp/
伪分布模式需要修改两个配置文件 ,即core-site.xml和hdfs-site.xml
使用vim编辑器打开core-site.xml进行配置
#进入到配置文件目录下
cd /usr/local/hadoop/etc/hadoop
vim core-site.xml
初始化内容为
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
</configuration>
配置后的内容为
<configuration>
<!-- hadoop的运行时候的临时目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<!-- 定义hadoop HDFS中的 NameNode的URI和端口-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
配置 hdfs-site.xml文件
初始化内容
修改后的内容
<configuration> <!--指定DataNode存储Block的副本数量,不大于DataNode的数量就可以--> <property> <name>dfs.replication</name> <value>1</value> </property> <!--元数据的储存目录 nameNode的节点--> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/name</value> </property> <!--dataNode 真正的数据存储的目录--> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/data</value> </property> </configuration>
如果遇到了这样的问题
localhost: Error: JAVA_HOME is not set and could not be found.
配置 hadop-env.sh
在第一行添加javaHome的引用
# JAVA_HOME 的路径为 你系统安装的java所在的路径
export JAVA_HOME=/usr/local/jdk1.8
修改配置文件以后,要执行名称节点的格式化
cd /usr/local/hadoop
#格式化的命令
./bin/hdfs namenode -format
./sbin/start-dfs.sh
输入jps查看进程
jps
13739 NameNode
14044 SecondaryNameNode
14205 Jps
13871 DataNode
hadoop启动成功后 ,则会列出一下的进程
NameNode DataNode SecondaryNameNode
在hdfs上创建一个目录
#在hdfs上创建一个目录
./bin/hdfs dfs -mkdir /user
#查看 目录的命令
./bin/hdfs dfs -ls /
#将系统中的文件复制到 hadoopHDFS文件系统中
./bin/hdfs dfs -put /home/fujun/下载/aaa/b.tt /user
linux常用命令 1. 命令基本格式 1.1 解析命令提示符 [root@localhost ~]# 解析: root:当前登录用户 localhost:主机名 ~:当前所在目录(家目录) #:超级用户的提示符 $:普通用户的提示符 1.2 解析命令格式 注意: 1. 个别命令的使用不遵循此格式 2. 当有多个选项时,可以写在一起 3. 简化选项-a等于完整选择-all 2. 目录处理命令 2.1 linux常见目录作用 命令 [选项] [参数] 目录名称 作用 / 根目录 /bin 命令保存目录 /sbin 命令保存目录(只有root能用) /boot 启动目录,系统启动的相关文件 /dev 设备文件保存目录 /etc 配置文件保存目录 /home 普通用户的家目录 /root 超级用户的家目录 /usr 系统软件资源目录 /usr/bin 保存命令的目录 /usr/sbin 保存命令的目录(只有root能用) /temp 临时目录 /lib 系统库保存目录 /mnt 系统挂载目录,用于挂在外接存储设备 /media 挂载目录,用于挂在外接存储设备(在原来的linux系统中没有) /misc 挂载目录,用于挂在外接存储设备(在原来的linux系统中没有) /proc 内存过载点;这两个目录的内容直接写在内存,因此不能直接操作 /sys 内存过载点;这两个目录的内容直接写在内存,因此不能直接操作 /var 系统相关文档内容 2.2 查询目录中的内容 选项: -a:显示所有文件,包括隐藏文件 -l:显示详细信息 -d:查看目录属性 -h:人性化显示文件大小 -i:显示inode 2.2 建立目录 ls [选项] [文件或目录] 选项: -p:递归创建 2.3 切换所在目录 2.4 显示当前所在目录 2.5 删除空目录 3. 文件处理命令 3.1 创建空文件 3.2 删除文件或目录 选项: mkdir -p [目录名] cd [目录] # 进入家目录 cd ~ # 进入家目录 cd # 返回上次的目录 cd - # 进入上一级目录 cd .. # 进入当前目录 cd . # 显示当前所在目录 pwd # 删除空白目录,若包含文件则不能删除 rmdir [目录] touch [文件名] rm [文件或目录] -r:删除目录 -f:强制 注意:rm -rf / 强制删除根目录下的所有(相当于自杀,绝对不可以使用) 3.3 复制文件或目录 选项: -r:复制目录 -p:连带文件属性复制 -d:若原文件是链接文件,则复制链接属性 -a:相当于都复制 同-pdr 3.4 剪切或改名 用于改名或剪切 3.5 搜索文件 选项: -name:文件名称 -iname:不区分大小写 可以使用通配符: * 匹配任意内容 ? 匹配任意一个字符 [] 匹配任意一个中括号内的字符 3.6 文件链接 文件链接分两种,一种被称为硬连接,另一种被称为软连接(符号连接) 硬连接 简单来说就是两个文件名指向同一个文件,删除其中任何一个都不会影响另外一个的访问,文件真正删除的条件是 与之相关的所有硬连接文件均被删除。 软连接 cp [选项] [原文件或目录] [目标目录] mv [原文件或目录] [目标目录] find [搜索范围] [搜索条件] ln 被连接文件 连接文件 软连接文件有类似于Windows的快捷方式。连接文件实际上是一个文本文件,其中包含的有另一文件的位置信息。 如果被连接文件被删除了,连接文件仍然存在,但指向的是一个无效的连接。 4. 文件查看和编辑 4.1 查看 4.2 编辑 vi/vim 共分为三种模式,分别是命令模式,输入模式和底线命令模式。 命令模式 启动vi/vim,便进入了命令模式。此状态下敲击键盘动作会被vim识别为命令,而非输入字符。 常用命令: ln -s 被连接文件 连接文件 # 从第一个字节开始正向查看 cat 文件名 # 从最后一行开始反向查看 tac 文件名 # 查看一个文件的前n行,n为指定行数 head -n 文件名 # 查看一个文件的后n行,n为指定行数 tail -n 文件名 # 查看一个长文件 more 文件名 # 与more类似,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件 # b 向后翻一页 d 向后翻半页 u 向前滚动半页 y 向前滚动一行 q 退出less命令 # 空格键 滚动一页 回车键 滚动一行 pagedown 向下翻动一页 pageup 向上翻动一页 less 文件名 vi 文件名 vim 文件名 命令 说明 Ctrl + f 屏幕向下移动一页,相当于Page Down键 Ctrl + b 屏幕向上移动一页,相当于Page Up键 0或Home键 移动到这一行的最前面字符处 $或End键 移动到这一行的最后面字符处 gg 移动到这个档案的第一行 G 移动到这个档案的最后一行 数字 + Enter键 向下移动指定行数 x(小写) 向后删除一个字符,相当于del键 X(大写) 向前删除一个字符,相当于backspace键 dd 删除光标所在的那一行 yy 复制光标所在的那一行 p(小写) 将已复制的数据,粘贴在光标下一行 P(大写) 将已复制的数据,粘贴在光标上一行 u 复原前一个动作,撤销 . 重复前一个动作 命令 说明 i 在目前光标所在处输入 I 在光标所在行的第一个非空格符处开始输入 a 在目前光标所在的下一个字符处开始输入 A 在光标所在行的最后一个字符处开始输入 o 在光标所在的下一行输入新的一行 O 在光标所在的上一行输入新的一行 Esc 退出输入模式,回到命令模式 输入模式 进入输入模式的命令: 底线命令模式 在命令模式下按下:(英文冒号)就进入了底线命令模式。 命令 说明 :w 将编辑的数据写入硬盘档案中 :wq 存档并离开 ZZ 存档并离开 :q! 不存档并离开 :set number 显示行号 5. 压缩命令 5.1 常用的压缩格式 .zip,.gz,.bz2 .tar.gz,.tar.bz2 实际情况下更加常用 5.2 .zip格式 压缩 解压 5.3 .gz格式 压缩 解压 # 将源文件压缩为.zip格式的压缩文件 zip 压缩文件名 源文件 # 将源目录压缩为.zip格式的压缩文件 zip -r 压缩文件名 源目录 # 解压缩 unzip 压缩文件名 # 解压缩到指定的目标目录 unzip 压缩文件名 -d 目标目录 # 压缩为.gz格式的压缩文件,源文件会消失 gzip 源文件 # 压缩为.gz格式,源文件保留 gzip -c 源文件 > 压缩文件 # 压缩目录中所有的子文件,但是不能压缩目录 gzip -r 目录 5.4 .bz2格式 压缩 注意:bzip2命令不能压缩目录 解压 5.5 .tar打包 打包 选项: -c 打包 -v 显示过程 -f 指定打包后的文件名 查看内容 -t 列出包中内容 解打包 gzip -d 压缩文件 gunzip 压缩文件 # 压缩为.bz2格式,不保留源文件 bzip2 源文件 # 压缩之后保留源文件 bzip2 -k 源文件 bzip2 -d 压缩文件 bunzip2 压缩文件 # 压缩之后保留源文件 bzip2 -d 压缩文件 -k # 压缩之后保留源文件 bunzip2 压缩文件 -k # 单文件/目录打包 tar -cvf 打包文件名 源文件/目录 # 多文件/目录打包 tar -cvf 打包文件名 源文件/目录1 源文件/目录2 ... tar -tf 打包文件名 选项: -x 解打包 -C 改变至目录 5.6 .tar.gz压缩格式 .tar.gz格式是先打包为.tar格式,再压缩为.gz格式 压缩: 解压: 5.7 .tar.bz2压缩格式 压缩: 解压: 6. 文件上传与下载 在linux里可使用lrzsz 程序代替ftp上传和下载。 6.1 上传 6.2 下载 7. 安装管理工具 在Linux上软件包的安装和写在是通过安装管理工具来实现的。 tar -xvf 打包文件名 # 解打包到指定目录 tar -xvf 打包文件名 -C 目标目录 tar -zcvf 压缩包名 源文件 tar -zxvf 压缩包名 tar -jcvf 压缩包名 源文件 tar -jxvf 压缩包名 rz sz 文件所在目录/文件名 7.1 rpm命令 rpm命令是RPM软件包的管理工具,rpm(redhat package manager)是Red Hat Linux发行版专门用来管理 Linux各项套件的程序。 RPM包安装 选项: -i:安装 -v:显示详细信息 -h:显示进度 --nodeps:不检测依赖性 RPM包升级 选项: -U:升级 RPM包的卸载 选项: -e:卸载 RPM包的查询 rpm -ivh 安装包全名 rpm -Uvh 安装包全名 rpm -evh 安装包全名 #查询是否安装: rpm -q 包名 #查询所有已经安装的RPM包 rpm -qa #查询软件包的详细信息: rpm -qi 包名 #查询包中文件安装位置 rpm -ql 包名 #查询系统文件属于哪个RPM包 rpm -qf 系统文件名 #查询软件包的依赖性 rpm -qR 包名 选项: -q:查询 -a:所有 -i:查询软件信息 -l:列表 -f:查询系统文件属于哪个RPM包 -R:查询软件包的依赖性 7.2 yum命令 yum(Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基于 RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的 软体包,无须繁琐地一次次下载、安装。 查询所有包 搜索包 安装包 卸载包 更新包 重新安装包 显示包的信息 # 在远程服务器上查询所有可用的软件包列表 yum list # 搜索远程服务器上所有和关键字相关的包 yum search 关键字 yum install 包名 # 安装过程中自动回答yes yum -y install 包名 yum remove 包名 # 更新所有已安装的包 yum update # 更新指定的包 yum update 包名 yum reinstall 包名 命令 说明 su 用户名 切换用户 clear 清屏 date 显示日期时间 cal 显示日历 hostname 显示主机名 ping 测试网络 ifconfig 显示网络信息 df -h 显示磁盘的使用情况 top 显示系统进程动态信息,类似于Windows的任务管理器 ps -aux 显示系统进程瞬间的状态,并不动态连续 kill -9 PID 根据进程PID终止进程 shutdown -r now 立刻重启 shutdown -r 10 10分钟后重启 shutdown -h now 立刻关机 shutdown -h 10 10分钟后关机 shutdown -c 取消 man 命令名称 命令解析 显示yum历史 显示已启用的yum存储库的列表 清除缓存 8. 系统命令 yum info 包名 yum history yum repolist yum clean all
#进入到hadoop的目录下
cd /usr/local/hadoop
#执行关闭的命令
./sbin/stop-dfs.sh
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。