当前位置: 首页 > news >正文

Spark大数据分析实战【1.0】

第1章 Spark简介

本章主要介绍Spark框架的概念、生态系统、架构及RDD等,并围绕Spark的BDAS项目及其子项目进行了简要介绍。目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL、Spark Streaming、GraphX、MLlib等子项目,本章只进行简要介绍,后续章节会有详细阐述。

1.1 初识Spark

Spark是基于内存计算的大数据并行计算框架,因为它基于内存计算,所以提高了在大数据环境下数据处理的实时性,同时保证了高容错性和高可伸缩性,允许用户将Spark部署在大量廉价硬件之上,形成集群。

1.Spark执行的特点

Hadoop中包含计算框架MapReduce和分布式文件系统HDFS。

Spark是MapReduce的替代方案,而且兼容HDFS、Hive等分布式存储层,融入Hadoop的生态系统,并弥补MapReduce的不足。

(1)中间结果输出

Spark将执行工作流抽象为通用的有向无环图执行计划(DAG),可以将多Stage的任务串联或者并行执行,而无需将Stage的中间结果输出到HDFS中,类似的引擎包括Flink、Dryad、Tez。

(2)数据格式和内存布局

Spark抽象出分布式内存存储结构弹性分布式数据集RDD,可以理解为利用分布式的数组来进行数据的存储。RDD能支持粗粒度写操作,但对于读取操作,它可以精确到每条记录。Spark的特性是能够控制数据在不同节点上的分区,用户可以自定义分区策略。

(3)执行策略

Spark执行过程中不同Stage之间需要进行Shuffle。Shuffle是连接有依赖的Stage的桥梁,上游Stage输出到下游Stage中必须经过Shuffle这个环节,通过Shuffle将相同的分组数据拆分后聚合到同一个节点再处理。Spark Shuffle支持基于Hash或基于排序的分布式聚合机制。

(4)任务调度的开销

Spark采用了事件驱动的类库AKKA来启动任务,通过线程池的复用线程来避免系统启动和切换开销。

2.Spark的优势

Spark的一站式解决方案有很多的优势,分别如下所述。

(1)打造全栈多计算范式的高效数据流水线

支持复杂查询与数据分析任务。在简单的“Map”及“Reduce”操作之外,Spark还支持SQL查询、流式计算、机器学习和图算法。同时,用户可以在同一个工作流中无缝搭配这些计算范式。

(2)轻量级快速处理

Spark代码量较小,这得益于Scala语言的简洁和丰富表达力,以及Spark通过External DataSource API充分利用和集成Hadoop等其他第三方组件的能力。同时Spark基于内存计算,可通过中间结果缓存在内存来减少磁盘I/O以达到性能的提升。

(3)易于使用,支持多语言

Spark支持通过Scala、Java和Python编写程序,这允许开发者在自己熟悉的语言环境下进行工作。它自带了80多个算子,同时允许在Shell中进行交互式计算。用户可以利用Spark像书写单机程序一样书写分布式程序,轻松利用Spark搭建大数据内存计算平台并充分利用内存计算,实现海量

http://www.jsqmd.com/news/670878/

相关文章:

  • 信号处理入门:卷积到底在‘卷’什么?从音响混响到图像模糊的实际例子
  • 2026高性价比雅思机考模考平台指南:免费也能高效备考 - 品牌2026
  • FPGA实战:手把手教你用AXI EMC IP核驱动64M Nor Flash(附S29GL512S时序参数详解)
  • 专业推荐:2026年最值得购买的公众号排版软件 - 小小智慧树~
  • 深入解析ModTheSpire:专业级《杀戮尖塔》模组加载器架构与实战指南
  • 【AGI能源危机白皮书】:2026 SITS权威实测——单次LLM推理耗电超3台家用空调,你还在盲目部署?
  • 别再死记硬背SVPWM六边形了!一个‘开关状态’小技巧帮你秒懂电压矢量分布
  • Claude Opus 4.6 与 4.7 系统提示大变化:功能更新、规则调整全揭秘!
  • 2026年AI率降不下来?收藏12款降ai率工具超详细指南 - 降AI实验室
  • 统信UOS深度配置指南:打造你的专属高效文档工作流(输入法/WPS/编辑器技巧合集)
  • 3分钟解决Word学术引用难题:免费获取APA第7版完整模板
  • 2026年国内CRM市场格局:哪些厂商正在领跑客户管理赛道? - 毛毛鱼的夏天
  • FireRed-OCR Studio实战案例:汽车维修手册PDF→带故障码链接的交互式Markdown
  • Windows Server 2019上Oracle 19c安装踩坑实录:从下载WINDOWS.X64_193000_db_home.zip到Navicat连接成功
  • 开源大模型GPT-OSS:20B:企业级智能应用快速搭建方案
  • 有实力的玻璃纤维锚杆服务商家盘点,哪家口碑好一看便知 - mypinpai
  • 从运维视角看Spine-Leaf:当SDN接管了网络配置,传统网工该如何转型与避坑?
  • B站字幕下载神器:5分钟掌握ccdown工具完整使用指南
  • 2026年专业深度测评:眼镜京东代运营排名前五权威榜单 - 电商资讯
  • 如何实现Amlogic S9XXX设备内核版本迁移:从5.15到6.6的平滑升级指南
  • 终极免费手机号码定位工具:一键查询真实地理位置的专业解决方案
  • 别再手动调图了!Origin 图形模板与批量处理全攻略,让你效率翻倍
  • 告别本地环境!手把手教你用Manim CE 0.7在线编译数学动画(附中文支持方案)
  • 性价比高的依视路星趣控配镜门店怎么选,这些要点要知道 - 工业品网
  • .NET开发者集成指南:在C#项目中调用Qwen3-0.6B-FP8对话服务
  • 告别繁琐SQL!Spring Boot 3.2 + MybatisPlus 3.5.x 配置与常用注解避坑指南
  • Harness 架构 与 LangChain、LangGraph 三者联动 的底层逻辑 。<Harness 学习圣经> 之二
  • 深入HTTP/2帧层:手把手用Wireshark抓包分析GOAWAY帧与gRPC连接管理
  • 保姆级教程:手把手教你给PnetLab添加自定义网络设备镜像(附常见错误排查)
  • Linux基础命令(文件目录类)