Spark 學習記錄

基礎

SparkContext是什么?有什么作用?

https://blog.csdn.net/Shockang/article/details/118344357

  • SparkContext 是什么?

SparkContext 是通往 Spark 集群的唯一入口,可以用來在 Spark 集群中創建 RDDs 、累加和廣播變量( BroadcastVariables )。
SparkContext 也是整個 Spark 應用程序( Application )中至關重要的一個對象,可以說是整個 Application 運行調度的核心(不是指資源調度)。

  • SparkContext 的作用是什么?

SparkContext 的核心作用是初始化 Spark 應用程序運行所需要的核心組件,包括高層調度器( DAGScheduler )、底層調度器( TaskScheduler )和調度器的通信終端( SchedulerBackend ),同時還會負責 Spark 程序向 Master 注冊程序等。

只可以有一個 SparkContext 實例運行在一個 JWM 內存中,所以在創建新的 SparkContext 實例前,必須調用 stop 方法停止當前 JVM 唯一運行的 SparkContext 實例。

  • SparkContext 的重要性體現在哪些方面?

Spark 程序在運行時分為 Driver 和 Executor 兩部分, Spark 程序編寫是基于 SparkContext 的,具體包含。
1)Spark 編程的核心基礎 RDD 是由 SparkContext 最初創建的(第一個 RDD 一定是由 SparkContext 創建的)
2)Spark 程序的調度優化也是基于 SparkContext ,首先進行調度優化。
3)Spark 程序的注冊是通過 SparkContext 實例化時生產的對象來完成的(其實是 SchedulerBackend來注冊程序)。
4)Spark 程序在運行時要通過 ClusterManager 獲取具體的計算資源,計算資源獲取也是通過 SparkContext 產生的對象來申請的(其實是 SchedulerBackend 來獲取計算資源的)。
5)SparkContext 崩潰或者結束的時候,整個 Spark 程序也結束。

Spark Master\Worker、Driver\Executor、Job\Stage\Task等概念與關系

https://blog.csdn.net/bocai8058/article/details/119300432
在這里插入圖片描述

Spark 內存管理

https://mp.weixin.qq.com/s/H0bN00fyxevB6vV6RAdWqQ

在這里插入圖片描述

Spark堆內內存主要分為Storage(存儲內存)、Execution(執行內存)和Other(其他) 幾部分。
Storage用于緩存RDD數據和broadcast廣播變量的內存使用
Execution僅提供shuffle過程的內存使用
Other提供Spark內部對象、用戶自定義對象的內存空間

Shuffle

參數 spark.sql.shuffle.partitions 默認并行度200

分區與并行度

https://mp.weixin.qq.com/s/luji-mMQoXiHZanQiKxgww

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

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

相關文章

【數據庫基礎】Mysql下載安裝及配置

下載 下載地址:https://downloads.mysql.com/archives/community/ 當前最新版本為 8.0版本,可以在Product Version中選擇指定版本,在Operating System中選擇安裝平臺,如下 安裝 MySQL安裝文件分兩種 .msi和.zip [外鏈圖片轉存失…

C++11時間日期庫chrono的使用

chrono是C11中新加入的時間日期操作庫,可以方便地進行時間日期操作,主要包含了:duration, time_point, clock。 時鐘與時間點 chrono中用time_point模板類表示時間點,其支持基本算術操作;不同時鐘clock分別返回其對應…

vue中router路由的原理?兩種路由模式如何實現?(vue2) -(上)

平時我們編寫路由時,通常直接下載插件使用,在main.js文件中引入直接通過引入vue-router中的Router通過Vue.use使用以后定義一個routeMap數組,里邊是我們編寫路由的地方,最后通過實例化一個 Router實例 將routes我們定義的routeMao…

Docker中部署Nginx

1.Nginx部署需求 2.操作教程 3.實際步驟 把配置粘過來。

客戶端遠程啟動服務器腳本文件

目錄 軟件需求 實現 方法1 方法2 方法3 軟件需求 有兩臺計算機,一臺是linux客戶端,另一臺是linux服務器。要求操作員可以在客戶端遠程啟動服務器上的腳本文件,控制服務器。 實現 方法1 客戶端通過ssh登錄服務器,然后通過…

Cookie、Session、Token的區別

有人或許還停留在它們只是驗證身份信息的機制,但是它們之間的關系你真的弄懂了么? 發展史: Coolie: Netscape Communications 公司引入了 Cookie 概念,作為在客戶端存儲狀態信息的一種方法。初始目的是為了解決 HTTP 的無狀態性…

Python爬蟲:單線程、多線程、多進程

前言 在使用爬蟲爬取數據的時候,當需要爬取的數據量比較大,且急需很快獲取到數據的時候,可以考慮將單線程的爬蟲寫成多線程的爬蟲。下面來學習一些它的基礎知識和代碼編寫方法。 一、進程和線程 進程可以理解為是正在運行的程序的實例。進…

python爬蟲數據解析xpath、jsonpath,bs4

數據的解析 解析數據的方式大概有三種 xpathJsonPathBeautifulSoup xpath 安裝xpath插件 打開谷歌瀏覽器擴展程序,打開開發者模式,拖入插件,重啟瀏覽器,ctrlshiftx,打開插件頁面 安裝lxml庫 安裝在python環境中的Scri…

劍指Offer61.撲克牌中的順子 C++

1、題目描述 從若干副撲克牌中隨機抽 5 張牌,判斷是不是一個順子,即這5張牌是不是連續的。2~10為數字本身,A為1,J為11,Q為12,K為13,而大、小王為 0 ,可以看成任意數字。…

并發服務器模型,多線程并發

一、多線程并發完整代碼 #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> #include <string.h> #include <unistd.h> #include <sys/wait.h> #include <stdlib.h> #include <…

突然讓做性能測試?試試RunnerGo

當前&#xff0c;性能測試已經是一名軟件測試工程師必須要了解&#xff0c;甚至熟練使用的一項技能了&#xff0c;在工作時可能每次發版都要跑一遍性能&#xff0c;跑一遍自動化。性能測試入門容易&#xff0c;深入則需要太多的知識量&#xff0c;今天這篇文章給大家帶來&#…

Rocky Linux更換為國內源

Rocky Linux提供的可供切換的源列表&#xff1a;Mirrors - Mirror Manager 其中以 COUNTRY 列為 CN 的是國內源。 選擇其中一個Rocky Linux 源使用幫助 — USTC Mirror Help 文檔 操作前請做好備份 對于 Rocky Linux 8&#xff0c;使用以下命令替換默認的配置 sed -e s|^mirr…

新能源汽車電控系統

新能源汽車電控系統主要分為&#xff1a;三電系統電控系統、高壓系統電控系統、低壓系統電控系統 三電系統電控系統 包括整車控制器、電池管理系統、驅動電機控制器等。 整車控制器VCU 整車控制器作為電動汽車中央控制單元&#xff0c;是整個控制系統的核心&#xff0c;也是…

zabbix監控mysql數據庫、nginx、Tomcat

zabbix監控mysql數據庫、nginx、Tomcat 一.zabbix監控mysql數據庫 1.環境規劃 hostIP部署zabbix-server192.168.198.17zabbix服務器搭建zabbix-mysql192.168.198.15zabbix客戶端搭建 2.zabbix-server安裝部署&#xff08;192.168.198.17&#xff09; 請參考以下配置&#…

Azure概念介紹

云計算定義 云計算是一種使用網絡進行存儲和處理數據的計算方式。它通過將數據和應用程序存儲在云端服務器上&#xff0c;使用戶能夠通過互聯網訪問和使用這些資源&#xff0c;而無需依賴于本地硬件和軟件。 發展歷史 云計算的概念最早可以追溯到20世紀60年代的時候&#x…

mysql 分庫分表淺析

分表是分散數據庫壓力的好方法。 分表&#xff0c;最直白的意思&#xff0c;就是將一個表結構分為多個表&#xff0c;然后&#xff0c;可以再同一個庫里&#xff0c;也可以放到不同的庫。 當然&#xff0c;首先要知道什么情況下&#xff0c;才需要分表。個人覺得單表記錄條數達…

2023河南萌新聯賽第(五)場:鄭州輕工業大學C-數位dp

鏈接&#xff1a;登錄—專業IT筆試面試備考平臺_牛客網 給定一個正整數 n&#xff0c;你可以對 n 進行任意次&#xff08;包括零次&#xff09;如下操作&#xff1a; 選擇 n 上的某一數位&#xff0c;將其刪去&#xff0c;剩下的左右部分合并。例如 123&#xff0c;你可以選擇…

年至年的選擇仿elementui的樣式

組件&#xff1a;<!--* Author: liuyu liuyuxizhengtech.com* Date: 2023-02-01 16:57:27* LastEditors: wangping wangpingxizhengtech.com* LastEditTime: 2023-06-30 17:25:14* Description: 時間選擇年 - 年 --> <template><div class"yearPicker"…

Smart HTML Elements 16.1 Crack

Smart HTML Elements 是一個現代 Vanilla JS 和 ES6 庫以及下一代前端框架。企業級 Web 組件包括輔助功能&#xff08;WAI-ARIA、第 508 節/WCAG 合規性&#xff09;、本地化、從右到左鍵盤導航和主題。與 Angular、ReactJS、Vue.js、Bootstrap、Meteor 和任何其他框架集成。 智…

九、多態(2)

本章概要 構造器和多態 構造器調用順序繼承和清理構造器內部多態方法的行為 協變返回類型使用繼承設計 替代 vs 擴展向下轉型與運行時類型信息 構造器和多態 通常&#xff0c;構造器不同于其他類型的方法。在涉及多態時也是如此。盡管構造器不具有多態性&#xff08;事實上…