《Spark大数据处理:技术、应用与性能优化》——1.4 Spark分布式架构与单机多核架构的异同

简介:

本节书摘来自华章计算机《Spark大数据处理:技术、应用与性能优化》一书中的第1章,第1.4节,作者:高彦杰 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.4 Spark分布式架构与单机多核架构的异同

我们通常所说的分布式系统主要指的是分布式软件系统,它是在通信网络互连的多处理机的架构上执行任务的软件系统,包括分布式操作系统、分布式程序设计语言、分布式文件系统和分布式数据库系统等。Spark是分布式软件系统中的分布式计算框架,基于Spark可以编写分布式计算程序和软件。为了整体宏观把握和理解分布式系统,可以将一个集群视为一台计算机。分布式计算框架的最终目的是方便用户编程,最后达到像原来编写单机程序一样编写分布式程序。但是分布式编程与编写单机程序还是存在不同点的。由于分布式架构和单机的架构有所不同,存在内存和磁盘的共享问题,这也是我们在书写和优化程序的过程中需要注意的地方。分布式架构与单机架构的对比如图1-6所示。


787daf80f19e6ffb4ea93da46948f26ec45d9259

1)在单机多核环境下,多CPU共享内存和磁盘。当系统所需的计算和存储资源不够,需要扩展CPU和存储时,单机多核系统显得力不从心。
2)大规模分布式并行处理系统是由许多松耦合的处理单元组成的,要注意的是,这里指的是处理单元而非处理器。每个单元内的CPU都有自己私有的资源,如总线、内存、硬盘等。这种结构最大的特点在于不共享资源。在不共享资源(Share Nothing)的分布式架构下,节点可以实现无限扩展,即计算能力和存储的扩展性可以成倍增长。
在分布式运算下,数据尽量本地运算,减少网络I/O开销。由于大规模分布式系统要在不同处理单元之间传送信息,在网络传输少时,系统可以充分发挥资源的优势,达到高效率。也就是说,如果操作相互之间没有什么关系,处理单元之间需要进行的通信比较少,则采用分布式系统更好。因此,分布式系统在决策支持(DSS)和数据挖掘(Data Mining)方面具有优势。
Spark正是基于大规模分布式并行架构开发,因此能够按需进行计算能力与存储能力的扩展,在应对大数据挑战时显得游刃有余,同时保证容错性,让用户放心地进行大数据分析。
相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
10月前
|
存储 SQL 监控
数据中台架构解析:湖仓一体的实战设计
在数据量激增的数字化时代,企业面临数据分散、使用效率低等问题。数据中台作为统一管理与应用数据的核心平台,结合湖仓一体架构,打通数据壁垒,实现高效流转与分析。本文详解湖仓一体的设计与落地实践,助力企业构建统一、灵活的数据底座,驱动业务决策与创新。
|
11月前
|
存储 SQL 分布式计算
19章构建企业级大数据平台:从架构设计到数据治理的完整链路
开源社区: 贡献者路径:从提交Issue到成为Committer 会议演讲:通过DataWorks Summit提升影响力 标准制定: 白皮书撰写:通过DAMA数据治理框架认证 专利布局:通过架构设计专利构建技术壁垒
|
8月前
|
存储 分布式计算 资源调度
【赵渝强老师】阿里云大数据MaxCompute的体系架构
阿里云MaxCompute是快速、全托管的EB级数据仓库解决方案,适用于离线计算场景。它由计算与存储层、逻辑层、接入层和客户端四部分组成,支持多种计算任务的统一调度与管理。
701 1
|
10月前
|
消息中间件 分布式计算 大数据
“一上来就搞大数据架构?等等,你真想清楚了吗?”
“一上来就搞大数据架构?等等,你真想清楚了吗?”
202 1
|
9月前
|
SQL 存储 监控
流处理 or 批处理?大数据架构还需要流批一体吗?
简介:流处理与批处理曾是实时监控与深度分析的两大支柱,但二者在数据、代码与资源上的割裂,导致维护成本高、效率低。随着业务对数据实时性与深度分析的双重需求提升,传统架构难以为继,流批一体应运而生。它旨在通过逻辑、存储与资源的统一,实现一套系统、一套代码同时支持实时与离线处理,提升效率与一致性,成为未来大数据架构的发展方向。
|
11月前
|
架构师 Oracle 大数据
从大数据时代变迁到数据架构师的精通之路
无论从事何种职业,自学能力都显得尤为重要。为了不断提升自己,我们可以尝试建立一套个性化的知识目录或索引,通过它来发现自身的不足,并有针对性地进行学习。对于数据架构师而言,他们需要掌握的知识领域广泛而深入,不仅包括硬件、网络、安全等基础技术,还要了解应用层面,并熟练掌握至少一门编程语言。同时,深入理解数据库技术、具备大数据实操经验以及精通数据仓库建模和ELT技术也是必不可少的。只有这样,数据架构师才能具备足够的深度和广度,应对复杂的业务和技术挑战。 构建个人知识体系是数据架构师在学习和工作中的一项重要任务。通过系统化、不断深化的知识积累,数据架构师能够有效应对快速变化的商业环境和技术革新,进一
|
7月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
弹性计算 API 持续交付
后端服务架构的微服务化转型
本文旨在探讨后端服务从单体架构向微服务架构转型的过程,分析微服务架构的优势和面临的挑战。文章首先介绍单体架构的局限性,然后详细阐述微服务架构的核心概念及其在现代软件开发中的应用。通过对比两种架构,指出微服务化转型的必要性和实施策略。最后,讨论了微服务架构实施过程中可能遇到的问题及解决方案。
|
Cloud Native Devops 云计算
云计算的未来:云原生架构与微服务的革命####
【10月更文挑战第21天】 随着企业数字化转型的加速,云原生技术正迅速成为IT行业的新宠。本文深入探讨了云原生架构的核心理念、关键技术如容器化和微服务的优势,以及如何通过这些技术实现高效、灵活且可扩展的现代应用开发。我们将揭示云原生如何重塑软件开发流程,提升业务敏捷性,并探索其对企业IT架构的深远影响。 ####
467 3