欧美1区2区3区激情无套,两个女人互添下身视频在线观看,久久av无码精品人妻系列,久久精品噜噜噜成人,末发育娇小性色xxxx

Spark Web UI及任務(wù)優(yōu)化實(shí)戰(zhàn)-了解 web ui

Spark專題

Spark Web UI

課程簡介:

  1. 認(rèn)識Spark Web Ui :Spark Web Ui 的基礎(chǔ)信息介紹
  2. 使用Spark Web Ui:Spark Web Ui 從問題定位到問題解決

課程難度:????

課程使用的平臺:EasyData spark版本:3.3.1.2

Spark Web UI 是什么?

  • Spark Web UI 是 Apache Spark 提供的一個基于 Web 的用戶界面。它是 Spark 監(jiān)控和調(diào)試的重要工具,隨著 Spark 應(yīng)用程序的運(yùn)行而自動啟動,用于展示應(yīng)用程序運(yùn)行過程中的各種詳細(xì)信息。

Spark Web UI 作用

Web UI 作用

詳情

監(jiān)控作業(yè)執(zhí)行情況

作業(yè)進(jìn)度跟蹤

Spark Web UI 的 Jobs 頁面可以清晰地展示每個作業(yè)的狀態(tài),包括作業(yè)的提交時間、開始時間、結(jié)束時間等信息。

階段劃分與依賴分析

Web UI 能夠呈現(xiàn)出各個階段之間的依賴關(guān)系。這有助于理解數(shù)據(jù)在不同階段是如何流動和轉(zhuǎn)換的。例如,在一個基于 Spark SQL 的數(shù)據(jù)分析任務(wù)中,數(shù)據(jù)的讀取、過濾、聚合和輸出可能分別是不同的階段,通過查看階段的劃分和依賴

性能分析與優(yōu)化

任務(wù)執(zhí)行時間監(jiān)測

Web UI 的 Tasks 頁面可以顯示每個任務(wù)的執(zhí)行時間。通過分析任務(wù)執(zhí)行時間的分布,可以發(fā)現(xiàn)性能瓶頸

資源利用評估

通過 Executors 頁面可以查看執(zhí)行器(Executors)的資源使用情況,包括 CPU 使用率、內(nèi)存使用率等。

故障診斷與調(diào)試

任務(wù)失敗原因查找

當(dāng)任務(wù)出現(xiàn)失敗時,Spark Web UI 能夠提供詳細(xì)的錯誤信息??焖俣ㄎ还收显?,例如是由于數(shù)據(jù)格式錯誤、OOM、網(wǎng)絡(luò)故障等等

數(shù)據(jù)傾斜分析

通過查看各個任務(wù)的數(shù)據(jù)輸入量和處理時間,可以發(fā)現(xiàn)是否存在數(shù)據(jù)傾斜現(xiàn)象。

Spark Web UI 模塊

模塊

功能

Jobs

  • 提供 Spark 應(yīng)用程序中所有作業(yè)的整體視圖,用于監(jiān)控作業(yè)的執(zhí)行進(jìn)度、狀態(tài)和性能。通過這個模塊可以了解作業(yè)的基本信息,如提交時間、持續(xù)時間等,還能查看作業(yè)內(nèi)各階段的劃分和依賴關(guān)系。

Stages

  • 用于深入分析每個階段的性能和數(shù)據(jù)處理情況??梢圆榭措A段的輸入輸出數(shù)據(jù)量、處理的記錄數(shù)、任務(wù)并行度等信息,幫助用戶發(fā)現(xiàn)性能瓶頸和優(yōu)化數(shù)據(jù)處理流程。

Storage

  • 用于展示存儲情況,能呈現(xiàn) RDD、DataFrame 等存儲對象的存儲級別;監(jiān)控數(shù)據(jù)特性,可查看存儲對象的數(shù)據(jù)大小,明確內(nèi)存、磁盤占用情況;管理緩存相關(guān),能呈現(xiàn)緩存狀態(tài),如是否成功、大小等,還統(tǒng)計(jì)緩存命中率,方便判斷緩存策略有效性,據(jù)此可優(yōu)化存儲及緩存方面的設(shè)置。

environment

  • 提供全面的環(huán)境信息展示。它清晰呈現(xiàn)出 Spark 應(yīng)用運(yùn)行時所處的各類環(huán)境參數(shù),包括但不限于 Spark 自身的版本號、所依賴的 Java 版本、集群的配置詳情(如節(jié)點(diǎn)數(shù)量、內(nèi)存分配等)、系統(tǒng)相關(guān)設(shè)置

Executors

  • 展示Executor的內(nèi)存使用情況和 CPU 核數(shù)的占用情況;狀態(tài)查看,能看到執(zhí)行器是處于運(yùn)行、空閑還是故障狀態(tài)。

SQL/DaraFrame

  • 展示 SQL 查詢和 DataFrame 操作的信息。能呈現(xiàn) SQL 的執(zhí)行計(jì)劃,包括邏輯與物理計(jì)劃,幫助理解查詢處理方式。對于 DataFrame,可查看數(shù)據(jù)轉(zhuǎn)換細(xì)節(jié)。

通過Sql 看 UI

select
  *
from
  mammut_user.dws_tradels_order_cus_1d
where
  dt = '2024-03-26'

Jobs模塊

在提交spark任務(wù)運(yùn)行后,點(diǎn)擊日志鏈接,Jobs展示的是整個spark應(yīng)用任務(wù)的job整體信息

Jobs

User

hadoop賬號,spark任務(wù)提交的用戶,用以進(jìn)行權(quán)限控制與資源分配

Total Uptime

Spark 應(yīng)用從啟動到當(dāng)前時刻的持續(xù)運(yùn)行時間。它就像一個計(jì)時器,記錄了應(yīng)用在集群環(huán)境中的存活時長

Scheduling Model

Job的調(diào)度模式, Spark 用于安排任務(wù)執(zhí)行順序和資源分配的策略。分為FIFO(先進(jìn)先出)和FAIR(公平調(diào)度)

Completed Jobs

執(zhí)行完成的Job

Active Jobs

正在執(zhí)行的Job

Event Timeline

Event Timeline 提供了一個時間序列上的任務(wù)執(zhí)行視圖。Job執(zhí)行時間線和Exector的增加和刪除事件時間線

Job details

點(diǎn)擊某個job,查看該job的詳細(xì)信息

Status

job的運(yùn)行狀態(tài):running、succeeded、 failed

Submitted

Job提交時間

Duration

Job執(zhí)行時長

Associated SQL Query

關(guān)聯(lián)的SQL模塊的query id

Job Group

任務(wù)組。通過 Job Group,用戶可以對一組作業(yè)進(jìn)行統(tǒng)一的操作,可以為不同的 Job Group 分配不同的資源配額

Event Timeline

當(dāng)前Job執(zhí)行時間線和Exector的增加和刪除事件時間線

DAG Visualization

DAG可視化展示, 當(dāng)前Job所包含的所有stage信息

Completed Stages

執(zhí)行完成的stages信息

Skipped Stages

跳過執(zhí)行的stages信息

為什么stage被跳過?

skipped的stage代表是之前被其他stage執(zhí)行過并落盤了,并不需要重新計(jì)算,可以直接使用之前的結(jié)果。

Stage模塊(重點(diǎn))

Stage概覽

點(diǎn)擊Stages模塊,可進(jìn)入到Stage界面

Completed Stages

所有任務(wù)的stages信息

Skipped Stages

跳過執(zhí)行的stages信息

Stage詳細(xì)(重點(diǎn))

在Stages頁點(diǎn)擊進(jìn)入某個stage后,可以查看某一stage的詳細(xì)信息:

Resource Profile Id

用于標(biāo)識資源配置文件的唯一標(biāo)識符,定義 Spark 應(yīng)用在運(yùn)行過程中所使用的資源分配方式。例如: 包括了諸如每個執(zhí)行器(Executor)分配多少內(nèi)存、多少 CPU 核心數(shù)等資源分配細(xì)節(jié)

Total Time Across All Tasks

當(dāng)前stage中所有task總花費(fèi)的時長

Locality Level Summary

數(shù)據(jù)本地化方式和數(shù)量

Associated Job Ids

stage關(guān)聯(lián)的job id

DAG Visualization

DAG可視化圖,表示當(dāng)前stage中包含的詳細(xì)的tranformation操作流程圖

Event Timeline

同之前

Summary Metrics for x Completed Tasks

已完成的Task的執(zhí)行匯總情況:(task層面)

  • Duration:task持續(xù)時間
  • GC Time:task gc消耗時間
  • Output Write Time:輸出寫時間
  • Output Size/ Records : 輸出數(shù)量大小,條數(shù)。
  • Shuffle HDFS Read Time: shuffle中間結(jié)果從hdfs讀取時間
  • Shuffle Read Size/Records: shuffle 讀入數(shù)據(jù)大小/條數(shù)
  • Shuffle Spill Time: shuffle 中間結(jié)果溢寫時間。
  • Shuffle spill (memory):shuffle 溢寫使用的內(nèi)存大小。
  • Shuffle spill (disk):shuffle 溢寫使用的硬盤大小。

Aggregated Metrics by Executor

task運(yùn)行的指標(biāo)信息按executor做聚合后的統(tǒng)計(jì)信息

Output Size / Records

輸出的數(shù)據(jù)字節(jié)數(shù)大小/記錄條數(shù)

Input Size / Records

輸入的數(shù)據(jù)字節(jié)數(shù)大小/記錄條數(shù)

Shuffle Write

有多少數(shù)據(jù)Shuffle寫,一般是map task寫數(shù)據(jù),也可以是reduce task寫數(shù)據(jù)。為下一個依賴的stage提供輸入數(shù)據(jù),shuffle過程中通過網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)字節(jié)數(shù)/記錄條數(shù)

Shuffle read

表示有多少數(shù)據(jù)Shuffle讀, 該項(xiàng)值有內(nèi)容表示為reduce task

Tasks

當(dāng)前stage所有task信息

數(shù)據(jù)本地化:數(shù)據(jù)離計(jì)算它的代碼有多近?;跀?shù)據(jù)距離代碼的距離,有幾種數(shù)據(jù)本地化級別:

  • PROCESS_LOCAL :數(shù)據(jù)和計(jì)算它的代碼在同一個Executor JVM進(jìn)程中。
  • NODE_LOCAL : 數(shù)據(jù)和計(jì)算它的代碼在同一個節(jié)點(diǎn),但不在同一個進(jìn)程中,比如在不同的executor進(jìn)程中,或者是數(shù)據(jù)在HDFS文件的block中。因?yàn)閿?shù)據(jù)需要在不同的進(jìn)程之間傳遞或從文件中讀取。分為兩種情況,第一種:task 要計(jì)算的數(shù)據(jù)是在同一個 worker 的不同 Executor 進(jìn)程中。第二種:task 要計(jì)算的數(shù)據(jù)是在同一個 worker 的磁盤上,或在 HDFS 上恰好有 block 在同一個節(jié)點(diǎn)上。如果 Spark 要計(jì)算的數(shù)據(jù)來源于 HDFS 上,那么最好的本地化級別就是 NODE_LOCAL。
  • NO_PREF : 從任何地方訪問數(shù)據(jù)速度都是一樣,不關(guān)心數(shù)據(jù)的位置。
  • RACK_LOCAL : 機(jī)架本地化,數(shù)據(jù)在同一機(jī)架的不同節(jié)點(diǎn)上。需要通過網(wǎng)絡(luò)傳輸數(shù)據(jù)以及文件 IO,比NODE_LOCAL 慢。情況一:task 計(jì)算的數(shù)據(jù)在 worker2 的 EXecutor 中。情況二:task 計(jì)算的數(shù)據(jù)在 work2 的磁盤上。

越往前的級別等待時間應(yīng)該設(shè)置的長一點(diǎn),因?yàn)樵绞乔懊嫘阅茉胶?/p>

Storge模塊

用于展示存儲情況,能呈現(xiàn) RDD、DataFrame 等存儲對象的存儲級別

Environment模塊

提供全面的環(huán)境信息展示。它清晰呈現(xiàn)出 Spark 應(yīng)用運(yùn)行時所處的各類環(huán)境參數(shù)

概覽信息

Runtime Information

Spark Properties

Resource Profiles

Hadoop Properties

System Properties

Classpath Entries

Executor模塊

executors頁面展示了executor和driver的一些統(tǒng)計(jì)信息和明細(xì)信息,匯總信息包括內(nèi)存、磁盤、cpu的使用量,任務(wù)執(zhí)行時間、GC時間,成功、失敗、完成的task數(shù)量,以及輸入輸出的數(shù)據(jù)量等內(nèi)容

SQL模塊(重點(diǎn))

完整的展示了任務(wù)的DAG過程,跟Stages結(jié)合可以對應(yīng)該Stages與SQL代碼的關(guān)系,也就是這是在運(yùn)行哪一串代碼,用于定位數(shù)據(jù)傾斜的核心功能之一

SQL算子和 UI SQl關(guān)鍵詞對應(yīng)關(guān)系
  • WholeStageCodegen:全階段代碼生成,把一個stage里的算子進(jìn)行了整合、優(yōu)化
  • Filter:where
  • Project:select 后的字段
  • Exchange:shuffle
  • Sort:排序,一般在Exchange之后
  • CustomShuffleReader:定制化shuffle,存在該算子說明啟用了AE
  • HashAggregate:group by (hash聚合)
  • SortAggregate:group by(sort聚合,內(nèi)存不足會采用sort兜底)
  • Expand:對于select中存在多個distinct 或 group by id,name with cube會存在該算子
  • Generate:explode函數(shù)
  • ColumnarToRow:spark內(nèi)部優(yōu)化,向量化讀
  • SortMergeJoin(skew=true):join方式是SMJ,并且命中了AE自動處理傾斜的邏輯

#數(shù)據(jù)人offer決賽圈怎么選##數(shù)據(jù)人的面試交流地##數(shù)據(jù)分析##大數(shù)據(jù)##java#
全部評論

相關(guān)推薦

評論
2
2
分享

創(chuàng)作者周榜

更多
牛客網(wǎng)
??推髽I(yè)服務(wù)