摘要: 在 Spark SQL 日常开发中,表关联(Join)是核心操作,也是性能调优的重灾区。不同关联场景(大表+小表、大表+大表)的优化思路差异显著,本文将分场景拆解最优优化方案,结合实操案例说明原理与落地方式。 一、大表关联小表优化(分2个子场景) 大表关联小表的核心优化目标是 减少/避免 Shuff 阅读全文
posted @ 2026-01-11 21:13 scales123 阅读(1) 评论(0) 推荐(0)
摘要: Spark 参数调优的核心是先定位性能瓶颈(如资源不足、Shuffle 慢、GC 高、IO 耗时久),再针对性调参。以下按「资源分配、Shuffle 优化、内存管理、执行效率、数据读取」五大核心维度,梳理高频调优参数及对应场景: 一、资源分配类(解决“资源不够/资源浪费”) 核心是为 Executo 阅读全文
posted @ 2026-01-08 20:13 scales123 阅读(6) 评论(0) 推荐(0)
摘要: 1 AQE 1.1 AQE诞生的背景 Spark 2.x 在遇到有数据倾斜的任务时,需要人为地去优化任务,比较费时费力;如果任务在Reduce阶段,Reduce Task 数据分布参差不齐,会造成各个excutor节点资源利用率不均衡,影响任务的执行效率;Spark 3新特性AQE极大地优化了以上任 阅读全文
posted @ 2026-01-04 22:27 scales123 阅读(6) 评论(0) 推荐(0)
摘要: 通过win11构建支持linux-arm/x86的docker镜像 1 前置条件 1.1 启用wsl # 启用 WSL 功能 dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /n 阅读全文
posted @ 2025-12-11 23:17 scales123 阅读(31) 评论(0) 推荐(0)
摘要: 1 核心概念:为什么需要它们? 在spark程序中,当一个传递给Spark操作(例如map和reduce)的函数在远程节点上面运行时,Spark操作实际上操作的是这个函数所用变量的一个独立副本。这些变量会被复制到每台机器上,并且这些变量在远程机器上的所有更新都不会传递回驱动程序。通常跨任务的读写变量 阅读全文
posted @ 2025-12-02 23:01 scales123 阅读(44) 评论(0) 推荐(0)
摘要: 最近需要在麒麟系统安装emqx,由于emqx没有麒麟系统的安装包且源码编译依赖版本较难管理,因此采用docker容器化部署,现在回忆总结一下emqx的docker离线部署步骤。这里是麒麟系统离线安装docker和docker-compose的步骤:https://www.cnblogs.com/sc 阅读全文
posted @ 2025-11-27 20:49 scales123 阅读(44) 评论(0) 推荐(0)
摘要: 最近需要在麒麟系统安装emqx,由于emqx没有麒麟系统的安装包且源码编译依赖版本较难管理,因此采用docker容器化部署,现在回忆总结一下docker和docker-compose的离线安装步骤。 这里是麒麟系统emqx离线部署教程回忆版:https://www.cnblogs.com/scale 阅读全文
posted @ 2025-11-27 20:06 scales123 阅读(295) 评论(5) 推荐(1)
摘要: 1.Spark Sql命令行 // 启动 Spark SQL 命令行(类似 hive 命令) $SPARK_HOME/bin/spark-sql // 带参数的启动 $SPARK_HOME/bin/spark-sql \ --master local[2] \ --conf spark.sql.wa 阅读全文
posted @ 2025-11-16 21:31 scales123 阅读(14) 评论(0) 推荐(0)