Spark的概述、核心、組成、運行模式

一、Spark概述

? ? ? ? Apache Spark 是一個快速的, 多用途的集群計算系統, 相對于 Hadoop MapReduce 將中間結果保存在磁盤中, Spark 使用了內存保存中間結果, 能在數據尚未寫入硬盤時在內存中進行運算。Spark 是一個計算框架,可以用來代替Hadoop中的MapReduce計算框架。

二、Spark的作用與核心

? ? ? 由來:Spark 是為了解決 MapReduce 等過去的計算系統無法在內存中保存中間結果的問題,

? ? ? 核心:Spark 的核心是 RDDs, RDDs 不僅是一種計算框架, 也是一個可以容錯且并行的數據結構, 它可以讓用戶顯式的將中間結果數據集保存在內中, 并且通過控制數據集的分區來達到數據存放處理最優化。

三、Spark組成

1、spark-core

? ? ? ?Spark 最核心的功能是 RDDs(彈性分布式數據集), RDDs 存在于?spark-core?這個包內, 這個包也是 Spark 最核心的包.

2、Spark SQL

(1)Spark SQL 在 spark-core 基礎之上帶出了一個名為 DataSet 和 DataFrame 的數據抽象化的概念

(2)Spark SQL 提供了在 Dataset 和 DataFrame 之上執行 SQL 的能力

(3)Spark SQL 提供了 DSL, 可以通過 Scala, Java, Python 等語言操作 DataSet 和 DataFrame

(4)它還支持使用 JDBC/ODBC 服務器操作 SQL 語言

3、Spark Streaming

(1)Spark Streaming 充分利用?spark-core?的快速調度能力來運行流分析

(2)它截取小批量的數據并可以對之運行 RDD Transformation

(3)它提供了在同一個程序中同時使用流分析和批量分析的能力

4、MLlib?

? ? ? ?MLlib 是 Spark 上分布式機器學習的框架,可以使用許多常見的機器學習和統計算法, 簡化大規模機器學習

5、GraphX

? ? ? GraphX 是分布式圖計算框架, 提供了一組可以表達圖計算的 API, GraphX 還對這種抽象化提供了優化運行。

四、Spark的四種運行模式

1、Local

? ? ? ?用于本地開發和測試。在這種模式下,Spark 程序將?master?設置為?local?或者?local[n],使得所有的代碼都在同一個 JVM 中運行。

2、Standalone

? ? ? ? 這是 Spark 自帶的集群管理模式,不依賴外部資源管理器。在這種模式下,一個 Spark 集群由 Master 和 Worker 進程組成,其中 Master 負責資源分配管理,Worker 負責運行 Executor。

3、YARN

? ? ? ? 在這種模式下,Spark 應用程序運行在 YARN集群上,YARN 負責管理整個集群資源。YARN 模式下又分為兩種部署模式:yarn-client?和?yarn-clusteryarn-client?中 Driver 運行在本地客戶端,而?yarn-cluster?中 Driver 運行在 YARN 集群中。

4、Mesos

? ? ? ?在這種模式下,Spark 的資源管理從 Standalone 的 Master 轉移到 Mesos Manager 中。Mesos 是一種資源調度管理框架,負責為運行在其上的 Spark 提供服務。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/14645.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/14645.shtml
英文地址,請注明出處:http://en.pswp.cn/web/14645.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

FIFO-Diffusion,一個無需額外訓練即可生成長視頻的框架。通過確保每個幀引用足夠多的先前幀來生成高質量、一致的長視頻。

簡單來講,FIFO-Diffusion先通過一些模型如VideoCraft2、zeroscope、Opem-Sora Plan等與FIFO-Diffusion的組合生成短視頻,然后取結尾的幀(也可以取多幀),再用這一幀的圖片生成另一段短視頻,然后拼接起來。FI…

【MySQL精通之路】存儲引擎-MySQL8.0中的差異

存儲引擎是MySQL組件,用于處理不同表類型的SQL操作。 InnoDB是默認的、最通用的存儲引擎,Oracle默認使用其創建表。(MySQL 8.0中的CREATE TABLE語句默認創建InnoDB表。) MySQL Server使用可插拔存儲引擎體系結構,使存儲…

linux命令日常使用思考

linux命令日常使用思考 復制的相關問題scp和cp的區別root192.168.5.229-r的理解 更新版本的相關問題svn info 根目錄和家目錄的區別根目錄家目錄 復制的相關問題 scp和cp的區別 安全性:SCP 是基于 SSH 的加密傳輸協議,可以保證數據在傳輸過程中的安全性…

vue期末復習選擇題1

1. 下面哪一項描述是錯誤的?(B) A.$("ul li:gt(5):not(:last)")選取ul標記里面索引值大于5且不是最后一個的li元素B.$("div").find("span")選取div元素的子元素spanC.$("div.showmore > a")選取…

Axure RP 9 for Mac/win:重新定義交互原型設計的未來

在當今數字化時代,交互原型設計已成為產品開發中不可或缺的一環。Axure RP 9作為一款功能強大的交互原型設計軟件,憑借其出色的性能和用戶友好的界面,贏得了廣大設計師的青睞。 Axure RP 9不僅支持Mac和Windows兩大主流操作系統,…

Excel實現將A列和B列的內容組合到一個新的列(例如C列)中,其中A列的每個值都與B列的所有值組合。

利用Excel中vba代碼宏實現 原始數據: 自動生成后數據: vba實現代碼: Sub CombineColumns()Dim ws As WorksheetDim lastRowA As Long, lastRowB As Long, i As Long, j As LongDim MyIndex As IntegerDim strCombine As String, strColA As…

主流容器工具對比以及重點推薦學習的企業級工具

常見的主流容器工具包括但不限于以下幾種: 1. Docker: Docker 是最流行的容器平臺之一,它允許開發者將應用及其依賴打包到一個輕量級、可移植的容器中,然后可以在任何支持Docker的系統上運行。 2. Kubernetes:Kubern…

【Python】 去除字符串中的所有空白字符

基本原理 在Python中,字符串(String)是不可變的數據類型,這意味著一旦創建了一個字符串,就不能修改它的內容。然而,我們可以創建一個新的字符串,它包含原始字符串中的字符,但不包含…

局域網傳文件怎么操作?輕松實現文件共享!

在現代的辦公和生活中,局域網傳文件已經成為一種非常常見和方便的方式,可以快速、安全地在局域網內進行文件傳輸。無需依賴互聯網,局域網傳文件可以幫助團隊成員之間共享文件、備份數據、進行協作等。本文將介紹三種常見的方法,幫…

MySQL——存儲過程,觸發器

BaiduComate: # 問題1: # 問題1: 幫我創建兩個表student與score表,要求student表有id,createDate,userName,phone,age,sex,introduce, 要求score表有id&…

Vue3實戰Easy云盤(四):使用空間+文件預覽+文件分享+文件下載

一、空間使用 Framework.vue中 (1)引入接口 const api {getUseSpace: "/getUseSpace",logout: "/logout", }; (2)回調 // 使用空間 const useSpaceInfo ref({ useSpace: 0, totalSpace: 1 }); const g…

達夢數據庫和Oracle對比

達夢數據庫和Oracle對比 達夢數據庫(DM)是中國自主研發的一款數據庫管理系統,在功能和應用上與 Oracle 數據庫有諸多類似,但也有其獨特的特點。以下是對達夢數據庫(DM)和 Oracle 數據庫的詳細對比&#xf…

unreal engine 5.0.3 創建游戲項目

根據虛幻官網介紹,虛幻引擎5可免費用于創建線性內容、定制項目和內部項目。你可以免費用它開發游戲,只有當你的產品營收超過100萬美元時,才收取5%的分成費用。所以目前國內也有許多游戲廠商在使用UE制作游戲。UE5源碼也已開源,有U…

[數據集][目標檢測]吸煙檢測數據集VOC+YOLO格式1449張1類別

數據集格式:Pascal VOC格式YOLO格式(不包含分割路徑的txt文件,僅僅包含jpg圖片以及對應的VOC格式xml文件和yolo格式txt文件) 圖片數量(jpg文件個數):1449 標注數量(xml文件個數):1449 標注數量(txt文件個數):1449 標注…

huggingface筆記:LLama 2

1 前提tip 1.1 使用什么數據類型訓練模型? Llama2模型是使用bfloat16訓練的 上傳到Hub的檢查點使用torch_dtype float16,這將通過AutoModel API將檢查點從torch.float32轉換為torch.float16。在線權重的數據類型通常無關緊要,這是因為模型…

QT 使用QZipWriter進行文件壓縮

目錄 1、QZipWriter 2、主要功能 3、示例 1、QZipWriter QZipWriter 是 Qt 提供的一個類,用于創建和管理 ZIP 文件。它屬于 Qt 的 QtGui 模塊,雖然在 Qt 6 中已經被移除,但在早期的 Qt 版本中,它被用作一種簡便的方式來創建 ZI…

CMMI模型的分析

CMMI模型的分析 CMMI(Capability Maturity Model Integration,能力成熟度模型集成)是由美國卡內基梅隆大學軟件工程研究所(SEI)開發的一個過程級改進訓練和評估程序。CMMI模型為組織提供了一套綜合的指南,用于改進其過程和提升性能。 CMMI 3.0是CMMI模型的最新版本,于…

AWS計算之AWS Elastic Beanstalk

AWS Elastic Beanstalk是一項用于簡化應用程序部署和管理的托管服務。它允許開發人員上傳他們的應用程序代碼,并自動處理底層的部署、擴展、負載均衡和監控任務,從而使開發人員能夠專注于應用程序的開發而不必擔心基礎架構的管理細節。 借助Elastic Bea…

機器學習300問】95、什么是KNN算法?它和K-means什么關系?

一、KNN算法的定義 KNN(K-Nearest Neighbors)算法,是一種簡單而有效的監督學習方法。它既可以用在分類任務,也可用在回歸任務中。KNN算法的核心思想:在特征空間中,如果有一個數據點周圍的大多數鄰居屬于某個…

5. JVM面試題匯總

Java全棧面試題匯總目錄-CSDN博客 1. 說一下JVM的主要組成部分及其作用? JVM包含兩個子系統和兩個組件,兩個子系統為Class loader(類裝載)、Execution engine(執行引擎);兩個組件為Runtime data area(運行時數據區)、Native Interface(本地接口)。 Cl…