Spark一:Spark介绍、技术栈与运行模式

一、Spark简介

Spark官网 https://spark.apache.org/

1.1 Spark是什么

Spark是一种通用的大数据计算框架,是基于RDD(弹性分布式数据集)的一种计算模型。

是一种由 Scala 语言开发的快速、通用、可扩展的大数据分析引擎。

1.2 Spark作用

  • 中间结果输出
    Spark的Job中间输出结果可以保存在内存中,从而不再需要读写HDFS
  • MapReduce的替代方案
    Spark比MapReduce平均快10倍以上的计算速度;因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。而且兼容HDFS、Hive,可融入Hadoop的生态系统,以弥补MapReduce的不足。

1.3 Spark特点

  • 速度快
    跟MapReduce对比速度更快
  • 易用性
    支持多种开发语言
  • 通用性
    • 一栈式解决方案:批处理、交互式查询、实时流处理、图计算及机器学习
    • 多种运行模式
    • YARN、 Mesos、 EC2、 Kubernetes、 Standalone(独立模式)、 Local(本地模式)

二、Spark技术栈

Spark Core:实现了 Spark 的基本功能,包含 RDD、任务调度、内存管理、错误恢复、与存储系统交互等模块。

Spark SQL:Spark 用来操作结构化数据的程序包。通过 Spark SQL,我们可以使用 SQL 操作数据。

Spark Streaming:Spark 提供的对实时数据进行流式计算的组件。提供了用来操作数据流的 API。

Spark MLlib:提供常见的机器学习(ML)功能的程序库。包括分类、回归、聚类、协同过滤等,还提供了模型评估、数据导入等额外的支持功能。

GraphX(图计算):Spark 中用于图计算的 API,性能良好,拥有丰富的功能和运算符,能在海量数据上自如地运行复杂的图算法。

集群管理器:Spark 设计为可以高效地在一个计算节点到数千个计算节点之间伸缩计算。

Structured Streaming:处理结构化流,统一了离线和实时的 API。

三、Spark运行模式

3.1 Local本地模式(单机模式)--学习测试使用

分为 local 单线程和 local-cluster 多线程

3.2 standalone 独立集群模式--学习测试使用

典型的 Mater/slave 模式。

3.3 standalone-HA 高可用模式--生产环境使用

基于 standalone 模式,使用 zk 搭建高可用,避免 Master 是有单点故障的。

3.4 on-yarn 集群模式--生产环境使用

运行在 yarn 集群之上,由 yarn 负责资源管理,Spark 负责任务调度和计算。

好处:计算资源按需伸缩,集群利用率高,共享底层存储,避免数据跨集群迁移。

3.5 on mesos 集群模式--国内使用较少

运行在 mesos 资源管理器框架之上,由 mesos 负责资源管理,Spark 负责任务调度和计算.

3.6 on cloud 集群模式--中小公司未来会更多的使用云服务

参考链接:https://mp.weixin.qq.com/s/caCk3mM5iXy0FaXCLkDwYQ

相关推荐
小羊没烦恼!12 小时前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
一隅论数智12 小时前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
尧炎科技13 小时前
防潮抗变形,就选纯品梅花全桉多层板
大数据
程序员大阳14 小时前
副队长大数据教程(5)--集群情况下虚拟机网络配置
大数据·集群·nat·网路
自由能燃气设备14 小时前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远14 小时前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
嘉立创FPC苗工14 小时前
FPC与机器人的双向赋能,解锁智能装备进化新势能
大数据·人工智能·制造·fpc·电路板
AI职业加油站14 小时前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
龙亘川15 小时前
一网统管AI平台民生业务实践:基于城市数字底座赋能公积金业务服务升级
大数据·安全·智慧城市·开源软件·数据可视化·政务
码流子15 小时前
高速公路安全监测实践:碰撞监测预警+物联网底座,从感知到处置的闭环
大数据·人工智能·物联网·算法·架构