第一章 大数据概述
1.1数据的价值
数据的价值在于对所占有的数据进行深入分析, 实现开发利用,从中发现新知识、创造新价值,提升新能力,取得实实在在的工作成效。
1.2大数据的四个特点(4V)
数据量大(Volume)、数据类型繁多(Variety)、处理速度快( Velocity)和价值密度低(Value)。
1.3 大数据关键技术
大数据并非仅指数据本身,而是数据和大数据技术这二者的综合。
所谓大数据技术,是指伴随着大数据的采集、传输、处理和应用的相关技术,是一系列使用非传统的工具来对大量的结构化、半结构化和非结构化数据进行处理,从而获得分析和预测结果的一系列数据处理和分析技术。
从数据分析全流程的角度,大数据技术是许多技术的一个集合体,主要包括数据采集、数据存储和管理、数据处理与分析、数据安全和隐私保护等几个层面的内容。
第二章 Hadoop
2.1 Hadoop相关知识
Hadoop的出现 |
Yahoo收购前,名为NDFS |
GFS(Google File System):Google公司为了存储海量搜索数据而设计的专有分布式文件系统(只能有一个服务器)。
NDFS(Nutch Distributed File System):Doug Cutting基于Google的GFS论文,实现的分布式文件存储系统。
MapReduce编程模型:主要用于大规模数据集(大于1TB)的并行分析运算。
BigTable:Google的分布式数据存储系统,一种用来处理海量数据的非关系型数据库。
HBase:Doug Cutting在Hadoop系统中引入了BigTable之后,取名为Hbase。
2.2 Hadoop
2.2.1 什么是Hadoop?
Hadoop是Apache软件基金会旗下的一个开源分布式计算平台,为用户提供了系统底层细节透明的分布式基础架构。Hadoop是基于Java语言开发的,具有很好的跨平台特性,并且可以部署在廉价的计算机集群中。其核心是分布式文件系统HDFS(Hadoop Distributed File System)。
2.2.2 Hadoop的特性
高可靠性:采用冗余数据存储方式(存储在同一个可用区内多个设施的多个设备上),即使一个副本发生故障,其他副本也可以保证正常对外提供服务。
高效性:Hadoop采用分布式存储和分布式处理两大核心技术,能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。
高可拓展性:Hadoop的设计目标是可以高效稳定地运行在廉价的计算机集群上。
高容错性:采用冗余数据存储方式,自动能够保存数据的多个副本,并且能够自动将失败的任务重新分配。
成本低:Hadoop采用廉价的计算机集群,成本较低。
运行在Linux平台上:Hadoop是基于java语言开发的,可以较好地运行在Linux平台上。
支持多种编程语言:Hadoop上的应用程序也可以使用其他语言编写,如C++。
2.3 Hadoop的项目架构
Common:Common是为Hadoop其他子项目提供支持的常用工具,它主要包括FileSystem、RPC和串行化库,它们为在廉价的硬件上搭建云计算环境提供了基本的服务,并为运行在该平台上的软件开发提供了所需的API。
Avro:用于数据库序列化的系统,它提供了丰富的数据结构类型、快速可压缩的二进制数据格式、存储持久性数据的文件集、远程调用RPC的功能和简单的动态语言集成功能,
HDFS:Hadoop分布式文件系统(Hadoop Distributed File System,HDFS),它是针对谷歌文件系统(Google File System,GFS)的开源实现。HDFS具有处理超大数据、流式处理、可以运行在廉价商用服务器上等优点。
HBas:HBase是一个提供高可靠性、高性能、可伸缩、实时读写和分布式的列式数据库,一般采用HDFS作为其底层数据存储。
Pig:Pig是一种数据流语言和运行环境,适合于使用Hadoop和MapReduce的平台来查询大型半结构化数据集。
Sqoop:Sqoop可以改进数据的互操作性,主要用来在Hadoop和关系数据库之间交换数据。
Chukwa:Chukwa是开源的数据收集系统,用于监控和分析大型分布式系统的数据。
Zookeeper:Zookeeper是一个为分布式应用所涉及的开源协调服务,主要为用户提供同步、配置管理、分组和命名等服务,减轻分布式应用程序所承担的协调任务。
2.4 实验一 Hadoop 3.3.1 的伪分布式安装
2.4.1 Linux系统输入密码不回显
2.4.2 sudo mv —— mv是move的缩写,可以用来移动文件或者给文件改名
2.4.3 root才是最终的管理者,初始新建的的用户只是用户
2.4.4 adduser;userdel;killall -u <xxx>
2.4.5 Vim编辑器,i进入编辑模式,ESC退出编辑模式,shift+:wq保存并退出
2.4.6 Hadoop伪分布,正常来说,分布式文件系统将数据存储在多台计算机之中,但是目前只存储在一台计算机之中,因此叫做伪分布
2.4.7 SSH(Secure Shell,安全外壳)是一种网络安全协议,通过加密和认证机制实现安全的访问和文件传输等业务。
SSH的连通测试