Spark02 - SparkContext介紹

一、應用入口:SparkContext

Spark Application 程序入口為:SparkContext,任何一個應用首先需要構建 SparkContext 對象,如下兩步構建:

  • 第一步、創建 SparkConf 對象
    • 設置 Spark Application 基本信息,比如應用的名稱 AppName 和應用運行 Master
  • 第二步、基于 SparkConf 對象,創建 SparkContext 對象

# Import SparkConf class into program
from pyspark import SparkConf
# Import SparkContext and SparkSession classes
from pyspark import SparkContext # Spark
from pyspark.sql import SparkSession # Spark SQLif __name__=="__main__":# local[*]: run Spark in local mode with as many working processors as logical cores on your machine# If we want Spark to run locally with 'k' worker threads, we can specify as "local[k]".master = "local[*]"# The `appName` field is a name to be shown on the Spark cluster UI pageapp_name = "RDD-basics"# Setup configuration parameters for Sparkspark_conf = SparkConf().setMaster(master).setAppName(app_name)# Method 2: Getting or instantiating a SparkContextsc = SparkContext.getOrCreate(spark_conf)sc.setLogLevel('ERROR')data_list = [1, 2, 3, 3]rdd = sc.parallelize(data_list)print(rdd.collect())

二、spark實現wordCount程序的流程圖

三、Spark集群角色

當spark application運行在集群上時,主要有四個部分組成,如下圖所示:

1)、Master (被yarn中的 ResourceManager 代替):集群大管家,整個集群的資源管理和分配

2)、Worker (被yarn中的 NodeManager 代替):單個機器的管家,負責在單個服務器上提供運行容器,管理當前機器的資源.

3)、Driver:單個 Spark 任務的管理者,管理 Executor 的任務執行和任務分解分配,類似 YARN 的 ApplicationMaster;

4)、Executor:具體干活的進程,Spark 的工作任務 (Task) 都由 Executor 來負責執行.

【注意】:

只有干活的代碼是excutor運行的,其余剩下的都是由driver運行的。

四、分布式代碼執行分析

對應的流程如圖:

代碼從Driver開始,到Driver結束,中間是excutor分布式運行。

寫的是一份代碼,但是底層執行的是好多個excutor(機器)

五、Python on Spark執行原理

driver由JVM driver運行(翻譯),excutor由python excutor運行。

  • Driver翻譯過去
  • Excutor中轉調度。

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

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

相關文章

Selenium動態元素定位

動態元素定位方法一:使用CSS選擇器通過部分匹配操作符定位動態屬性中的固定部分。*(包含),^(開頭),$(結尾)。/* 匹配id前綴為user_的元素 */ cssdiv[id^"user_"…

OBOO鷗柏丨115寸商用屏/工業液晶顯示器招標投標核心標底參數要求

整機參數要求:商用液晶顯示器/工業LCD一體機/商業智能終端機/工業防爆顯示器/招標投標核心標底參數要求1、整機屏幕采用≥采用115英寸超高清原廠原包原裝工業LCD液晶屏面板;具有高色域,顯示動態視頻、web及3D動畫時,保障運動畫面流…

麻溜啟動Oracle實例demo

注意:鏡像非常大并且外網網絡過慢,可能得pull一天(n次超時)。。md后臺靜默pull命令: nohup docker pull container-registry.oracle.com/database/express:latest > pull.log 2>&1 & 啟動實例&#xff1…

應用監控工具Skywalking

目錄 Skywalking介紹 Skywalking架構 Skywalking安裝 Skywalking使用 Skywalking配置 Skywalking數據持久化 Skywalking告警 Skywalking介紹 Apache Skywalking是一個開源的應用性能監控(Application Performance Monitoring,APM)工具…

TCP服務建立的全流程詳解

TCP的服務監聽步驟(等待客戶端連接前)TCP 服務器通過以下步驟完成從初始化到等待客戶端連接,為后續的數據傳輸(send()/recv())奠定了基礎一、創建套接字(Socket)作用:套接字是網絡通…

數據結構 雙鏈表與LinkedList

本節目標: 認識并且能夠實現一個雙鏈表認識LinkedList類并且知道如何去使用 1.雙鏈表 概念 在數據結構中,雙鏈表(Doubly Linked List) 是一種常見的線性數據結構,它由一系列節點組成,每個節點不僅包含數據…

如何解決 JetBrains IntelliJ IDEA 2024.2 和 2025.2 新版本區域選擇問題:key is invalid

如何解決 JetBrains IntelliJ IDEA 2024.2 和 2025.2 新版本區域選擇問題:key is invalid 在 JetBrains 發布的 IntelliJ IDEA、PyCharm 2024.2 和 2025.2 新版本中,增加了一個新的功能——區域選擇。在設置菜單中,你可以找到這一選項&#…

GSON 框架下百度天氣 JSON 數據轉 JavaBean 的實戰攻略

目錄 前言 一、百度天氣JSON 1、請求參數 2、返回參數 3、屬性映射 二、GSON屬性映射實戰 1、類對象映射 2、屬性字段映射 3、日期數據映射 三、天氣接口對象展示 1、接口調用 2、Java屬性打印輸出 四、總結 前言 在當今數字化時代,數據的高效處理與轉換…

NAS技術在縣級融媒體中心的架構設計與安全運維淺析

NAS技術在縣級融媒體中心的架構設計與安全運維淺析 ——原理剖析、應用實踐與防御體系建設作者:高級網絡安全工程師 吉林?鎮賚融媒 劉曉偉 最后更新:2025年8月 適用對象:媒體行業網絡安全從業者一、NAS技術核心原理剖析 1. 基礎架構 NAS&am…

CobaltStrike的搭建和使用

下載CobaltStrike環境建議使用jdk17,其他java版本有些功能可能無法使用通過網盤分享的文件:CS4.7key-mht.zip 鏈接: https://pan.baidu.com/s/1CRd1x4r6EIk14BD3UCLgxw?pwdevf4 提取碼: evf4將下載的文件分別放在服務器和 本地/kali 上 也就是服務器為…

【Altium designer】一鍵給多個器件添加參數

目的: 一鍵給N個元器件/Part添加參數和修改參數值,比如一鍵給多個電阻添加“備注”并賦予備注的內容為“不焊接”,或者更改“備注”的內容為“不焊接”或空。 背景: 剛入門用AD畫原理圖,因為原理圖的電阻、電容和芯片等等的冗余/兼容設計太多,增加備注不焊的元器件位號…

熟練掌握switch語句:技巧與運用

目錄 一、switch語句基礎 基本語法結構: 在C/C中: 注意事項: 二、if與switch語句對比 示例:計算整數除以3的余數 使用if語句實現: 使用switch語句實現: 三、break語句的作用 示例(無br…

【03】廈門立林科技——立林科技 嵌入式 校招筆試,題目記錄及解析

廈門立林科技——立林科技 嵌入式 校招筆試,題目記錄及解析 1.下面的程序的輸出是()。2.在頭文件中#ifndef/#define/#endif的作用是4.執行下面程序中的輸出語句后,輸出的結果是()6.在32位處理器上,運行如下程序后p的值為()。10.設有兩字符串“…

C++算法(數據結構)版

C算法(數據結構)版 有些題目不是完整的題目,如需查看完整的題目請移步到acwing的算法基礎課中 文章目錄C算法(數據結構)版單鏈表思路:雙鏈表思路:棧思路:隊列思路:單調棧…

算法訓練營DAY57 第十一章:圖論part07

prim算法精講 53. 尋寶(第七期模擬筆試) 題目描述: 在世界的某個區域,有一些分散的神秘島嶼,每個島嶼上都有一種珍稀的資源或者寶藏。國王打算在這些島嶼上建公路,方便運輸。 不同島嶼之間,…

最短路問題從入門到負權最短路

一,BFS層次最短路/*題目描述 題目描述 給出一個 N 個頂點 M 條邊的無向無權圖,頂點編號為 1~N。 問從頂點 1 開始,到其他每個點的最短路有幾條。 輸入格式 第一行包含 2 個正整數 N,M,為圖的頂點數與邊數。 接下來 M 行&#xff…

AI智能體小白入門指南

AI智能體小白入門指南 ——什么是AI智能體?它們如何工作? 一、AI智能體是什么? AI智能體(AI Agent)是能感知環境、自主決策并執行動作的人工智能系統。 類比理解:像一個“虛擬機器人”或“數字助手”&#…

《設計模式》策略模式

1.策略模式定義 策略模式(Strategy Pattern)是一種行為型設計模式,它定義了一組算法,將每個算法封裝起來,并使它們可以相互替換,從而讓算法的變化獨立于使用它的客戶(Client)。 換…

AWS DMS 深度解析:從遷移任務到復制任務 - 全流程指南與最佳實踐

AWS Database Migration Service (DMS) 是一項強大的云服務,用于在源數據庫和目標數據庫之間安全地遷移數據。其核心優勢在于支持幾乎零停機時間的遷移,這主要歸功于其“變更數據捕獲 (CDC)”功能。理解遷移任務 (Migration Task) 和復制任務 (Replication Task) 的關系與操作…

國企社招 | 中國郵政2025年社會招聘開啟

添加圖片注釋,不超過 140 字(可選) 添加圖片注釋,不超過 140 字(可選) 添加圖片注釋,不超過 140 字(可選) 原文鏈接:“郵”你“政”好 | 廣東郵政2025年社會…