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的更多相关文章

  1. 互联网大规模数据分析技术(自主模式)第五章 大数据平台与技术 第10讲 大数据处理平台Hadoop

    大规模的数据计算对于数据挖掘领域当中的作用.两大主要挑战:第一.如何实现分布式的计算 第二.分布式并行编程.Hadoop平台以及Map-reduce的编程方式解决了上面的几个问题.这是谷歌的一个最基本 ...

  2. 大数据征信的应用和启示:ZestFinance的基于大数据的信用评估技术

    http://www.d1net.com/bigdata/news/325426.html 2014年11月,本文作者有机会和ZestFinance的创始人和首席执行官梅里尔(Douglas C.Me ...

  3. 孙荣辛|大数据穿针引线进阶必看——Google经典大数据知识

    大数据技术的发展是一个非常典型的技术工程的发展过程,荣辛通过对于谷歌经典论文的盘点,希望可以帮助工程师们看到技术的探索.选择过程,以及最终历史告诉我们什么是正确的选择. 何为大数据   "大 ...

  4. Oracle大数据解决方案》学习笔记5——Oracle大数据机的配置、部署架构和监控-1(BDA Config, Deployment Arch, and Monitoring)

    原创预见未来to50 发布于2018-12-05 16:18:48 阅读数 146  收藏 展开 这章的内容很多,有的学了. 1. Oracle大数据机——灵活和可扩展的架构 2. Hadoop集群的 ...

  5. 一起来学大数据——走进Linux之门,学习大数据的重中之重

    昨天我们看了有关大数据Hadoop的一些知识点,但是要在学习大数据之前,我们还是要为大数据的环境做一些的部署. 那么,今天我们就来讲讲开启我们大数据之路的Linux,跟上我们的脚步yo~ Linux介 ...

  6. 大数据平台的技术演化之路 诸葛io平台设计实例

    如今,数据分析能力正逐渐成为企业发展的标配,企业通过数据分析的过程将数据中的信息提取出来,进行处理.识别.加工.呈现,最后成为指导企业业务发展的知识和智慧.而处理.识别.加工.呈现的过程从本质上来讲, ...

  7. 大数据 -- Cloudera Manager(简称CM)+CDH构建大数据平台

    一.Cloudera Manager介绍 Cloudera Manager(简称CM)是Cloudera公司开发的一款大数据集群安装部署利器,这款利器具有集群自动化安装.中心化管理.集群监控.报警等功 ...

  8. 民生银行十五年的数据体系建设,深入解读阿拉丁大数据生态圈、人人BI 是如何养成的?【转】

    早在今年的上半年我应邀参加了由 Smartbi 主办的一个小型数据分析交流活动,在活动现场第一次了解到了民生银行的阿拉丁项目.由于时间关系,嘉宾现场分享的内容非常有限.凭着多年对行业研究和对解决方案的 ...

  9. 大数据项目相关技术栈(Hadoop周边技术)

    J2EE 框架Spring 开发框架 + SSH or SSM Lucene 索引和查询IKAnalyzer 分词Webmagic 爬虫 ETL工具:KettleSqoop 结构化数据库-hadoop ...

随机推荐

  1. distinct和group by的性能比较

    distinct和group by的性能比较 当去重复的字段 的个数比较多的时候,group by 比distinct要快很多 当去重复的字符 的个数比较少的时候,distinct 比group by ...

  2. FPGA与图像处理

    用FPGA做图像处理最关键的一点优势就是:FPGA能进行实时流水线运算,能达到最高的实时性.因此在一些对实时性要求非常高的应用领域,做图像处理基本就只能用FPGA.例如在一些分选设备中图像处理基本上用 ...

  3. Firewalld防火墙与ICMP攻击

    原文地址:http://www.excelib.com/article/293/show 提到ICMP大家应该都很熟悉,可能有人会说:不就是ping吗?但是说到ICMP攻击以及相关防御措施可能就有的人 ...

  4. RTMP(实时信息传输协议)详解

    RTMP协议是Real Time Message Protocol(实时信息传输协议)的缩写,它是由Adobe公司提出的一种应用层的协议,用来解决多媒体数据传输流的多路复用(Multiplexing) ...

  5. 数据结构与算法JavaScript描述——栈的使用

    有一些问题特别适合用栈来解决.本节就介绍几个这样的例子.   1) 数制间的相互转换 可以利用栈将一个数字从一种数制转换成另一种数制.假设想将数字n 转换为以b 为基数的数字,实现转换的算法如下. 使 ...

  6. java中FIle的用法

    package com.a.b; import java.io.*; public class Cmo { public static void main(String[] args) throws ...

  7. Java 打印一个心心

    package Day8_06; public class For { public static void main(String[] args) { System.out.println(&quo ...

  8. 在SpringMVC中使用@RequestBody和@ResponseBody注解处理json时,报出HTTP Status 415的解决方案

    我在使用SpringMVC的@RequestBody和@ResponseBody注解处理JSON数据的时候,总是出现415的错误,说是不支持所提交数据格式,我在页面中使用了JQuery的AJAX来发出 ...

  9. 23_java之IO操作

    01输入和输出 * A:输入和输出 * a: 参照物 * 到底是输入还是输出,都是以Java程序为参照 * b: Output * 把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操 ...

  10. C# 强制删除文件,解除占用的几点思考

    有一个古老的传说: 占用的文件是可以被强制删除的... 如果被别的应用程序打开着,你就要先找到那个打开的程序,结束掉才行.或者关闭关闭相关进程,延迟的方法. 一般来说被占用就意味着有其它进行或者线程对 ...