Spark基本原理

2022-02-02 07:57:56 字數 1443 閱讀 1962

僅作《spark快速大資料分析》學習筆記

定義:spark是乙個用來實現 快速 而 通用 的集群計算平台;(通用的大資料處理引擎;)

改進了原hadoop mapreduce處理模型,體現在三方面:

a. 速度;(記憶體計算)

b. 不僅支援批處理,還支援互動式查詢(速度快的成果)、流式計算、機器學習、圖計算等;(迭代演算法)

c. 豐富的api和易用性;

spark元件主要組成:

spark core:實現了spark的核心功能,包含任務排程、記憶體管理、與儲存系統互動、錯誤恢復等;定義了rdd api;

rdd:(resilient distributed dataset)彈性分布式資料集,表示分布在多個計算節點上可以平行操作的元素集合;

通過建立rdd來操作完成 統計計算,這些計算會自動地 在集群上並行進行。 

spark主要的程式設計抽象;

spark sql:spark操作結構化資料的程式包;

spark streaming: spark 提供的對實時資料進行流式計算的元件 ;

mllib: 提供常見的機器學習(ml)功能的程式庫 ;

graphx: 是用來操作圖(比如社交網路的朋友關係圖)的程式庫,可以進行並行的圖計算; 

spark shell:和其他 shell 工具不一樣的是,在其他 shell 工具中你只能使用單機的硬碟和記憶體來運算元據;

可用來與分布式儲存在許多機器的記憶體或者硬碟上的資料進行互動,並且處理過程的分發由 spark 自動控制完成;

動作原理:

driver program

executor

每個 spark應用都由乙個 驅動器程式(driver program) 來管理。

a. 驅動器程式包含應用的 main函式;

b. 並且定義了集群上的 分布式資料集;

c. 還對這些 分布式資料集應用了相關操作。

shell環境下 驅動器程式就是 spark shell 本身,可利用它輸入想要執行的操作。 

驅動器程式通過乙個 sparkcontext物件 來訪問spark,這個物件代表對計算集群的乙個連線;slell啟動時會自動建立乙個sparkcontext物件,變數名為sc;   

//

檢視變數 sc

>>>sc

一旦有了sparkcontext物件,就可以利用它建立rdd,如sc.textfile("/filename"),然後即可進行各種操作;

通常操作rdd的相關操作,驅動器程式一般要管理多個執行器(executor)節點;如count()操作,多個節點會統計檔案不同的部分;

Spark基本原理與RDD

spark基本工作原理 1 分布式 2 主要基於記憶體 少數情況基於磁碟 3 迭代式計算 rdd以及其特點 1 rdd是spark提供的核心抽象,全稱為resillient distributed dataset,即彈性分布式資料集。2 rdd在抽象上來說是一種元素集合,包含了資料。它是被分割槽的,...

mysql的基本原理 Mysql 基本原理

mysql 基本原理 mysql是一種關聯式資料庫管理系統,關聯式資料庫將資料儲存在不同的表中,而不是將所有資料放在乙個大倉庫內,這樣就增加了速度並提高了靈活性 ysql是資料庫登入命令 uroot預設超級使用者登入 p 預設沒密碼 中寫密碼 mysqladmin uroot password 12...

8 2 1 基本原理

乙個舞台動畫物件在包含許多舞台資訊 出現在何處,佔多大面積,處在什麼角度,是否可見 這些資訊分別儲存在動畫物件的屬性中。在 中讀取這些屬性可以了解物件的位置 大小 角度等狀態資訊 修改這些屬性可以改變物件的位置 大小 角度等狀態。如果從資料的角度去理解,動畫就是在固定時間間隔點不斷修改動畫物件某項屬...