大数据采集与分析技术-课件全套 第1-6章 大数据集群环境搭建 -大数据可视化与ECharts_第1页
大数据采集与分析技术-课件全套 第1-6章 大数据集群环境搭建 -大数据可视化与ECharts_第2页
大数据采集与分析技术-课件全套 第1-6章 大数据集群环境搭建 -大数据可视化与ECharts_第3页
大数据采集与分析技术-课件全套 第1-6章 大数据集群环境搭建 -大数据可视化与ECharts_第4页
大数据采集与分析技术-课件全套 第1-6章 大数据集群环境搭建 -大数据可视化与ECharts_第5页
已阅读5页,还剩259页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

TASK01大数据集群环境搭建大数据采集与分析技术·知识链接COURSEMAP课程目录与时间分配大数据集群环境搭建0201大数据概述建议10分钟02大数据的特征建议10分钟03大数据的核心技术建议10分钟04大数据分布式系统架构建议25分钟05环境搭建操作基础建议35分钟建议总时长90分钟;教师可按课堂基础调整。LEARNINGOUTCOMES学习目标大数据集群环境搭建031本任务主要实现高可用Hadoop大数据集群的搭建。首先准备3台安装CentOS操作系统的虚拟机作为集群节点,然后在每个节点上安装Java运行环境;接着安装ZooKeeper分布式协调系统;再进行Hadoop集群的安装与高可用配置;2最后部署Hive数据仓库工具,用于后续数据的提取、转换、加载、存储、查询和分析。CHAPTER01大数据概述1.3.11/504KNOWLEDGELINK大数据概述大数据集群环境搭建05大数据是指数量巨大、类型多样、处理速度快、数据源可靠性保证度低等综合属性的海量数据集合。在当今时代,计算机技术快速发展,互联网迅速普及,移动设备广泛应用于日常生活。在这样的背景下,数据量呈现出爆发式增长态势。个人活动、企业运营和社会运转均产生了大量数据,这些数据来源广泛且类型多样。然而,面对庞大的数据量,传统的数据处理方法显得“力不从心”。大数据技术的概念起源于20世纪中期,但直到20世纪80年代,随着计算机技术的发展和数据处理能力的提升,大数据才开始受到广泛关注并应用于各个领域。大数据技术通过对海量数据进行收集、分析和挖掘,揭示隐藏在数据中的规律和趋势,为决策提供清晰的思路和准确的依据。相较于传统的经验和直觉,基于数据的决策更可靠准确,也有助于优化资源配置。通过数据分析,企业能够更准确地预测市场需求、评估投资风险、优化供应链管理、提高资源利用效率。CHAPTER02大数据的特征1.3.22/506KNOWLEDGELINK大数据的特征大数据集群环境搭建07大数据的特征主要体现在以下几个方面。(1)数据量巨大。随着智能设备的普及,人类社会产生的数据量急剧增长。这种海量数据既为大数据处理提供了丰富的资源,也对数据处理技术提出了更高要求。(2)数据类型多。大数据既包含传统的结构化数据(如数据库中的表格数据),也包含非结构化数据(如网络日志、视频、图片、地理位置信息等)。多样的数据类型增加了数据处理的复杂程度,同时也为数据挖掘和机器学习等技术的应用提供了更多可能性。(3)处理速度快。大数据处理需要在合理时间范围内完成数据的采集、管理、处理和分析,以支持企业决策。这就要求大数据处理系统具备高效的数据处理能力,能够在短时间内完成大量数据的分析和处理,满足实时性需求。(4)价值密度低。海量数据中真正有价值的信息往往只占一小部分。因此,大数据处理的核心任务之一就是从大量数据中提取有价值的信息,这需要对数据进行深度挖掘和过滤,以发现其中的规律和模式。(5)数据真实性高。大数据中包含大量噪声和不确定性信息,如何从中提取真实数据是一个挑战。确保数据的真实性对于有效分析至关重要,因为错误数据可能导致误导性结论。CHAPTER03大数据的核心技术1.3.33/508KNOWLEDGELINK(1)数据采集与预处理大数据集群环境搭建09大数据的核心技术包括以下几个方面,这些技术共同构成了大数据处理与分析的基础。(1)数据采集与预处理大数据平台可以从多个数据源采集数据,包括结构化数据、半结构化数据和非结构化数据。数据预处理需要对原始数据进行清洗、转换和格式化处理,包括去除噪声、填充缺失值等,使其适合后续分析。(2)数据存储采集的数据需要存储在数据仓库或数据湖中。常用的存储技术包括HDFS、NoSQL和关系型数据库。Hadoop作为开源框架,广泛应用于大规模离线数据分析,其核心存储组件就是HDFS。HBase是一个分布式、面向列的开源数据库,它可以构建在HDFS之上,适用于NoSQL数据库应用场景。(3)数据计算与处理数据计算与处理技术可以对存储的数据进行分析处理,提取有用信息。常用的技术包括MapReduce和Spark。MapReduce是Hadoop的并行计算模型,适用于大规模数据集处理。Spark是一种基于内存的分布式计算框架,支持交互式查询和迭代计算。Hive提供了类似SQL的HQL查询功能,可将结构化数据映射为数据库表形式。(4)数据挖掘与机器学习数据挖掘与机器学习技术用于深入分析数据,发现潜在规律并预测趋势。(5)数据可视化KNOWLEDGELINK(1)数据采集与预处理(续)大数据集群环境搭建10数据可视化通过图表等方式直观展示分析结果,帮助用户理解数据并支持决策。常用工具包括ECharts和Tableau。这些技术相互协同,构成了完整的大数据处理分析体系。在实际应用中,可根据需求选择合适的技术组合。随着技术进步,新的大数据技术将不断涌现。CHAPTER04大数据分布式系统架构1.3.44/511KNOWLEDGELINK1.Hadoop模块大数据集群环境搭建12ApacheHadoop是一个大数据分布式系统框架,它允许使用简单的编程模型在计算机集群上分布式处理大型数据集。该框架设计用于从单个服务器扩展到数千台机器,每台机器都提供本地计算和存储功能。Hadoop作为软件框架,不依赖特定硬件即可实现高可用性。该框架具有高度容错能力,能够自动处理硬件故障,从而保障数据安全和服务的持续性。1.Hadoop模块Hadoop包含HadoopCommon、HadoopHDFS、HadoopYARN和HadoopMapReduce4个模块。其中,HadoopCommon提供基础支持库,HDFS和MapReduce是Hadoop的两个核心组件。(1)HadoopCommonCommon是ApacheHadoop框架的基础组件,为其他Hadoop组件提供通用工具和库。这些工具和库在Hadoop运行过程中发挥着关键支撑作用,为通用硬件上的云计算环境提供基础服务。该模块是Hadoop框架的重要组成部分,与其他组件协作构建强大的大数据处理平台。(2)HadoopHDFSHDFS是专为商用硬件设计的分布式文件系统,与现有的分布式文件系统存在许多相似之处。HDFS与其他分布式文件系统的主要区别在于其具备高度容错性和低成本硬件部署的特点。HDFS能够为应用程序数据提供高吞吐量访问,适用于大数据集应用场景。HDFS放宽了部分POSIX要求,以实现对文件系统数据的流式访问。HDFS最初作为ApacheNutch网络搜索引擎项目的基础设施而构建,随后成为ApacheHadoop核心项目的一部分。KNOWLEDGELINK1.Hadoop模块(续)大数据集群环境搭建13HDFS采用主/从架构,如图1.81所示,包含3个核心组件:名称节点(NameNode)、数据节点(DataNode)和客户端(Client)。数据节点负责存储实际数据,并将管理的元数据块信息上报给名称节点,可以运行多个实例。客户端支持业务访问HDFS,从名称节点和数据节点获取数据并返回给应用系统。SOURCEFIGURE1.Hadoop模块大数据集群环境搭建14图1.81HDFS的基础架构KNOWLEDGELINK(3)HadoopMapReduce大数据集群环境搭建15HDFS集群由一个名称节点和多个数据节点组成。名称节点负责管理文件系统的命名空间以及客户端对文件的访问,同时确定文件块到数据节点的映射关系。数据节点负责管理连接到运行节点的存储资源,并处理来自文件系统客户端的读写请求,执行名称节点发出的指令以进行文件块的创建、删除和复制操作。HDFS采用Java语言构建,任何支持Java的机器均可运行名称节点或数据节点软件。(3)HadoopMapReduceHadoopMapReduce是一个软件框架,用于编写分布式数据处理应用程序。该框架能够在商用硬件组成的大型集群(数千个节点)上,以可靠、容错的方式并行处理海量数据(数万亿字节的数据集)。在MapReduce作业中,输入数据集首先被划分为若干个独立的块,这些块由Map任务并行处理。框架会将Map任务的输出结果进行排序,然后将排序后的结果交由Reduce任务处理。作业的输入和输出通常存储在文件系统中。一般而言,计算节点和存储节点是相同的。也就是说,MapReduce框架和HDFS运行在同一组节点上。这种配置使框架能够优先在存储有所需数据的节点上分配处理任务,从而提高整体的数据处理效率。(4)HadoopYARNHadoopYARN(YetAnotherResourceNegotiator,另一种资源协调者)是Hadoop的资源管理系统,可为上层应用提供统一的资源管理和调度。它的引入显著提高了集群资源利用率,并优化了资源统一管理及数据共享的效率。KNOWLEDGELINK(3)HadoopMapReduce(续)大数据集群环境搭建16YARN的基础架构如图1.82所示,主要由RM(ResourceManager,资源管理器)和NM(NodeManager,节点管理器)构成。其中,RM包含调度器(Scheduler)和应用管理器(ApplicationsManager)两大核心组件。调度器负责为运行中的应用程序分配资源,但受限于容量、队列等约束条件。需注意的是,调度器不负责监控应用程序状态或跟踪任务,因此无法保证因应用程序故障或硬件故障而导致的任务重启。调度功能基于资源容器(ResourceContainer)的抽象概念实现,容器包含内存、CPU、磁盘和网络等资源。SOURCEFIGURE(3)HadoopMapReduce大数据集群环境搭建17图1.82YARN的基础架构KNOWLEDGELINK2.Hadoop生态大数据集群环境搭建18ApplicationsManager负责接收作业提交,为应用程序专属的ApplicationMaster协商首个容器资源,并在ApplicationMaster容器出现故障时提供重启服务。每个应用程序的ApplicationMaster需与调度器协商资源容器,同时跟踪容器状态并监控任务进度。2.Hadoop生态Hadoop生态系统是指围绕Hadoop大数据平台形成的一系列开源软件与工具,用于支持大规模数据的处理、存储、管理、分析和可视化等应用场景。Hadoop生态系统的丰富性是其核心优势,为开发人员提供了多种工具和技术,便于构建复杂的大数据应用。Hadoop生态的主要组成部分包括HDFS、MapReduce、YARN、Hive、Pig、HBase和ZooKeeper等。Hadoop生态系统还包含许多其他工具和库,如机器学习库Mahout等,这些工具和库为大数据处理和分析提供了丰富的功能。(1)分布式查询分析工具Hive是一个基于Hadoop大数据平台的数据仓库工具,用于数据的提取、转换和加载(ETL)。它可以存储、查询和分析存储在Hadoop中的大规模数据。Hive本质上是用户编程接口,本身并不直接存储和处理数据,而是依赖HDFS存储数据,依赖MapReduce处理数据。Hive定义了一种类似SQL的查询语言HiveQL。熟悉SQL的用户可以直接使用HiveQL查询数据,但需要注意HiveQL并不完全支持SQL标准,如不支持更新操作、索引和事务功能,其子查询和连接操作也存在诸多限制。此外,HiveQL允许熟悉MapReduce的开发者开发自定义的mapper和reducer函数,以完成内建函数无法处理的复杂分析工作。KNOWLEDGELINK(2)分布式协调服务大数据集群环境搭建19Hive具有广泛的应用,这主要是因为其特性非常适合数据仓库应用程序。首先,当采用Hadoop的MapReduce作为执行引擎时,Hive会将HQL语句转换为MapReduce任务,以批处理方式处理海量数据。其次,数据仓库存储的是静态数据,基于数据仓库的应用程序主要进行静态数据分析,无须快速响应结果,且数据本身变化并不频繁,因此非常适合使用MapReduce进行批处理。HiveQL与关系数据库的SQL略有区别,但支持大多数常见语句,包括数据定义语言(DDL)、数据操纵语言(DML)、聚合函数、连接查询和条件查询。需要注意的是,Hive不适用于联机事务处理(OLTP),也不提供实时查询功能,最适合基于大量不可变数据的批处理作业。HQL语法可参考官方手册。(2)分布式协调服务ZooKeeper是一种为分布式应用程序提供协调服务的工具。在Hadoop1.x版本中仅支持单个NameNode,HDFS的所有读写操作均需要先访问NameNode。当NameNode发生故障时,整个Hadoop集群将无法使用,这就是所谓的单点故障问题。从Hadoop2.x版本开始,HDFS支持高可用架构。在该架构中,可以配置两个NameNode并由ZooKeeper进行管理:一个处于活跃(Active)状态,另一个处于备用(Standby)状态。处于Active状态的NameNode负责对外提供服务,处于Standby状态的NameNode则会同步Active状态NameNode的数据以保持数据一致性。当Active状态的NameNode出现故障时,Standby状态的NameNode会自动切换为Active状态,从而确保Hadoop集群的可靠性和高可用性。KNOWLEDGELINK3.高可用Hadoop大数据集群大数据集群环境搭建20ZooKeeper允许分布式进程通过共享的分层命名空间进行相互协调。此命名空间的组织方式类似于标准文件系统,由数据寄存器(在ZooKeeper中称为Znode)组成,其功能可类比于文件和目录。与常规的存储型文件系统不同,ZooKeeper的数据保存在内存中,因此能够实现高吞吐量和低延迟。ZooKeeper基础架构如图1.83所示:客户端首先连接到单个ZooKeeper服务器,并通过TCP连接发送请求、获取响应、接收监视事件和发送心跳信号。若与该服务器的TCP连接中断,客户端会自动连接至其他可用服务器。3.高可用Hadoop大数据集群HA(HighAvailability,高可用)Hadoop集群是指在运行HDFS和MapReduce时,能够持续可靠地提供服务的架构设计。实现高可用的关键在于消除单点故障。Hadoop高可用集群可以分为各组件的可用性机制,主要包括HDFS高可用机制和YARN高可用机制,这些机制可以借助ZooKeeper提供的服务来实现。SOURCEFIGURE3.高可用Hadoop大数据集群大数据集群环境搭建21图1.83ZooKeeper基础架构KNOWLEDGELINK(1)HDFSHA机制大数据集群环境搭建22(1)HDFSHA机制HDFS的高可用性主要通过借助ZooKeeper实现主备NameNode方案,以解决NameNode单点故障问题,如图1.84所示。通常情况下,Hadoop集群中只有一个NameNode负责管理文件系统元数据。为了提升可靠性,系统会配置备用NameNode。NameNode分为活跃(Active)和备用(Standby)两种状态。当主NameNode发生故障时,备用NameNode会自动接管服务,保障集群正常运行。故障切换控制器和元数据同步机制共同确保了HDFS高可用性的实现。SOURCEFIGURE(1)HDFSHA机制大数据集群环境搭建23图1.84HDFSHA机制示意KNOWLEDGELINK(2)YARNHA机制大数据集群环境搭建24①故障切换控制器。ZKFC(ZooKeeperFailoverController,故障切换控制器)负责监控Hadoop集群中关键组件(如NameNode、ResourceManager等)的运行状态,并在发生故障时自动触发故障转移过程的组件。ZKFC作为ZooKeeper集群的客户端来监控NameNode的状态信息。需要注意的是,ZKFC进程仅运行在部署NameNode的节点上,且HDFS的主备节点上均部署有ZKFC进程。StandbyNameNode通过ZooKeeper实时感知ActiveNameNode的状态变化。当ActiveNameNode发生宕机时,HDFS会自动触发主备切换流程:ZKFC会将主机名等信息保存在ZooKeeper中,StandbyNameNode通过从ZooKeeper同步ActiveNameNode的信息来完成状态的实时追踪。②元数据同步机制。在ActiveNameNode正常运行期间,HDFS高可用架构设计确保所有更新操作不仅会记录在本地日志中,还会实时写入共享JN(JournalNode,日志节点),同时更新ActiveNameNode内存中的元数据。StandbyNameNode通过持续加载JN上的Editlog来同步元数据。一旦检测到JournalNode上的Editlog变化,StandbyNameNode会立即加载最新的Editlog,并将其更新到内存中,从而生成与主NameNode完全一致的元数据副本,确保元数据的实时同步。高可用Hadoop集群通过将NameNode和其他关键Hadoop组件与ZooKeeper集成,可以实现故障检测和自动切换。高可用Hadoop集群需要合理配置硬件资源,包括使用冗余的网络设备、磁盘阵列和电源装置。此类配置可以减少硬件故障导致的系统中断情况,提高整体可用性。为应对意外情况,需要定期对Hadoop集群中的数据进行备份。该机制能够在数据丢失或损坏时进行恢复,确保业务的连续性,以满足大规模分布式计算需求。(2)YARNHA机制YARNHA机制示意如图1.85所示。YARN高可用机制的工作原理如下。SOURCEFIGURE(2)YARNHA机制大数据集群环境搭建25图1.85YARNHA机制示意KNOWLEDGELINK(2)YARNHA机制(续)大数据集群环境搭建26①选举过程:系统启动时,多个ResourceManager会尝试将选举信息写入ZooKeeper。第一个成功写入ZooKeeper的ResourceManager会被选举为活跃状态(ActiveResourceManager),其余的则处于备用状态(StandbyResourceManager)。②状态监控:StandbyResourceManager会定期检查ZooKeeper中的ActiveResourceManager选举信息。③故障切换:当ActiveResourceManager出现异常时,YARN会自动触发主备切换机制。④状态存储:ActiveResourceManager会在ZooKeeper中创建Statestore目录,用于存储应用程序(Application)相关信息。当故障发生时,StandbyResourceManager将从该目录获取应用程序信息,完成数据恢复后晋升为新的ActiveResourceManager。CHAPTER05环境搭建操作基础1.3.55/527KNOWLEDGELINK1.Linux系统基本命令大数据集群环境搭建28目前,主流大数据平台主要在Linux操作系统上部署,因此在学习大数据技术之前,需要掌握Linux操作基础。1.Linux系统基本命令Linux命令由命令、选项和参数3部分组成。命令用于告知操作系统执行何种操作;选项用于指定命令的运行方式或修改命令功能,通常以“-”符号开头;参数用于指定命令的操作对象,如文件、目录或系统本身。Linux命令的基本格式如下。命令[选项][参数](1)ls命令ls是list的缩写,用于查看Linux系统下的文件和目录信息,包括文件权限、目录属性等,其基本语法格式如下。ls[参数][目录名称]ls命令常用参数说明如下。●-a:显示所有文件(含以“.”开头的隐藏文件)。●-A:显示除“.”和“..”外的所有文件。●-r:按反向顺序排列。●-t:按修改时间排序。●-S:按文件大小排序。KNOWLEDGELINK(2)cd命令大数据集群环境搭建29●-h:以人性化格式显示文件大小(如KB/MB)。●-l:显示详细信息(如权限/所有者/大小等)。易读方式按时间反序排序,并显示文件详细信息,命令如下。ls-lhrt列出当前目录下的所有文件及其属性(包括隐藏文件),命令如下。ls-al查看指定目录/tmp下的所有文件,命令如下。ls/tmp(2)cd命令cd命令用于切换目录,cd命令基本格式如下。cd[相对路径/绝对路径]切换至用户主目录,命令如下。cd~返回上一次工作目录,命令如下。cd.将上个命令的参数作为cd参数,命令如下。KNOWLEDGELINK(3)pwd命令大数据集群环境搭建30cd\!$(3)pwd命令pwd命令用于查看当前工作目录的路径,命令如下。pwd(4)mkdir命令mkdir命令用于创建目录。其常用参数说明如下。●-m:设置新建目录的权限。该参数功能与chmod命令类似。●-p:若指定路径中的父目录不存在,此参数可自动创建缺失的目录。在当前工作目录下创建名为dir的目录,命令如下。mkdirdir在/tmp目录下创建多级目录test/dir1/dir2,命令如下。mkdir-p/tmp/test/dir1/dir2(5)rm命令rm命令用于删除一个目录中的一个或多个文件或目录。若不使用-r选项,则rm命令不会删除目录。使用rm命令删除的文件理论上是可以恢复的,但实际操作中需要依赖专门的恢复工具。rm命令基本格式如下。KNOWLEDGELINK(6)mv命令大数据集群环境搭建31rm[选项]文件删除任何以“.log”结尾的文件,删除前逐一询问确认,命令如下。rm-i\*.log删除test子目录及其所有内容,且不需要确认,命令如下。rm-rftest(6)mv命令mv命令用于移动文件或修改文件名。该命令的基本功能包括移动文件/目录和重命名操作。常用参数如下。●-f:强制操作,若目标文件已存在则直接覆盖且不提示。●-i:交互模式,若目标文件已存在则会询问是否覆盖。●-u:仅当源文件比目标文件新时执行更新。将多个文件移动到目录,命令如下。mvfile1file2file3dir/把文件file1重命名为file2,命令如下。mvfile1file2(7)cp命令cp命令用于复制文件或目录,主要功能包括单个文件复制和批量文件复制。常用参数如下。KNOWLEDGELINK(8)cat命令大数据集群环境搭建32●-a:归档模式,保留文件所有属性(相当于-dpR参数组合)。●-p:保留文件的原始属性(包括所有者、时间戳等)。●-i:覆盖前提示确认。●-r:递归复制目录及其内容。●-u:仅在源文件比目标文件新或目标文件不存在时复制。保留所有属性复制文件,命令如下。cp-afile1file2批量复制文件至目录dir,命令如下。cpfile1file2file3dir/(8)cat命令cat命令用于查看文本文件的内容,后接要查看的文件名。该命令可与more和less命令配合使用,通过管道符“|”实现分页查看文件内容。查看text文件中的内容,命令如下。cattext|less(9)tar命令KNOWLEDGELINK(8)cat命令(续)大数据集群环境搭建33tar命令用于对文件进行打包,默认情况下不会压缩文件。若指定了相应参数,可以调用压缩程序(如gzip和bzip2等)进行压缩和解压。常用参数如下。●-c:创建打包文件。●-t:查看打包文件包含的文件名。●-x:解包或解压,可搭配-C指定解压目录。●-j:使用bzip2进行压缩/解压缩。●-z:使用gzip进行压缩/解压缩。●-v:显示处理过程中的文件名。●-ffilename:指定要处理的文件名。●-Cdir:指定解压目录。将1.log和2.log打包为log.tar,命令如下。tar-cvflog.tar1.log2.log查看log.tar.gz包内文件,命令如下。tar-ztvflog.tar.gz解压log.tar.gz到当前目录,命令如下。tar-zxvflog.tar.gz解压log.tar.gz到/tmp目录,命令如下。KNOWLEDGELINK2.Linux系统目录结构大数据集群环境搭建34tar-zxvflog.tar.gz-C/tmp2.Linux系统目录结构Linux操作系统是一个基于Unix的开源操作系统,它具备良好的目录组织和文件系统结构。理解Linux目录结构对于系统管理和开发工作非常重要。根目录是整个文件系统的顶级目录,所有其他目录和文件均从根目录开始。在Linux中,根目录用斜线“/”表示。Linux存在一些重要目录,它们具有特定功能,包含重要的系统及配置文件,主要包括/bin、/boot、/dev、/etc、/home、/lib、/lib64、/media、/mnt、/opt、/proc、/root、/sbin、/srv、/tmp、/usr、/var、/run、/run/user和/sys。(1)/bin目录/bin目录包含基本的可执行文件,这些文件是系统启动和运行必需的。例如,/bin目录包含ls、cp、rm等常用命令。(2)/boot目录/boot目录包含引导加载程序的相关文件,包括内核映像和引导配置文件。系统启动时会使用该目录下的文件进行引导。(3)/dev目录KNOWLEDGELINK(4)/etc目录大数据集群环境搭建35/dev目录包含设备文件,用于与系统设备进行交互。在Linux中,所有设备均表示为文件,如磁盘、键盘等硬件设备。(4)/etc目录/etc目录存放系统配置文件,包括网络、用户账户等服务配置,对系统的正常运行至关重要。(5)/home目录/home目录是用户的主目录,每个用户都拥有一个与其用户名相对应的子目录。用户可以在自己的主目录中存储个人文件和配置。(6)/lib和/lib64目录/lib目录和/lib64目录包含共享库文件,这些库文件是应用程序和系统工具所需的共享组件。/lib目录用于32位系统,而/lib64目录用于64位系统。(7)/media目录/media目录用于挂载可移动设备。当插入U盘或光盘时,系统会自动在此创建挂载点。(8)/mnt目录/mnt目录用于临时挂载其他文件系统或网络共享。管理员可以将其他设备或远程共享挂载到/mnt目录中,以便访问其内容。KNOWLEDGELINK(9)/opt目录大数据集群环境搭建36(9)/opt目录/opt目录用于安装第三方软件包。部分应用程序将其安装在/opt目录下,以便与系统的其他部分相分离。(10)/proc目录/proc目录是虚拟文件系统,提供系统实时信息。管理员可通过读取该目录获取系统状态、进程信息和硬件配置。(11)/root目录/root目录是超级用户(root用户)的主目录。与普通用户的主目录(/home)不同,超级用户的主目录位于/root。只有root用户可以访问和操作/root目录。(12)/sbin目录/sbin目录包含系统管理员使用的一些系统命令和工具。这些命令和工具通常用于系统管理和维护任务,如启动和停止服务、网络配置等。(13)/srv目录/srv目录用于存储系统服务提供的数据。例如,Web服务器可以将网站数据存储在/srv目录下。(14)/tmp目录/tmp目录存放临时文件,系统重启时会自动清除。管理员应监控其空间使用情况。KNOWLEDGELINK(15)/usr目录大数据集群环境搭建37(15)/usr目录/usr目录存放用户应用程序和共享资源,包含可执行文件、库文件、文档等系统资源。(16)/var目录/var目录用于存储可变数据,如日志文件、缓存文件和临时文件。/var目录中的数据通常在系统运行时会频繁变化。(17)/run目录/run目录是一个临时文件系统,用于存储在系统引导过程中需要保存的运行时数据。例如,PID文件、锁文件等。(18)/run/user目录/run/user目录包含与用户相关的运行时数据。每个用户都有一个与其用户ID相对应的子目录,用于存储用户特定的运行时数据。(19)/sys目录/sys目录是虚拟文件系统,提供硬件设备信息接口,可用于监测和配置硬件。3.Linuxyum命令KNOWLEDGELINK(15)/usr目录(续)大数据集群环境搭建38yum是一款在Fedora、RedHat和SUSE等Linux发行版中使用的Shell前端软件包管理器。它基于RPM(RedHatPackageManager,红帽软件包管理器)包管理,能够从指定服务器自动下载RPM包并进行安装,自动处理软件包的依赖关系,可一次性安装所有依赖的软件包,无须用户手动逐一下载和安装。常用的yum命令如下。列出所有可更新的软件清单,命令如下。yumcheck-update更新所有软件,命令如下。yumupdate仅安装指定软件,命令如下。yuminstall<package\_name>仅更新指定软件,命令如下。yumupdate<package\_name>列出所有可安装的软件清单,命令如下。yumlist删除软件包,命令如下。yumremove<package\_name>查找软件包,命令如下。KNOWLEDGELINK(15)/usr目录(续)大数据集群环境搭建39yumsearch<keyword>清除缓存目录下的软件包,命令如下。yumcleanpackagesPRACTICE课后练习大数据集群环境搭建40大数据集群在实际应用环境中,可以通过增加新节点实现动态扩容。扩容时需要先添加新的服务器,然后将应用系统进行水平扩展。请完成1个节点的扩容。网络数据采集基础从网页请求到结构化数据讲师:________日期:2026-08-21网页请求解析存储大数据采集与分析技术·知识链接目录与时间分配01数据采集方法25分钟七种方法与合规边界02网络数据采集流程25分钟获取网页·提取信息·保存数据03HTTP协议原理65分钟URI/URL·Request·Response04网页基础知识25分钟静态网页·动态网页·爬虫原理05驼峰命名法10分钟小驼峰·大驼峰·团队规范网络数据采集基础02学习目标完成历史天气数据自动化采集本任务完成了对历史天气数据的采集工作,并将数据存入关系型数据表中。主要包含关系数据库创建、数据表建立、权限设置等操作。在技术实现方面,使用Java编程语言、Maven项目管理工具,并开发自动化数据采集程序。实训技术链JavaMaven自动化采集程序关系型数据表网络数据采集基础0301数据采集方法多来源·多方式·合规优先从网站、社交媒体、电子邮件、移动应用等来源获取数据,用于分析和挖掘,从而获得有价值的信息。知识链接·0104常见采集方法(1/2)网络爬虫通过自动化程序在互联网上抓取网页数据,适合网站、论坛、新闻媒体等结构化或半结构化数据。API调用应用程序和服务提供API,开发者通过调用接口可直接从数据源获取所需数据。传感器采集温度、气象、运动等设备采集环境、物理或生物数据,常用于物联网和智能设备领域。数据采集方法05常见采集方法(2/2)与合规边界数据导入和批量处理导入Excel、CSV等文件,适合离线或历史数据整理。日志数据收集分析系统性能和用户行为;可用HadoopChukwa、ClouderaFlume进行高速分布式日志采集。社交媒体监测监测公开讨论和反馈,用于舆情分析和市场调研。数据合作与共享从合作伙伴或供应商获取特定领域的大规模数据。合规要求遵守个人信息保护法、数据安全法、著作权法,保护用户隐私,不得违反法律法规。数据采集方法0602网络数据采集流程获取网页→提取信息→保存数据网络爬虫本质上是获取网页并提取、保存信息的自动化程序。获取提取保存知识链接·0207网络爬虫三步流程1.获取网页工具:HttpClient、Urllib、Requests。Jsoup.connect(url)建立连接,get()返回Document;body()获取全部子元素,title()获取页面标题。Documentdoc=Jsoup.connect("").get();2.提取信息分析源代码并提取数据。正则表达式较复杂,Jsoup等库效率更高。Document.select()按选择器查找元素,返回Elements集合。Elementselements=document.select("ul");3.保存数据提取后保存到本地供后续使用。文件格式TXT·JSON数据库MySQL·MongoDB网络数据采集流程0803HTTP协议原理从资源标识到请求与响应理解浏览器如何找到服务器、建立连接并取得网页内容HTTP协议原理09URI与URL:标识资源,也定位资源URI(统一资源标识符)用于标识互联网资源名称的字符串;HTML文档、图像、视频片段、程序等资源均有对应的URI。URL(统一资源定位符)万维网上每一个信息资源都拥有唯一的网络地址。URL是万维网的资源定位标志,通常由资源访问协议、存放资源的主机域名和资源文件名组成;也可认为由协议、主机、端口和路径组成。protocol://hostname[:port]/path/[:parameters][?query]#fragment浏览器访问网页的基本过程输入URL→DNS将域名解析为IP地址→浏览器向该IP地址的80端口请求建立TCP连接→连接建立后发送HTTP请求→服务器返回网页文件→文件传输完成后服务器主动关闭TCP连接HTTP工作过程结束,浏览器解析并显示接收到的网页文件。HTTP协议原理10URL的六个组成部分protocol://hostname[:port]/path/[:parameters][?query]#fragment1Protocol协议指定访问资源的传输协议,常用HTTP、HTTPS,此外还有FILE、FTP等。2Hostname主机名存放资源的主机域名或IP地址;某些情况下可附带登录服务器的用户名和密码。3Port端口号协议有默认端口,如HTTP为80;采用非标准端口时必须在URL中明确写出。4Path路径由零个或多个“/”分隔的字符串,表示主机上的目录或文件位置。5Query查询参数动态网页的参数传递部分;多组键值对用“&”连接,键和值用“=”分隔。6Fragment片段标识指向资源内的特定片段,例如网页中的某个章节。记忆线索协议决定“怎么访问”,主机与端口决定“访问谁”,路径与参数决定“取什么”,片段标识决定“定位到哪里”。HTTP协议原理11URN、HTTP与HTTPSURI体系中的URL与URNURL是URI的一个特例:每个URL都是URI,但并非每个URI都是URL。URN用于命名资源,而不涉及定位。当前URN使用较少,多数URI实际上都是URL,网页链接可称URL或URI。HTTP请求与安全升级HTTP用于从网络服务器向本地浏览器传输超文本数据,能高效、准确地传输超文本文档,由W3C和IETF制定。HTTPS在HTTP基础上加入安全套接层(SSL),通过加密传输保障数据安全,是HTTP的安全版本。HTTP协议原理12HTTP请求过程:Request→Response一次页面访问发生了什么?1.输入URL并按Enter键。2.浏览器向网站服务器发送请求(Request)。3.服务器处理、解析请求并返回响应(Response)。4.响应包含页面源代码等资源。5.浏览器解析资源并显示网页内容。观察方法按F12打开开发者工具,再访问网页。图2.31检查请求响应过程HTTP协议原理13用开发者工具观察请求“网络”选项卡的请求列表NameRequest名称,通常为URL末段内容名称StatusRequest状态;正常响应通常显示200Type请求文档类型;document表示HTML文档Initiator标记由哪个对象或进程发起请求Size文件或资源大小;缓存资源显示fromcacheTime发起Request到取得Response的总时间Waterfall/TimeLine网络请求可视化瀑布流单击任意请求行→“标头”常规区域显示请求网址、方法、状态码、远程地址、引荐来源网址政策等信息。图2.32“标头”选项卡HTTP协议原理14Request:结构与请求方法图2.33“请求标头”区域Request由请求方法、请求链接、请求头和请求体组成。常见请求方法GET请求指定页面信息并返回响应实体主体POST向指定资源提交数据,用于创建或更新资源HEAD类似GET,但响应不含实体主体,仅有头部信息PUT用客户端发送的数据替换指定资源内容DELETE删除指定资源OPTIONS返回服务器支持的HTTP请求方法CONNECT将连接转换成透明的TCP/IP通道GET与POST访问URL通常为GET,参数可显示在URL中,如word=天气。POST多用于表单提交,数据位于RequestBody。GET提交数据最多1024B,POST没有限制;登录验证、文件上传常用POST。HTTP协议原理15RequestHeader:常见请求头(1/2)头信息说明Accept指定客户端能够接收的内容类型Accept-Charset指定浏览器可接受的字符编码集Accept-Encoding指定浏览器支持的Web服务器返回内容压缩编码类型Accept-Language指定浏览器可接受的语言Accept-Ranges允许服务器返回资源的子范围字段AuthorizationHTTP授权的凭证,例如用户名和密码Cache-Control指定请求或响应遵循的缓存机制Connection指定是否保持持久连接CookieHTTP请求时,发送该域名下的所有cookie值Content-Length指定请求内容的数据长度Content-Type指定请求内容的MIME类型信息HTTP协议原理16RequestHeader(2/2)与请求体其余常见请求头Date请求发送的日期和时间Expect指定客户端期望的服务器行为From指定发出请求的用户邮箱Host指定目标服务器的域名和端口Proxy-Authorization代理服务器认证信息Range仅请求资源的一部分Referer表示请求的来源页面URLUser-Agent发出请求的用户代理信息,如浏览器名称和版本请求头用于说明服务器需要使用的附加信息。RequestBody用于向服务器传递数据,通常适用于POST、PUT等方法;GET等方法一般不使用请求体。application/x-www-form-urlencoded表单常用格式;key=value,多组用&连接。name=zhangsan&age=20multipart/form-data用于上传文件或二进制数据。application/json用于传输JSON格式的数据。HTTP协议原理17Response:响应状态码Response由响应状态码(ResponseStatusCode)、响应头(ResponseHeaders)和响应体(ResponseBody)组成。200OK请求成功服务器已成功处理客户端请求。302Found临时重定向请求资源暂时转移到其他位置。304NotModified资源未被修改可使用缓存版本。400BadRequest请求有误服务器无法解析。403Forbidden禁止访问服务器拒绝该请求。404NotFound资源不存在请求的资源不存在。HTTP协议原理18ResponseHeader与ResponseBody常用响应头信息Date响应产生的日期和时间Last-Modified资源的最后修改时间Content-Encoding响应内容的编码格式Server服务器名称、版本号等信息Content-Type返回数据格式,如text/html、application/x-javascript、image/jpegSet-Cookie让浏览器保存指定内容,下次请求时携带Expires指定响应过期时间,控制代理或浏览器缓存再次访问时可直接从缓存加载,减轻服务器负担,并提高加载速度。ResponseBody响应体是具体的响应内容。请求网页响应体为网页的HTML代码。请求图片资源响应体为图片的二进制数据。浏览器解析响应内容并呈现网页。HTTP协议原理1904网页基础知识网页形态、编程语言与采集原理理解数据藏在哪里,以及采集难度为何不同网页基础知识20网页与静态、动态网页网页是什么网页是网站的基本组成元素和万维网的基本文档,包含文字、图片、动画、声音及超链接。它本质上是包含HTML标签的纯文本文件,存放在服务器中,扩展名为.html或.htm;网页通常借助图像提供视觉内容,并通过浏览器访问。静态网页内容上传至服务器后保持不变,访问量不影响内容。访问速度快,不需要实时连接数据库。缺乏数据库支持,更新维护烦琐、交互性弱、功能有限。内容直接存储在HTML源代码中,网络采集相对简单。采集提示直接解析HTML源代码即可取得页面内容。动态网页基于数据库技术构建,内置程序逻辑。内容不直接存于静态文件,收到用户请求时才生成完整页面。可按用户参数显示不同数据,支持登录、注册、信息检索。可实现在线调查、用户管理、订单管理等交互功能。采集提示内容常需登录后才能完整呈现,采集复杂度更高。网页基础知识21网页编程语言与采集原理网页编程语言客户端HTML·CSS·JavaScriptCSS:CascadingStyleSheets,层叠样式表。服务器端ASP·ASP.NET·JSP·PHPASP:ActiveServerPagesPHP:HypertextPreprocessor网络数据采集的原理网络数据采集又称网络爬虫,是自动抓取互联网网页数据的技术方法。如果互联网是一张蜘蛛网,爬虫就像沿网页链接寻找并访问页面的蜘蛛。起始网页→读取内容与源代码提取所需信息→传回客户端存储核心闭环:访问→解析→提取→存储;页面之间的链接为持续发现新资源提供路径。网页基础知识2205驼峰命名法用大小写边界表达单词结构一致、清晰、可维护的代码命名规则驼峰命名法23CamelCase:两种写法与使用原则驼峰命名法是编程领域常用的命名规则,在多种语言、框架和环境中广泛应用。它用大小写字母分隔单词,避免特殊字符和空格,从而减少语法错误与命名混淆。小驼峰命名法首个单词全部小写,后续每个单词首字母大写。myChart·myFirstName·setMyOption()大驼峰命名法每个单词的首字母均大写。UserStudent·FirstName·LastName使用原则避免变量名过长;遵守团队命名规范。合理的大小写组合能区分单词、增强可读性,减少命名冲突,并提升代码一致性与可维护性。驼峰命名法24课后练习01查看并记录robots协议浏览器访问网站时,可查看规定网络爬虫访问规则的robots协议。假设网站首页为url,其robots协议文件通常位于:https://url/robots.txt请记录该协议中允许(Allow)采集的资源列表。02设计自动化采集程序从第1题记录的允许采集资源列表中选择一个资源链接,设计自动化采集程序,采集该网页的重要信息,并将采集结果保存至本地。提交建议:目标网址、Allow依据、字段清单、程序文件、采集结果文件。合规优先:仅采集明确允许访问的资源,并控制访问频率。课后练习25TASK03数据仓库的构建大数据采集与分析技术·知识链接讲师:________________日期:2026年8月21日原文知识·原图保真·可编辑课件COURSEMAP课程目录与时间分配数据仓库的构建0201HDFS基本操作建议20分钟02数据仓库概述建议10分钟03数据仓库工具建议10分钟04数据定义语句建议25分钟05数据表基本操作建议25分钟建议总时长90分钟;教师可按课堂基础调整。LEARNINGOUTCOMES学习目标数据仓库的构建031任务3完成了贴源层数据仓库和数据表的创建,并将文件类型的数据加载至数据表中。同时,将任务2中采集到的数据通过Sqoop工具导入Hive天气信息表。本任务主要涉及Hive数据仓库的创建、数据表的创建、数据的加载以及Sqoop工具的使用等内容。2需要注意的是,加载到数据表的数据需要经过查询验证,以确保数据已正确加载,并检查数据记录是否存在问题。CHAPTER01HDFS基本操作3.3.11/504KNOWLEDGELINK1.集群管理命令数据仓库的构建05在任务1中,我们部署了Hadoop集群平台,该平台将海量数据分布存储在集群的多台计算机上,并将文件进行分块存储,为实现容错会自动进行分块复制。HDFS是分布式计算中数据存储管理的基础,是基于流数据模式访问和处理超大文件的需求而开发的,为超大数据集的应用处理提供了便利。HDFS提供了Shell命令来管理和操作文件系统,包括上传和下载文件等操作。这些命令由存放在Hadoop安装目录bin/hadoop下的脚本启动,若未指定参数,将打印所有命令的帮助信息。1.集群管理命令(1)查询集群存储空间使用情况查询集群基本情况的命令格式如下。hdfsdfsadmin-report[-live][-dead][-decommissioning]各个选项的用法说明如下。①-report:输出文件系统的基本信息及相关数据统计。②-live:输出文件系统中在线节点的基本信息及相关数据统计。③-dead:输出文件系统中失效节点的基本信息及相关数据统计。④-decommissioning:输出文件系统中停用节点的基本信息及相关数据统计。dfsadmin命令可用于查看集群存储空间使用情况及各节点存储空间使用情况。查询Hadoop集群磁盘使用情况的命令如下。KNOWLEDGELINK1.集群管理命令(续)数据仓库的构建06hdfsdfsadmin-report执行命令后,终端显示的信息包括集群存储空间使用情况及各节点存储空间使用情况,如图3.22所示。SOURCEFIGURE1.集群管理命令数据仓库的构建07图3.22集群存储空间使用情况及各节点存储空间使用情况KNOWLEDGELINK(2)查看系统是否处于安全模式的命令如下。数据仓库的构建08在NameNode启动时,首先会将文件系统镜像加载至内存中,并执行编辑日志文件中的各项操作。接着开始监听RPC(远程过程调用)和HTTP请求,此时集群将进入安全模式。在此模式下,所有DataNode会向NameNode发送心跳报告和数据块位置信息。当NameNode收集到足够的数据块位置信息后(通常需要30秒左右),集群就会退出安全模式。因此,在Hadoop集群刚启动时,虽然可以查看文件目录信息,但不能立即进行文件读写操作。(2)查看系统是否处于安全模式的命令如下。hdfsdfsadmin-safemodeget(3)通常在需要维护或升级HDFS时,要使文件系统处于只读状态,可通过以下命令使系统进入安全模式。hdfsdfsadmin-safemodeenter(4)离开安全模式的命令如下。hdfsdfsadmin-safemodeleave2.文件处理命令文件处理命令可以使用“hadoopfs”或“hdfsdfs”开头,如图3.23所示。SOURCEFIGURE(2)查看系统是否处于安全模式的命令如下。数据仓库的构建09图3.23文件处理命令KNOWLEDGELINK(1)列出HDFS目录下的文件及子目录,命令的语法格式如下。数据仓库的构建10(1)列出HDFS目录下的文件及子目录,命令的语法格式如下。hdfsdfs-ls[-d][-R]<hdfs:paths>相关参数含义如下。①-d:可选参数,表示仅显示目录路径信息,不展开其内容。②-R:可选参数,表示递归显示目录下的所有文件及子目录。③hdfs:paths:指定需要查看的目标目录。图3.24呈现了HDFS根目录下列出的文件及目录信息,包括权限、所有者、所属组、文件大小、创建时间等内容。(2)在HDFS中创建新目录,命令的语法格式如下。hdfsdfs-mkdir[-p]<hdfs:paths>相关参数含义如下。SOURCEFIGURE(1)列出HDFS目录下的文件及子目录,命令的语法格式如下。数据仓库的构建11图3.24HDFS根目录下列出的文件及目录信息KNOWLEDGELINK(1)列出HDFS目录下的文件及子目录,命令的语法格式如下。(续)数据仓库的构建12①-p:可选参数,用于创建多级目录。当上级目录不存在时,必须使用此参数。②hdfs:paths:指定要创建的目录。在根目录下创建新目录,如图3.25所示。SOURCEFIGURE(1)列出HDFS目录下的文件及子目录,命令的语法格式如下。数据仓库的构建13图3.25在根目录下创建新目录KNOWLEDGELINK(1)列出HDFS目录下的文件及子目录,命令的语法格式如下。(续)数据仓库的构建14创建多级目录,如图3.26所示。SOURCEFIGURE(1)列出HDFS目录下的文件及子目录,命令的语法格式如下。数据仓库的构建15图3.26创建多级目录KNOWLEDGELINK(3)在HDFS指定目录下创建空文件,命令的语法格式如下。数据仓库的构建16(3)在HDFS指定目录下创建空文件,命令的语法格式如下。hdfsdfs-touchz<hdfs:newFile>相关参数含义如下。hdfs:newFile:指定新文件的HDFS路径及名称。创建空文件,如图3.27所示。SOURCEFIGURE(3)在HDFS指定目录下创建空文件,命令的语法格式如下。数据仓库的构建17图3.27创建空文件KNOWLEDGELINK(4)查看HDFS文件/目录占用空间大小,命令的语法格式如下。数据仓库的构建18(4)查看HDFS文件/目录占用空间大小,命令的语法格式如下。hdfsdfs-du[-s][-h]<hdfs\_path>...相关参数含义如下。①-s:可选参数,用于显示目录及其子目录的总大小。②-h:可选参数,以易读格式显示大小(单位自动转换为KB/MB/GB等)。③hdfs\_path:需要查看的HDFS路径(支持多个路径)。此命令可以查看单个文件大小、目录总大小,以及根目录下所有内容大小。查看根目录下所有目录和文件大小如图3.28所示。SOURCEFIGURE(4)查看HDFS文件/目录占用空间大小,命令的语法格式如下。数据仓库的构建19图3.28查看根目录下所有目录和文件大小KNOWLEDGELINK(5)上传文件命令的语法格式如下。数据仓库的构建20(5)上传文件命令的语法格式如下。hdfsdfs-put[-f][-p]<localsrc>...<hdfs:pathDir>相关参数含义如下。①-f:可选参数,若目标路径已存在同名文件,则强制覆盖;若不指定此参数,遇到同名文件时会报错。②-p:可选参数,保留原文件的属性(包括权限、所有者、组和时间戳)。③localsrc:本地文件路径,支持多个文件或目录。④hdfs:pathDir:HDFS目标路径。将本地words.txt文件上传到HDFS的/user/hadoop目录下,如图3.29所示。SOURCEFIGURE(5)上传文件命令的语法格式如下。数据仓库的构建21图3.29将本地Words.txt文件上传到HDFS的/user/hadoop目录下KNOWLEDGELINK(6)下载文件命令的语法格式如下。数据仓库的构建22(6)下载文件命令的语法格式如下。hdfsdfsget[-p][-ignoreCrc]<hdfs\_src>...<local\_dst>相关参数含义如下。①-p:可选参数,保留源文件的属性(包括权限、所有者、组和时间戳)。②-ignoreCrc:可选参数,跳过CRC校验失败的文件的下载。③hdfs\_src:HDFS源路径,可以是单个文件、目录,或者是多个文件。④local\_dst:本地目标路径,执行命令之前,本地文件目录必须存在。(7)查看文件内容命令可以使用cat、text或tail命令,语法格式如下。查看完整文件内容:hdfsdfs-cat[-ignoreCrc]<hdfs\_file\_path>或hdfsdfs-text[-ignoreCrc]<hdfs\_file\_path>查看文件尾部内容:hdfsdfs-tail[-f]<hdfs\_file\_path>相关参数含义如下。①-cat/-text:查看文件内容(两个命令功能相同,任选其一即可)。KNOWLEDGELINK(8)使用appendToFile命令追加内容到HDFS文件命令的语法格式如下。数据仓库的构建23②-ignoreCrc:可选参数,忽略CRC校验失败的文件。③-f:可选参数(仅tail命令可用),实时追踪文件末尾的变化情况(适用于查看正在写入的日志文件)。④<hdfs\_path\_file>:指HDFS中文件的完整路径。这3个命令的区别在于:text命令不仅可以查看文本文件,还能查看压缩文件和Avro序列化的文件;tail命令默认查看文件末尾的1

KB内容。(8)使用appendToFile命令追加内容到HDFS文件命令的语法格式如下。hdfsdfs-appendToFile<localsrc>...<dst>相关参数含义如下。①<localsrc>:指定本地文件路径。如果使用“.”,表示从标准输入(键盘)读取数据,可使用Ctrl\+C组合键结束输入。②<dst>:HDFS目标文件的路径。若目标文件不存在,系统会自动创建。首先在一个终端中查看words.txt文件的内容,如图3.30所示。SOURCEFIGURE(8)使用appendToFile命令追加内容到HDFS文件命令的语法格式如下。数据仓库的构建24图3.30查看words.txt文件的内容KNOWLEDGELINK(8)使用appendToFile命令追加内容到HDFS文件命令的语法格式如下。(续)数据仓库的构建25打开另一个终端,使用appendToFile命令向word.txt追加内容,在命令提示后输入“HiHDFS”,然后按Ctrl\+C组合键结束输入,如图3.31所示。SOURCEFIGURE(8)使用appendToFile命令追加内容到HDFS文件命令的语法格式如下。数据仓库的构建26图3.31使用appendToFile命令向word.txt追加内容KNOWLEDGELINK(8)使用appendToFile命令追加内容到HDFS文件命令的语法格式如下。(续)数据仓库的构建27返回第一个终端观察文件内容的更新情况,如图3.32所示。SOURCEFIGURE(8)使用appendToFile命令追加内容到HDFS文件命令的语法格式如下。数据仓库的构建28图3.32返回第一个终端观察文件内容的更新情况KNOWLEDGELINK(9)HDFS文件复制/移动命令的语法格式如下。数据仓库的构建29(9)HDFS文件复制/移动命令的语法格式如下。hdfsdfs-cp|-mv<hdfs\_src\_path>...<hdfs\_dest\_dir>相关参数含义如下。①-cp|-mv:-cp表示复制文件,-mv表示移动文件,二者只能选其一。②hdfs\_src\_path:HDFS中的源文件路径,支持指定多个源路径。③hdfs\_dest\_dir:HDFS中的目标路径,必须是已存在的目录。(10)HDFS文件权限修改命令的语法格式如下。hdfsdfs-chmod[-R]<mode><hdfs\_path>相关参数含义如下。①-R:可选参数,表示递归处理目录及其子目录。②mode:权限模式,可使用八进制或符号表示法(如755或u=rwx,g=rx,o=rx)。③hdfs\_path:需要修改权限的HDFS文件或目录的路径。(11)修改HDFS文件/目录所属用户和用户组的命令的语法格式如下。hdfsdfs-chown[-R][OWNER][:[GROUP]]<hdfs\_path>相关参数含义如下。KNOWLEDGELINK(12)删除HDFS文件/目录的命令的语法格式如下。数据仓库的构建30①-R:表示递归操作,对整个目录及其子目录生效。执行此命令的用户必须是文件所有者或超级用户。②OWNER:GROUP:新的所有者用户名和用户组名(可单独指定其中一项)。③hdfs\_path:目标文件或目录在HDFS中的路径。(12)删除HDFS文件/目录的命令的语法格式如下。hdfsdfs-rm[-r][-f]<hdfs\_path>相关参数含义如下。①-r:表示递归删除目录及其包含的所有文件和子目录。②-f:可选参数,表示强制删除,不显示确认提示。③hdfs\_path:待删除的文件或目录路径。CHAPTER02数据仓库概述3.3.22/531KNOWLEDGELINK1.数据仓库特征数据仓库的构建32数据仓库是一个面向主题、具有集成性、相对稳定且能反映历史变化的数据集合,用于支持管理决策。数据仓库中的数据经过系统的加工、汇总和整理,消除了数据的不一致性,保证了数据质量。用户只能通过分析工具进行查询和分析操作,不能直接修改数据。数据会定期更新,以确保与最新情况一致。数据仓库能高效存储、管理和分析大量数据,为企业提供有价值的决策支持。1.数据仓库特征数据仓库的特征主要体现在以下几个方面。(1)面向主题数据仓库中的数据并非针对某一具体应用,而是围绕特定主题进行组织的。主题是对企业信息系统中数据开展综合、归纳和分析利用的高层次抽象概念,能够完整、统一地描述分析对象涉及的各类企业数据及其相互关系。(2)集成性数据仓库的数据来源于多种异构数据源,包括操作型数据库和外部数据源(如文本文件、XML文件、网页等)。在数据进入数据仓库前,需要经过数据清洗、转换和集成过程,以确保数据的一致性和准确性。该过程包括去重、解决数据冲突和数据格式转换等操作。(3)非易失性KNOWLEDGELINK(4)时间变化性数据仓库的构建33数据仓库主要用于决策分析,而非日常业务处理。数据一旦加载至数据仓库,通常不会被修改或删除(虽然部分数据仓库支持更新和删除操作,但这并非其主要用途)。这种非易失性保证了数据的稳定性和一致性,使分析人员可以依赖这些数据做出决策。(4)时间变化性数据仓库包含历史数据,便于分析人员进行时间序列分析和趋势预测等。数据仓库还提供时间维度,方便分析人员按时间切片或聚合数据,进行更深入的分析。(5)支持复杂查询数据仓库设计用于支持大规模复杂查询操作。因其通常需要综合考量多个因素、维度和时间段的数据,数据仓库查询性能通常优于操作型数据库,这得益于优化的存储结构和查询算法。(6)安全性与隐私保护数据仓库常包含敏感信息(如客户信息和财务数据),因此必须采取严格的安全和隐私保护措施,以防止未经授权的访问或数据泄露。2.数据仓库体系结构数据仓库的体系结构通常可以划分为几个关键层次,这些层次协同运作以支持数据的有效管理和分析。这些层次包括原始数据层、数据的存储与管理层、数据服务层和数据应用层。(1)原始数据层KNOWLEDGELINK(2)数据存储和管理层数据仓库的构建34原始数据层是数据仓库的基础,提供所有原始数据的输入来源。它涵盖企业的各类业务数据和文档数据等。原始数据的质量和完整性直接影响数据仓库后续的数据处理和分析结果的准确性。(2)数据存储和管理层数据存储与管理层负责将原始数据转换为适合数据仓库处理的形式,并进行高效的存储和管理。(3)数据服务层数据服务层负责对数据进行有效集成,并以多维模式组织数据,以支持多角度、多层次的数据分析。(4)数据应用层数据应用层直接面向用户,包含数据查询工具、报表工具、数据分析工具、数据挖掘工具以及各类应用系统。CHAPTER03数据仓库工具3.3.33/535KNOWLEDGELINK数据仓库工具数据仓库的构建36数据仓库工具是指用于构建、管理、查询和维护数据仓库的软件系统。这些工具帮助组织从多种数据源收集、整合、转换和存储数据,支持高效的数据分析和业务决策。Hive是构建在Hadoop平台上的数据仓库工具。它将结构化数据文件映射为数据库表,并提供类SQL查询功能。Hive采用HDFS作为存储系统,依靠MapReduce进行查询分析,利用Hadoop的分布式架构实现大规模数据处理。Hive的主要架构如图3.33所示。SOURCEFIGURE数据仓库工具数据仓库的构建37图3.33Hive的主要架构KNOWLEDGELINK数据仓库工具(续)数据仓库的构建38(1)用户接口。主要用于创建用户与HDFS之间的交互,包括CLI(CommandLineInterface,命令行界面)、JDBC(JavaDatabaseConnectivity,数据库程序接口)、WebUI(WebsiteUserInterface,Web用户界面)。(2)驱动程序(Driver)。负责查询提交和组件调度,管理的组件包括编译器(Com

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论