文档章节

Spark 数据分析导论-笔记

Java搬砖工程师
 Java搬砖工程师
发布于 2018/12/26 13:11
字数 986
阅读 54
收藏 0

Spark Core

  • Spark Core 实现了Spark 的基本功能,包含任务调度内存管理错误恢复、与存储系统交互等模块。
  • Spark Core 中还包含了
    • 对弹性分布式数据集(resilient distributed dataset,简称RDD)的API 定义。
      • RDD 表示分布在多个计算节点上可以并行操作的元素集合
      • 是Spark 主要的编程抽象
      • Spark Core 提供了创建和操作这些集合的多个API。

Spark SQL

  • Spark SQL 是Spark 用来操作结构化数据的程序包
  • 使用SQL或者Apache Hive 版本的SQL 方言(HQL)来查询数据。
    • Spark SQL 支持多种数据源,比如Hive 表、Parquet 以及JSON 等。
  • 除了为Spark 提供了一个SQL 接口,
    • Spark SQL 还支持开发者将SQL 和传统的RDD 编程的数据操作方式相结合,
      • 不论是使用Python、Java 还是Scala,
    • 开发者都可以在单个的应用中同时使用SQL 和复杂的数据分析。
    • 通过与Spark所提供的丰富的计算环境进行如此紧密的结合,
      • Spark SQL 得以从其他开源数据仓库工具中脱颖而出。
    • Spark SQL 是在Spark 1.0 中被引入的。

Spark Streaming

  • Spark Streaming 是Spark 提供的对实时数据进行流式计算组件
    • 比如生产环境中的网页服务器日志,
    • 或是网络服务中用户提交的状态更新组成的消息队列,都是数据流。
  • SparkStreaming 提供了用来操作数据流的API,
    • 并且与Spark Core 中的RDD API 高度对应。
  • 这样一来,程序员编写应用时的学习门槛就得以降低,
    • 不论是操作内存或硬盘中的数据,
    • 还是操作实时数据流,
    • 程序员都更能应对自如。
  • 从底层设计来看,Spark Streaming 支持与Spark Core 同级别容错性、吞吐量以及可伸缩性

MLlib

  • Spark 中还包含一个提供常见的机器学习(ML)功能的程序库,叫作MLlib。
  • MLlib 提供了很多种机器学习算法,
    • 包括分类、回归、聚类、协同过滤等,
    • 还提供了模型评估、数据导入等额外的支持功能。
  • MLlib 还提供了一些更底层的机器学习原语
    • 包括一个通用的梯度下降优化算法。
  • 所有这些方法都被设计为可以在集群上轻松伸缩的架构。

GraphX

  • GraphX 是用来操作图(比如社交网络的朋友关系图)的程序库,
    • 可以进行并行的图计算。
  • 与Spark Streaming 和Spark SQL 类似,
    • GraphX 也扩展了Spark 的RDD API,
    • 能用来创建一个顶点和边都包含任意属性的有向图。
  • GraphX 还支持针对图的各种操作
    • (比如进行图分割的subgraph 和操作所有顶点的mapVertices),
    • 以及一些常用图算法(比如PageRank和三角计数)。

集群管理器

  • 就底层而言,Spark 设计为可以高效地在一个计算节点到数千个计算节点之间伸缩计算。
  • 为了实现这样的要求,同时获得最大灵活性,
    • Spark 支持在各种集群管理器(clustermanager)上运行,
      • 包括Hadoop YARN、Apache Mesos,以及Spark 自带的一个简易调度器,叫作独立调度器。
  • 如果要在没有预装任何集群管理器的机器上安装Spark,
    • 那么Spark自带的独立调度器可以让你轻松入门;
  • 而如果已经有了一个装有Hadoop YARN 或Mesos的集群,
    • 通过Spark 对这些集群管理器的支持,
    • 你的应用也同样能运行在这些集群上。

© 著作权归作者所有

Java搬砖工程师
粉丝 36
博文 648
码字总数 343935
作品 0
南京
程序员
私信 提问
基于Spark自动扩展scikit-learn (spark-sklearn)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 https://blog.csdn.net/sunbow0/article/details/50848719 1、基于Spark自动扩展scikit-lear...

sunbow0
2016/03/10
0
0
Spark 学习资源收集【Updating】

(一)spark 相关安装部署、开发环境 1、Spark 伪分布式 & 全分布式 安装指南 http://my.oschina.net/leejun2005/blog/394928 2、Apache Spark探秘:三种分布式部署方式比较 http://dongxic...

大数据之路
2014/09/08
5.4K
0
福利丨拿下这些大数据好书,在11月做更好的自己!

据小编的不完全观察,近期发布的大数据文章都好评如潮,送出的大数据书籍也都受到了大家的热捧和喜爱。因此,为了满足大家日益增长的学习需求与激情,小编在此快马加鞭携手@图灵教育,带来一...

DBAplus社群
2017/10/31
0
0
容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析

摘要: 容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析 (二):Kubernetes如何助力Spark大数据分析 概述 本文为大家介绍一种容器化的数据服务Spark + OSS on ACK,允许...

阿里云云栖社区
2018/04/17
99
0
从Hadoop到Spark的架构实践

当下,Spark已经在国内得到了广泛的认可和支持:2014年,Spark Summit China在北京召开,场面火爆;同年,Spark Meetup在北京、上海、深圳和杭州四个城市举办,其中仅北京就成功举办了5次,内...

Emilypz
2015/10/10
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

如何在 Knative 中部署 WebSocket 和 gRPC 服务?

作者 | 冬岛 阿里云容器平台工程师 导读:虽然说 Knative 默认就支持 WebSocket 和 gRPC,但在使用中会发现,有时想要把自己的 WebSocket 或 gRPC 部署到 Knative 中,还是存在各种不顺利。虽...

阿里云官方博客
16分钟前
2
0
人人都可以掌握的正交试验设计测试用例方法

介绍 TamanduaOATs 是测者开发并开源的生成正交计算的pyd(python库)程序(放到python下的dlls目录下) 项目地址:https://github.com/crisschan/TamanduaOATs 开发语言:c++ python调用方法...

测者陈磊
17分钟前
2
0
报表工具跟BI软件到底有什么区别?看完你就懂了

在很多人入门数据分析师或者投身大数据行业的时候,必然会听到的两个词就是“报表工具”和“BI商业智能”。然而很多人并不明白两者的概念和区别,以为报表就是BI,BI就是报表,其实这是相当错...

朕想上头条
26分钟前
3
0
ValidatorException异常处理-PKIX path building failed

Maven下载依赖抛出一个ssl数字证书的异常:PKIX path building failed: SunCertPathBuilderException: unable to find valid certification path to requested target ,记录一下问题的前因后......

liumapp
33分钟前
3
0
JAVA CAS单点登录之三:CAS代理模式演练

前言 JAVA CAS单点登录之一:搭建CAS服务器 JAVA CAS单点登录之二:CAS普通模式1演练 代理模式相相对上一节的普通模式,更加复杂了。但配置起来也会稍微有些差别。所谓难者不会,会者不难。如...

彬彬公子
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部