| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Spark 集群 -> 正文阅读 |
|
[大数据]Spark 集群 |
为什么我们需要Spark集群?Spark 高性能的关键在于其使用了并行计算。在传统的关系型数据库中,匹配大数据的扩展工作仅限于一台机器,计算性能有限。 而Spark可以进行水平扩展,也就是可以近乎无限地添加新的机器或算力到一个集群中。集群里的机器可以像一个团队一样工作,并且产出数据分析师想要的结果。 Spark集群里的两种角色集群中存在两种角色,分别是Driver和Worker。我们可以假设集群中的某台机器是Driver,Driver负责管理一条查询语句所请求的工作量。Driver会决定如何拆分和追踪Wokers的工作,然后决定每个工作单元对应的数据块。Driver还负责在查询完全处理后将结果报告给最终用户。一言以蔽之,Driver负责分割,分配任务并且充当信使的角色。当Wokers 被分配任务后,Workers会获取与任务相关的的数据块。Workers 会处理这些数据,并且把数据回报给Driver。Driver会持续分配任务和收集结果直到任务完成。 数据分析师需要关注的事对于数据分析师来说,集群的运行机制不会是一个需要过度关注的事情,因为Spark已经为我们做了非常多的集群管理事务。但是分析师仍然需要关注两件事情。第一件事情是关于高计算量的任务,比如Join操作,当这个操作执行的时候,便可能触发shuffle,使得每个worker都能访问到不同的数据。第二件事情是任务执行失败的情况。如果woker因为任何原因执行任务失败了,不用担心,会有其它的woker接替完成这个任务。但如果是driver停止工作了,那这一次查询便可能会直接失败,所以driver失效会是一个更大的问题。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 17:18:57- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |