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. functool.wraps and functools.partial

    functools.partial 通过包装手法,允许我们 "重新定义" 函数签名.  通常是将函数的部分参数给固定下来, 从而形成一个输入参数更少的新函数. functool.w ...

  2. nginx 缓存处理

    核心指令   proxy_cache_path /data/nginx/cache/one levels=1:2 keys_zone=one:10m max_size=10g; proxy_cache ...

  3. ORM 查询

    ORM版学员管理系统 班级表 表结构 class Class(models.Model): id = models.AutoField(primary_key=True) # 主键 cname = m ...

  4. IIS6自带FTP安装及配置方法

    参考:http://v.huweishen.com/video/9.html ·IIS自带的FTP服务是最安全的,不会像Serv-U那样存在各种漏洞:但其配置过程也比较复杂. ·本节将以虚拟目录方式, ...

  5. RK3288 指令查看HDMI当前分辨率和支持的分辨率

    $ adb shell root@xxx:/ # cd /sys/class/display/HDMI cd /sys/class/display/HDMI root@xxx:/sys/class/d ...

  6. Fluent NHibernate AutoMapping Conventions

    前言 使用nhibernate在项目中不管是代码或者xml文件映射方式,如果项目较大编写映射也应该算一笔大的工作量了,使用Fluent Nhibernate自己编写映射规则,将从conventions ...

  7. C#String地址、拼接性能学习

    String类型不可变.定义string变量时会在堆上分配存储空间,而对该变量进行值变更时会重新分配一个存储空间,且保留原存储空间. 测试思路:获取string类型变量值变更前后的存储空间地址,判断地 ...

  8. C程序花括号嵌套层次统计(新)

    [问题描述] 编写程序,统计给定的C源程序中花括号的最大嵌套层次,并输出花括号嵌套序列,该程序没有语法错误. 注意:1)源程序注释(/* … */)中的花括号应被忽略,不参与统计.2)源程序中的字符串 ...

  9. Struts2.0 xml文件的配置(package,namespace,action)

    struts.xml配置 struts.xml文件是整个Struts2框架的核心. struts.xml文件内定义了Struts2的系列Action,定义Action时,指定该Action的实现类,并 ...

  10. Java-Runoob:Java 数组

    ylbtech-Java-Runoob:Java 数组 1.返回顶部 1. Java 数组 数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同. Java 语言 ...