大数据处理导论笔记
第一章 大数据的概念
- 数据量大 (Volume);
- 数据类型繁多 (Variety);
- 处理速度快 (Velocity);
- 价值密度低 (Value);
大数据关键技术
大数据包括数据和大数据技术二者的综合。大数据技术主要包括数据采集、数据存储和管理、数据处理与分析、数据安全和隐私保护等几个层面的内容。
大数据技术是许多技术的集合体,这些技术也并非全部都是新生事务,诸如关系数据库、数据仓库、数据仓库技术(ETL)、 联机分析处理(OLAP)、数据挖掘、数据隐私和安全、数据可视化等已经发展多年的技术。
第二章 Hadoop
Hadoop历程
Hadoop | |
---|---|
谷歌文件系统GFS (Google File System) | 分布式文件存储系统NDFS (Nutch Distributed File System) |
编程模型MapReduce | 编程模型MapReduce |
分布式数据存储系统BigTable | 分布式数据存储系统HBase |
Hadoop概述
Hadoop的核心是分布式文件系统HDFS(Hadoop Distributed File System)和MapReduce。
Hadoop具有高可靠性、高效性、高可扩展性、高容错性、成本低、运行在Linux平台上、支持多种编程语言等特点。
目前,Hadoop在国外被Yahoo和Facebook所应用;国内的百度、阿里巴巴、腾讯、华为也均使用Hadoop。
选做实验:Hadoop3.3.1伪分布式安装
Windows安装虚拟机
下载VMware,用VMware安装Ubuntu20.04。
踩坑:在虚拟机内右键将VMwareTools-10.1.15-6627299.tar.gz提取至桌面时报错内存不足。
解决办法:关闭虚拟机,设置虚拟机磁盘空间由20G变为40G。
创建Hadoop用户
sudo adduser datawhale # 创建datawhale用户
su datawhale # 切换到datawhale用户
Java的安装
sudo tar -xzvf /data/hadoop/jdk-8u311-linux-x64.tar.gz -C /opt
踩坑:/data/hadoop文件夹因权限问题无法添加压缩包。
解决办法:输入sudo nautilus,然后进行添加。
注意:如果sudo命令无法使用,请直接切换到root用户,su root或sudo -i
踩坑:无法使用root用户,密码老是错误。
解决办法:未设置root用户密码,输入sudo passwd root设置密码后解决。
修改系统环境变量
sudo vim /etc/profile
踩坑:无法使用vim命令
解决方法:未安装vim,使用sudo apt-get install vim命令。如果报错,先使用sudo apt-get update再使用sudo apt-get upgrade,然后输入sudo apt-get install vim。如果sudo apt-get update报错误无法解析域名,可能是修改apt源的问题,可以使用sudo vim /etc/apt/sources.list命令将所有内容修改为国内源,具体操作可参考 https://www.cnblogs.com/gaojia-hackerone/p/15202230.html。
SSH登录权限设置
对于Hadoop的伪分布和全分布而言,Hadoop名称节点(NameNode)需要启动集群中所有机器的Hadoop守护进程,这个过程可以通过SSH登录来实现。Hadoop并没有提供SSH输入密码登录的形式,因此,为了能够顺利登录每台机器,需要将所有机器配置为名称节点,可以通过SSH无密码的方式登录它们。
最后通过ssh localhost命令来检测一下是否需要输入密码。
注:如果遇到ssh连接localhost被拒绝,可能是没有安装openssh-server。可参考https://blog.csdn.net/XiaoPANGXia/article/details/53412180?utm_source=blogkpcl11。
踩坑:在安装openssh-server时,使用sudo apt-get install openssh-server,报错安装有依赖其他安装包问题。
解决方法:先使用sudo apt-get update再使用sudo apt-get upgrade,然后sudo apt-get install openssh-server。如果还继续报错,尝试通过sudo vim /etc/apt/sources.list增加sourcelist内的源,再重复以上步骤。
安装单机版Hadoop
此处没有踩坑,按照教程来即可~
Hadoop伪分布式安装
- 修改core-site.xml文件配置;
- 修改hdfs-site.xml文件配置;
- 修改mapred-site.xml文件配置;
- 修改yarn-site.xml文件配置;
- 格式化分布式文件系统;
踩坑: 使用hdfs namenode -format执行初始化命令时,报错没有hdfs这条命令。
解决办法:是因为之前的环境配置还没激活,使用source /etc/profile,后hdfs namenode -format即可。 - 启动Hadoop;
- 查看Hadoop进程;
- Hadoop WebUI管理界面;
- 测试HDFS集群以及MapReduce任务程序
踩坑: 使用hadoop fs -put /home/datawhale/test /input将测试文件上传到Hadoop HDFS集群目录时,报错没有正在运行的datanode。
解决办法:是因为DataNode没有启动,具体参考https://www.cnblogs.com/mtime2004/p/10008325.html,其中current的VERSION路径可能与csdn blog里的路径不同,可以在报错信息内查看相应路径。