大数据采集与预处理课件:大数据Hadoop平台的Flume数据采集框架-日志数据采集应用案例-01_第1页
大数据采集与预处理课件:大数据Hadoop平台的Flume数据采集框架-日志数据采集应用案例-01_第2页
大数据采集与预处理课件:大数据Hadoop平台的Flume数据采集框架-日志数据采集应用案例-01_第3页
大数据采集与预处理课件:大数据Hadoop平台的Flume数据采集框架-日志数据采集应用案例-01_第4页
大数据采集与预处理课件:大数据Hadoop平台的Flume数据采集框架-日志数据采集应用案例-01_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

大数据Hadoop平台的Flume数据采集框架——日志数据采集应用案例-01本章学习目标了解基于Hadoop的大数据平台下的数据采集所要解决的问题了解Hadoop下分布式文件系统HDFS的基本使用了解Flume的作用、安装掌握如何配置Flume实现对不同任务环境下的数据采集本章将首先简要介绍开源大数据Hadoop平台,演示其分布式文件系统HDFS的基本使用。然后讲解Flume的安装,并且通过两个案例讲解Flume的配置要点。最后通过习题来强化对知识点的掌握和应用。9.1任务描述本章将模拟两个业务场景,一个是电商平台的web日志记录采集,另一个是基于TCP端口的日志记录采集。针对电商平台的web日志,一般来说,web开发人员都会在开发的web应用中进行埋点操作,例如监控用户在页面的停留时间、用户在页面之间的流转、用户登录时间次数等等一系列数据,并将这些数据记录到web日志文件中,以便于业务部门对数据进行进一步的处理和分析,这也是大数据环境下的物品推荐、用户画像等应用领域的数据来源。我们将使用Flume对web日志文件夹中的数据文件进行监控和采集。针对另一个TCP端口的日志记录采集应用也较为广泛,例如典型的对MySQL数据库通过编写触发器监控其增删改操作,实现对数据更新事件的监控,该技术有广泛的应用,例如实现MySQL的读写分离、主从同步或者将关系数据库的数据同步到类似HBase或者Redis等键值数据库中增强对系统企业业务的响应速度等等,而触发器就可以将监控到的数据更新动作写入某个TCP端口,我们将使用Flume来采集该端口的数据,实现灵活的数据采集方案。9.2Hadoop介绍Hadoop是主流的大数据存储和分析平台之一。它是来源于Apache基金会以Java编写的开源分布式框架项目。其核心组件是HDFS、YARN和MapReduce,其它组件为:HBase、HIVE、Zookeeper、Spark、Kafka、Flume、Ambari、和Sqoop等。这些组件共同提供了一套完成服务或更高级的服务。Hadoop可以将大规模海量数据进行分布式并行处理。Hadoop具有高度容许错性、可扩展性、高可靠性和稳定性。Hadoop生态圈9.2.1Hadoop核心组件和工作原理Hadoop有三个核心组件:HDFS(数据存储)MapReduce(分布式离线计算)

YARN(资源调度)HDFSHadoop分布式文件系统HDFS属于Hadoop的底层核心组件。它是分布式文件系统的一种,并具备以下特点①海量数据和流式数据访问读写交互能力②高度容错能力③移动计算④部署方便MapReduceMapReduce是建立在HDFS之上的数据映射和化简并行处理技术。它是一种具有线性特质的,可扩展的编程模型。它对网络服务器日志等半结构化和非结构化数据的处理非常有效。MAP和REDUCE分别代表两种函数。前者主要负责将一个任务进行碎片化处理,后者主要负责将各种碎片化信息进行重组汇总工作过程如下:①从数据源获取需要输入的数据②通过split函数对原始数据进行分割③通过map函数对分割的数据进行标记映射④通过shuffle函数对标记映射之后的数据进行分类⑤通过reduce函数对分类之后的进行聚类统计⑥输出MapReduce的统计分析结果Yarn由于MapReduce存在一定的局限性,例如Jobtracker既要负责资源管理,又要监控、跟踪、记录和控制任务,成为整个MapReduce的性能瓶颈。最重要的是,MapReduce在系统的整体资源利用率方面相对较低。因此,为了优化和提升MapReduce的性能和资源利用率,Hadoop引入了YARN专门用于整合Hadoop集群资源,并支持其他分布式计算模式YARN的组成部分主要由三个组件:ResourceManager、NodeManager和ApplicationMaster。9.2.2Hadoop生态圈简介Hadoop生态圈架构可以分为多个层级,具体如下:(1)数据来源层能够涵盖结构化数据(数据库)、半结构化数据(文件日志)和非结构化数据(视频、音频和PPT等)。(2)数据传输层能够充分发挥集群网络优势,高效地并发和并行传输数据。(3)数据存储层不仅能够充分发挥集群强大的整体存储能力,还能通过数据冗余的方式有效提高数据安全性以及数据读写效率。(4)资源管理层能够根据集群各节点资源(计算资源、存储资源和网络资源)使用情况合理、平衡地分配和安排各节点在整个数据处理过程中的任务。(5)数据计算层能够根据具体的业务计算需求,提供离线计算和实时计算。一般对于规模和体量较大的历史业务数据采用离线计算,对于不断修改和新增的流式数据采用实时计算。离线计算适合利用非业务处理高峰时间等对实时性要求不高的业务,实时计算机适合对时间和效率较高的业务需求。(6)任务调度层能够根据Hadoop大数据平台系统的当前的任务数量和状态,按照一定的调度算法对任务进行合理调度,从而优化和平衡系统整体的运行效率。(7)业务模型层能够提供直观、简介、精准的数据可视化呈现和应用效果,帮助用户提升业务的分析和处理能力。9.3Flume介绍

Flume是一种分布式,可靠且可用的服务,用于有效地收集,聚合和移动大量日志数据。它具有基于流数据流的简单灵活的体系结构。它具有可调整的可靠性机制以及许多故障转移和恢复机制,具有强大的功能和容错能力。它使用一个简单的可扩展数据模型,允许在线分析应用程序。Flume具有如下特点:①可靠性基于Hadoop的HDFS分布式文件系统集群,Flume传送的日志数据在遇到单节点失败的时候能够将数据传送到其他节点,避免了数据丢失。②可扩展性Flume采用三层架构:agent,collector和storage,每一层均可以水平扩展,并由一个或多个master统一监控、维护和管理。③可管理性agent和colletor由master统一管理,多个master又由ZooKeeper统一管理,在master上可以通过web和shellscriptcommand两种形式对数据流进行管理,并可以对各个数据源配置和动态加载。9.3Flume介绍Flume的组织架构如图:①Source:数据的来源和方式②Channel:数据的缓冲池③Sink:定义了数据输出的方式和目的地Flume的关键流程是首先通过source获取到数据源的数据,然后将数据缓存在Channel当中以保证数据传输过程中不丢失,最后通过Sink将数据发送到指定的位置。9.4Flume的安装

Flume组件本身由于使用Java开发,具有良好的跨平台特性,因此可以在linux和Windows等操作系统上运行。但由于我们的实验是要将采集到的数据放入到Hadoop的HDFS上,而且大数据集群的环境一般也使用Linux操作系统作为承载,因此,我们这里使用Linux操作系统作为我们的练习平台。在众多Linux发行版中,我们选择适应性较为广泛、支持较为完善的CentOS7。Hadoop版本一直在迭代更新中,最新的版本对权限配置等有了更多额外的要求,为了将学习的主要精力集中在Flume的数据采集功能上,我们这里选用Hadoop2.7,而Flume的版本上,我们选择Flume1.9。在该书的使用过程中,读者可以使用该书搭配提供的,基于virtualbox7.0虚拟机,操作系统为CentOS7,并已安装好Hadoop伪分布式的镜像文件。也可以根据ApacheHadoop官方文档自行进行Hadoop伪分布式的搭建。该环境作为后续操作的前置条件。主要包含以下环节:1. Hadoop服务的确认和HDFS基本操作2. Flume的安装1. Hadoop服务的确认和HDFS基本操作使用virtualbox打开给定的vbox文件:1. Hadoop服务的确认和HDFS基本操作在虚拟机上,右键点击,选择Start启动虚拟机:等待虚拟机启动完毕后,在登录界面输入用户名和密码为:用户名:root密码:root登录成功后的界面为:1. Hadoop服务的确认和HDFS基本操作输入java–version,观察输出。紧接着,运行start-dfs.sh启动HDFS服务。运行jps,查看是否确实有jvm进程:1. Hadoop服务的确认和HDFS基本操作执行:hdfsdfs–lshdfsdfs–putREADME.txt/README.txthdfsdfs–cat/README.txt2.

Flume的安装Flume的安装和Hadoop以及Hadoop技术栈中的其他组件安装类似,都是首先将二进制包解压缩,然后修改其配置文件即可。由于修改配置文件是下一部分的内容,因此这里我们主要进行二进制包的解压缩工作。首先,确保我们的/opt/apache-flume-1.9.0-bin.tar.gz文件存在。如果是使用的教材提供的环境,该文件已经放置了进去。如果读者是自己搭建了Hadoop的环境,那么需要virtualbox的共享文件夹功能将apache-flume-1.9.0-bin.ta

温馨提示

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

评论

0/150

提交评论