Spark是一个针对超大数据集合的低延迟的集群分布式计算系统,比MapReducer快40倍左右。

  Spark是hadoop的升级版本,Hadoop作为第一代产品使用HDFS,第二代加入了Cache来保存中间计算结果,并能适时主动推Map/Reduce任务,第三代就是Spark倡导的流Streaming。

  Spark兼容Hadoop的APi,能够读写Hadoop的HDFS HBASE 顺序文件等。

  传统Hadoop如下图 性能慢原因有:磁盘IO 复制和序列化等等,涉及图中的HDFS

而在Spark中,使用内存替代了使用HDFS存储中间结果:

Spark架构图

Spark的编程模型

弹性的分布数据集(RDD) :分布式对象集合能够跨集群在内存中保存。多个并行操作,失败自动恢复。

使用内存集群计算, 内存访问要比磁盘快得多。有Scala Java Python API,能够从Scala和Python访问。

下面是一个简单的对日志log计数的代码:

/*** SimpleJob.scala ***/

import spark.SparkContext
import SparkContext._

object SimpleJob {
def main(args: Array[String]) {

val logFile = "/var/log/syslog" // Should be some file on your system
val sc = new SparkContext("local", "Simple Job", "$YOUR_SPARK_HOME",
List("target/scala-2.9.3/simple-project_2.9.3-1.0.jar"))
val logData = sc.textFile(logFile, 2).cache()
val numAs = logData.filter(line => line.contains("a")).count()
val numBs = logData.filter(line => line.contains("b")).count()
println("Lines with a: %s, Lines with b: %s".format(numAs, numBs))
}
}

运行原理图:

当进行filter操作是,是一种transformed RDD,RDD跟踪这种转换,当有数据丢失失败时,重新计算 得到这个数据。

Spark支持物流logistic表达式,如下图:

物流表达式相比Hadoop的遍历性能:

支持以下数据分析操作:

Spark流处理

以推流方式处理数据:

Shark

Shark是基于Spark上的“Hive”,看看基于hadoop的Hive:

而Shark的结构图:

Hive是记录每行记录一个对象,而shark是每列记录:

执行SQL时间对比:

Spark - 大数据Big Data处理框架相关推荐

  1. 大数据Big Data

    转载自  大数据Big Data 2012年本站曾对大数据预测:如果说2012年是大数据概念为人所知.引人瞩目.小试牛刀的一年,那么2013年大数据将会实现产品部署,早期投资获得回报,一小部分的产业被 ...

  2. 认知:大数据-Big Data

    大数据-Big Data 作者 | WenasWei 一 大数据 大数据(Big Data)也称为海量数据(Massivee),是随着计算机技术及互联网技术的高速发展而产生的数据现象,2013年也称为 ...

  3. Spark大数据分布式机器学习处理实战

    前言 Spark是一种大规模.快速计算的集群平台,本公众号试图通过学习Spark官网的实战演练笔记提升笔者实操能力以及展现Spark的精彩之处.有关框架介绍和环境配置可以参考以下内容: 大数据处理框架 ...

  4. 大数据(big data)_如何使用Big Query&Data Studio处理和可视化Google Cloud上的财务数据...

    大数据(big data) 介绍 (Introduction) This article will show you one of the ways you can process stock pri ...

  5. Ronald Van Loon/Greg White带你领略Hadoop/Spark大数据CCA175认证(一)

    目录 圣普伦Simplilearn课程概述: 圣普伦的Hadoop/Spark大数据CCA175认证培训课程特点: 上课模式: 预修课程: 适合人群 主要学习成果: 认证考试: 认证条件: 课程设置: ...

  6. Spark大数据技术与应用 第一章Spark简介与运行原理

    Spark大数据技术与应用 第一章Spark简介与运行原理 1.Spark是2009年由马泰·扎哈里亚在美国加州大学伯克利分校的AMPLab实验室开发的子项目,经过开源后捐赠给Aspache软件基金会 ...

  7. 王家林大咖新书预发布:清华大学出版社即将出版《Spark大数据商业实战三部曲:内核解密|商业案例|性能调优》第二版 及《企业级AI技术内幕讲解》

    王家林大咖新书预发布:清华大学出版社即将出版<Spark大数据商业实战三部曲:内核解密|商业案例|性能调优>第二版,新书在第一版的基础上以Spark 2.4.3版本全面更新源码,并以Ten ...

  8. 政府大数据治理体系的框架及其实现的有效路径

    政府大数据治理体系的框架及其实现的有效路径 安小米1,2,郭明军1,洪学海3,魏玮1 1 中国人民大学信息资源管理学院,北京 100872 2 数据工程与知识工程教育部重点实验室(中国人民大学),北京 ...

  9. 2018年新春报喜!热烈祝贺王家林大咖大数据经典传奇著作《SPARK大数据商业实战三部曲》 畅销书籍 清华大学出版社发行上市!

    2018年新春报喜!热烈祝贺王家林大咖大数据经典传奇著作<SPARK大数据商业实战三部曲>畅销书籍 清华大学出版社发行上市! 本书基于Spark 2.2.0新版本,以Spark商业案例实战 ...

最新文章

  1. Android UI滑动加载源码
  2. learn avalon2
  3. 成功创业者必须具备的9个特质
  4. 数据库-数据类型及主键外键
  5. Android端发送字符到Wed端,Android面试-socket和websocket
  6. 微软宣布新命令行工具 Windows Terminal 和 WSL2
  7. 东部985硕士毕业,北方二线省会军工所,还是上海互联网大厂?
  8. oracle不存在共享内存域,Oracle数据库共享内存分配不足怎么办
  9. matlab中 nntwarn off,network的subsindex的定义问题
  10. java实现阴历、阳历互相转换
  11. 学习《机器学习100天》第27天 什么是神经网络? | 深度学习,第1章
  12. 移动端:纯html 基于 mescroll 插件实现上拉加载,下拉刷新,返回顶部
  13. ubuntu硬盘序列号怎么查询_Ubuntu系统下查看硬盘信息
  14. 微信公众号开发清理缓存
  15. 磊科linux无线网卡驱动安装步骤,怎么安装磊科nw336无线网卡驱动
  16. Java获取IPv4/IPv6地理位置-IP地址库
  17. 手把手教你玩多数据源动态切换
  18. 【CMU15-445数据库】bustub Project #0:Trie 树实现(C++ Primer)
  19. 制作系统启动安装U盘
  20. python虚假评论识别程序_还在刷虚假评论?小心了,可以检测虚假评论的第三方工具来了...

热门文章

  1. 【Groovy】map 集合 ( map 集合遍历 | 使用 map 集合的 each 方法遍历 map 集合 | 代码示例 )
  2. 【Android 逆向】类加载器 ClassLoader ( 类加载器源码简介 | BaseDexClassLoader | DexClassLoader | PathClassLoader )
  3. 【C 语言】文件操作 ( 文件加密解密 | 加密解密原理 | 对称加密 | 非对称加密 | 散列函数 )
  4. 【Android 逆向】使用 DB Browser 查看并修改 SQLite 数据库 ( 从 Android 应用数据目录中拷贝数据库文件 | 使用 DB Browser 工具查看数据块文件 )
  5. 【Java 并发编程】线程池机制 ( 线程池状态分析 | 线程池状态转换 | RUNNING | SHUTDOWN | STOP | TIDYING | TERMINATED )
  6. 【设计模式】责任链模式 ( 简介 | 适用场景 | 优缺点 | 代码示例 )
  7. 【C 语言】文件操作 ( 读文本文件 | 文本加密解密 | fgets 函数 | fputs 函数 )
  8. 【Android 高性能音频】Oboe 开发流程 ( Oboe 音频帧简介 | AudioStreamCallback 中的数据帧说明 )
  9. 【计算机网络】网络安全 : 入侵检测系统 ( 基于特征的入侵检测系统 | 基于异常的入侵检测系统 )
  10. 【Kotlin】Kotlin Sealed 密封类 ( 密封类声明 | 密封类子类定义 | 密封类特点 | 代码示例 )