版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
其他数据处理框架目录/Contents01Hadoop02Storm03Flink04BeamHadoop01HadoopHadoop是一个由Apache基金会所开发的分布式系统基础架构,是一个存储系统+计算框架的软件框架。主要解决海量数据存储与计算的问题,是大数据技术中的基石。Hadoop以一种可靠、高效、可伸缩的方式进行数据处理,用户可以在不了解分布式底层细节的情况下,开发分布式程序,用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。Hadoop的核心是HDFS和MapReduce、YARN。HadoopDHDFS是一个高度容错性的系统,能检测和应对硬件故障,适合部署在廉价的机器上HDFS采用master/slave架构。一个HDFS集群是由一个Namenode和一定数目的Datanodes组成。EMapReduce是一个基于java的并行分布式计算框架,使用它来编写的数据处理应用可以运行在大型的商用硬件集群上来处理大型数据集中的可并行化问题,数据处理可以发生在存储在文件系统(非结构化)或数据库(结构化)中的数据上。FApacheHadoopYARN是开源Hadoop分布式处理框架中的资源管理和作业调度技术。作为ApacheHadoop的核心组件之一,YARN负责将系统资源分配给在Hadoop集群中运行的各种应用程序,并调度要在不同集群节点上执行的任务。(1)HDFS(2)
MapReduce(3)
YARNStorm02Storm简单的编程模型:类似于MapReduce降低了并行批处理复杂性,Storm降低了实时处理的复杂性,只需实现几个接口即可(Spout实现ISpout接口,Bolt实现IBolt接口)。支持多种语言:你可以在Storm之上使用各种编程语言。默认支持Clojure、Java、Ruby和Python。要增加对其他语言的支持,只需实现一个简单的Storm通信协议即可。容错性:nimbus、supervisor都是无状态的,可以用kill-9来杀死Nimbus和Supervisor进程,然后再重启它们,任务照常进行;当worker失败后,supervisor会尝试在本机重启它。分布式:计算是在多个线程、进程和服务器之间并行进行的。持久性、可靠性:消息被持久化到本地磁盘,并且支持数据备份防止数据丢失。可靠的消息处理:Storm保证每个消息至少能得到一次完整处理。任务失败时,它会负责从消息源重试消息(ack机制)。快速、实时:Storm保证每个消息能能得到快速的处理。StormStorm的核心组件Nimbus:即Storm的Master,负责资源分配和任务调度。一个Storm集群只有一个Nimbus。Supervisor:即Storm的Slave,负责接收Nimbus分配的任务,管理所有Worker,一个Supervisor节点中包含多个Worker进程。Worker:工作进程,每个工作进程中都有多个Task。Task:任务,在Storm集群中每个Spout和Bolt都由若干个任务(tasks)来执行。每个任务都与一个执行线程相对应。Topology:计算拓扑,Storm的拓扑是对实时计算应用逻辑的封装,它的作用与MapReduce的任务(Job)很相似,区别在于MapReduce的一个Job在得到结果之后总会结束,而拓扑会一直在集群中运行,直到你手动去终止它。Stream:数据流(Streams)是Storm中最核心的抽象概念。一个数据流指的是在分布式环境中并行创建、处理的一组元组(tuple)的无界序列。StormStorm的核心组件Spout:数据源(Spout)是拓扑中数据流的来源。一般Spout会从一个外部的数据源读取元组然后将他们发送到拓扑中。Bolt:拓扑中所有的数据处理均是由Bolt完成的。通过数据过滤(filtering)、函数处理(functions)、聚合(aggregations)、联结(joins)、数据库交互等功能,Bolt几乎能够完成任何一种数据处理需求。Streamgrouping:为拓扑中的每个Bolt的确定输入数据流是定义一个拓扑的重要环节。数据流分组定义了在Bolt的不同任务(tasks)中划分数据流的方式。在Storm中有八种内置的数据流分组方式。Reliability:可靠性。Storm可以通过拓扑来确保每个发送的元组都能得到正确处理。通过跟踪由Spout发出的每个元组构成的元组树可以确定元组是否已经完成处理。Flink03Flink1.处理无界和有界数据任何类型的数据都是作为事件流产生的。信用卡交易,传感器测量,机器日志或网站或移动应用程序上的用户交互,所有这些数据都作为流生成。2.随处部署应用程序ApacheFlink是一个分布式系统,需要计算资源才能执行应用程序。Flink与所有常见的集群资源管理器(如HadoopYARN,ApacheMesos和Kubernetes)集成,但也可以设置为作为独立群集运行。3.运行任意规模应用Flink旨在任意规模上运行有状态流式应用。因此,应用程序被并行化为可能数千个任务,这些任务分布在集群中并发执行。所以应用程序能够充分利用无尽的CPU、内存、磁盘和网络IO。4.利用内存性能有状态的Flink程序针对本地状态访问进行了优化。任务的状态始终保留在内存中,如果状态大小超过可用内存,则会保存在能高效访问的磁盘数据结构中。5.Flink组件栈运行时层以JobGraph形式接收程序。JobGraph即为一个一般化的并行数据流图(dataflow),它拥有任意数量的Task来接收和产生datastream。Beam04Beam1.ApacheBeamSDKBeamSDK提供了一个统一的编程模型,该模型可以表示和转换任何大小的数据集,无论输入是来自批处理数据源的有限数据集,还是来自流数据源的无限数据集。BeamSDK使用相同的类来表示有界和无界数据,并且使用相同的转换对这些数据进行操作。您可以使用选择的BeamSDK来构建定义数据处理管道的程序。Beam当前支持以下特定于语言的SDK:①Java②Python③Go2.ApacheBeamPipelineRunnersBeamPipeline运行器将您使用Beam程序定义的数据处理管道转换为与您选择的分布式处理后端兼容的API。运行Beam程序时,需要为要在其中执行管道的后端指定适当的运行程序。Beam当前支持与以下分布
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年华罗庚说课稿
- 2025-2026学年包身工教学设计说课稿
- 2025-2026学年哥特式音乐游戏说课稿
- 2025-2026学年一年级说课稿下册
- 2026下半年下半年高中体育教资面试球类专项题库及解析
- 小学英语教资面试写作专项题库及答案
- 2025-2026学年冬至美术大班说课稿
- 南京大学分子生物学第24讲
- 《轶事记录法》课件
- 陶行知生活教育思想
- 2026乡村医生单招面试题及答案
- 20265G毫米波频段商业化应用场景与基站建设成本测算
- 小学三年级劳动素养融合课《立体贺卡》教案
- 员工调动管理制度
- 护理教师教学资源整合课件下载
- 广西金之宝年产5万吨环保提金剂建设项目环境影响报告书
- 建筑工程技术课程
- 周围神经调控技术治疗慢性疼痛的专家共识
- 农业田间试验协议书
- 《油气管道无人机智能巡检系统技术管理规范》
- 2026版《三维设计》高三一轮复习物理课时跟踪检测部分参考答案
评论
0/150
提交评论