第五章 大数据平台与技术 第12讲 大数据处理平台Spark






Spark支持多种的编程语言

对比scala和Java编程上节课的计数程序。相比之下,scala简洁明了。

Hadoop的IO开销大导致了延迟高,也就是说任务和任务之间涉及到I/O操作。前一个任务完成之前没有写入硬盘,下一个任务无法从硬盘当中获取数据,从而导致了这个高延迟。

Spark与Hadoop的对比:Spark也是MapReduce,但是它的编程模式比Hadoop的MapReduce更灵活,而且会支持多种数据集的操作。其次呢,它不是从磁盘中读取数据,它是从内存中读取数据。我把结果中间结果写到内存,下一步的操作从内存当中读数据,将远远快于从磁盘,这对于迭代运算的效率非常高。谷歌的排序算法PageRank,它就是一种典型的迭代运算。同时Spark是一种基于DAG的任务调度,它比Hadoop的迭代机制执行的效率更高。

Hadoop与Spark的执行流程对比:
从硬盘读数据每秒钟只有30MB-35MB。所以这样就大大限制了运算的速度。内存的存取速度是远远大于磁盘的,所以它的计算速度显然快于Hadoop平台。

机器学习中一个最典型的应用:逻辑回归。Hadoop执行迭代运算非常耗资源,而Spark将数据载入内存之后的迭代运算可以直接使用内存当中的中间结果做运算,避免了频繁从磁盘当中读取数据。
Spark消耗的资源比Hadoop小很多。

大数据处理要解决的三个类型的运算:大批的数据运算,成批成批的处理。二、基于历史数据的交互式查询。三、基于实时数据流的处理。批量数据可以在数十分钟和数小时之内完成计算。交互式的查询,用户没有那么多耐心去等待,需要在数十秒或者是几分钟之内告诉结果。实时数据流的处理对实时的要求更高,需要在百毫秒或者是数秒之间。以前要部署不同的平台解决数据对实时处理速度要求不同的问题。MapReduce平台解决批量数据处理问题,Impala平台解决历史数据的交互式查询问题,Storm平台解决实时数据流的问题。当一个应用面临三种不同的数据处理的时候,需要进行不同平台的整合,这样带来了较高的成本,而且资源的调度和分配比较困难。

Spark的生态系统:

批处理基于内存的计算、交互式查询SQL的查询、流数据处理 流数据的计算
Spark成为伯克利数据分析栈的重要组成部分。

Spark生态系统应用场景:

Hadoop和Spark统一部署(Hadoop有些功能还无法用Spark代替)

云计算:用户不需要部署自己的平台,只需要使用付费

云计算本身也是大数据的一种业务模式

第五章 大数据平台与技术 第12讲 大数据处理平台Spark的更多相关文章
- 互联网大规模数据分析技术(自主模式)第五章 大数据平台与技术 第10讲 大数据处理平台Hadoop
大规模的数据计算对于数据挖掘领域当中的作用.两大主要挑战:第一.如何实现分布式的计算 第二.分布式并行编程.Hadoop平台以及Map-reduce的编程方式解决了上面的几个问题.这是谷歌的一个最基本 ...
- 大数据征信的应用和启示:ZestFinance的基于大数据的信用评估技术
http://www.d1net.com/bigdata/news/325426.html 2014年11月,本文作者有机会和ZestFinance的创始人和首席执行官梅里尔(Douglas C.Me ...
- 孙荣辛|大数据穿针引线进阶必看——Google经典大数据知识
大数据技术的发展是一个非常典型的技术工程的发展过程,荣辛通过对于谷歌经典论文的盘点,希望可以帮助工程师们看到技术的探索.选择过程,以及最终历史告诉我们什么是正确的选择. 何为大数据 "大 ...
- Oracle大数据解决方案》学习笔记5——Oracle大数据机的配置、部署架构和监控-1(BDA Config, Deployment Arch, and Monitoring)
原创预见未来to50 发布于2018-12-05 16:18:48 阅读数 146 收藏 展开 这章的内容很多,有的学了. 1. Oracle大数据机——灵活和可扩展的架构 2. Hadoop集群的 ...
- 一起来学大数据——走进Linux之门,学习大数据的重中之重
昨天我们看了有关大数据Hadoop的一些知识点,但是要在学习大数据之前,我们还是要为大数据的环境做一些的部署. 那么,今天我们就来讲讲开启我们大数据之路的Linux,跟上我们的脚步yo~ Linux介 ...
- 大数据平台的技术演化之路 诸葛io平台设计实例
如今,数据分析能力正逐渐成为企业发展的标配,企业通过数据分析的过程将数据中的信息提取出来,进行处理.识别.加工.呈现,最后成为指导企业业务发展的知识和智慧.而处理.识别.加工.呈现的过程从本质上来讲, ...
- 大数据 -- Cloudera Manager(简称CM)+CDH构建大数据平台
一.Cloudera Manager介绍 Cloudera Manager(简称CM)是Cloudera公司开发的一款大数据集群安装部署利器,这款利器具有集群自动化安装.中心化管理.集群监控.报警等功 ...
- 民生银行十五年的数据体系建设,深入解读阿拉丁大数据生态圈、人人BI 是如何养成的?【转】
早在今年的上半年我应邀参加了由 Smartbi 主办的一个小型数据分析交流活动,在活动现场第一次了解到了民生银行的阿拉丁项目.由于时间关系,嘉宾现场分享的内容非常有限.凭着多年对行业研究和对解决方案的 ...
- 大数据项目相关技术栈(Hadoop周边技术)
J2EE 框架Spring 开发框架 + SSH or SSM Lucene 索引和查询IKAnalyzer 分词Webmagic 爬虫 ETL工具:KettleSqoop 结构化数据库-hadoop ...
随机推荐
- 手写html表格熟练度练习
table中的colspan和rowspan 经常手写表格时 查半天的两个属性,记下来 <!DOCTYPE html> <html lang="en" > ...
- 批处理实现mysql的备份
脚本 @echo off echo. echo MySQL数据库备份 echo ***************************** echo. echo 今天是 %date% echo 时间是 ...
- C#制作自定义安装程序
(一),安装程序 以前用vs制作过安装程序,现在把步骤写出来,有帮助的大家一定要顶哦 第一步:建立工程 1.打开vs,新建项目->其他项目类型->安装和部署(這個子项下面有安装项目和Web ...
- bzoj2184: 任意图的匹配
Description 每天都要考,每天都要讲,大家注意力都集中不起来了,每天听解题报告时都有人交头接耳(也包括我,呵呵).这样做大大的影响的学习效率(可能吧).于是,有些好奇心重的同学就开始研究,怎 ...
- TCP之三:TCP/IP协议中backlog参数(队列参数)
目录: <TCP洪水攻击(SYN Flood)的诊断和处理> <TCP/IP协议中backlog参数> TCP建立连接是要进行三次握手,但是否完成三次握手后,服务器就处理(ac ...
- 怎样优化CPU
大家写好的代码,在浏览器上运行,总会有怎样才能让他效率更高,不卡顿...等问题,就本人而言,我觉得是以下这几个导致CPU 过高 1.不要直接监听scroll,等到鼠标滚动停止的时候再去触发事件2.控制 ...
- UI“三重天”之实践Uiautomator1
说起来Uiautomator也有一年没碰过了.借此来回顾.总结一下. 也是阅读<精通APP自动化测试>一书.实践出真知的一个框架.编写了部分移动端UI自动化脚本.后续再深入学习. 虽然现在 ...
- SQLSERVER出错提示:此上下文中不允许使用''。此处只允许使用常量、表达式或变量。不允许使用列名。
在执行一段SQL语句时出现了这样的一段错误提示,在网上找了不少答案,都说的不是很详细,反复修改试验,最终解决了此问题.原SQl语句为: insert into shoufei(djbh,sflb,jk ...
- Go - 开始
学习Go的缘由 由于LZ目前在使用docker,docker的编程语言使用的是“Go”,所以想更加深入的了解Docker(尝试着看懂source code)遂尝试了解下Golang. 安装 LZ用的是 ...
- node操作mongoDB数据库的最基本例子
连接数据库 var mongo=require("mongodb"); var host="localhost"; var port=mongo.Connect ...