标签: spark

共 35 篇文章

大数据-278 Spark MLlib - 基础介绍 机器学习算法 梯度提升树 GBDT案例 详解

GBDT 案例实战,手把手带你完成从残差计算到回归树构建与迭代训练的全过程,结合图示详细解析,最终预测精准输出!

大数据-276 Spark MLlib - 基础介绍 机器学习算法 Bagging和Boosting区别 GBDT梯度提升树

本文介绍了机器学习中Bagging与Boosting的区别,以及GBDT(梯度提升决策树)算法原理。主要内容包括:1)Bagging和Boosting在数据采样、投票方式、学习顺序和应用场景上的差异;2)GBDT的基本概念和使用CART回归树的原因;3)回归决策树的构建流程,包括最优切分点选择、区域划分和输出值计算;4)通过具体案例演示回归树的生成过程,包括损失函数计算和递归划分策略。

大数据-277 Spark MLlib - 基础介绍 机器学习算法 Gradient Boosting GBDT算法原理 高效实现

本文介绍了梯度提升树(GBDT)算法的原理与应用。首先通过通俗例子说明提升树的基本思想,然后详细解析算法流程,包括负梯度计算、回归树拟合和模型更新等关键步骤。文章比较了GBDT与传统提升树的区别,并阐述了GBDT在回归和分类问题中的优势。此外,还介绍了XGBoost、LightGBM等高效实现及其特性,分析了GBDT的适用场景和局限性。

大数据-275 Spark MLlib - 基础介绍 机器学习算法 集成学习 随机森林 Bagging Boosting

本文系统介绍了机器学习中的集成学习方法。主要内容包括:1)集成学习的基本定义与分类,通过结合多个模型提升预测性能;2)Bagging方法原理及应用,重点讲解随机森林的实现过程;3)Boosting方法的核心思想,包括Adaboost等算法的逐步增强机制。文章通过图示直观展示了不同集成学习技术的运作流程,比较了它们在解决欠拟合和过拟合问题上的作用。

大数据-274 Spark MLlib - 基础介绍 机器学习算法 剪枝 后剪枝 ID3 C4.5 CART

本文系统介绍了决策树的预剪枝与后剪枝原理,对比了ID3、C4.5和CART三种主流算法的核心差异,包括分裂标准、属性支持类型和剪枝方法。重点阐述了信息增益、信息增益率与基尼系数的计算原理,详细讲解了从树生成到剪枝的完整流程,并通过Spark MLlib中的Scala代码实例演示了决策树分类器的实现过程。

大数据-273 Spark MLlib - 基础介绍 机器学习算法 决策树 分类原则 分类原理 基尼系数 熵

本文介绍了决策树的基本概念、分类原则和分类原理。决策树是一种非线性有监督分类模型,通过树形结构进行属性判断和分类。分类时应选择能将数据分类更纯粹的节点作为根节点,减少树高和训练次数。分类原理涉及熵、条件熵、信息增益等概念:熵衡量信息混乱程度,信息增益反映分类前后熵的变化,基尼系数也可表示样本混乱程度。

大数据-272 Spark MLlib - 基础介绍 机器学习算法 逻辑回归

本文介绍了逻辑回归的基本原理、应用场景和在Spark MLlib中的实现。逻辑回归是一种高效二分类算法,广泛应用于广告点击率、垃圾邮件识别等领域。文章详细讲解了逻辑回归的输入函数、Sigmoid激活函数和损失计算方法,并通过糖尿病预测案例演示了如何使用Spark MLlib的LogisticRegressionWithSGD模块进行模型训练与评估。

大数据-271 Spark MLlib - 基础介绍 机器学习算法 线性回归 场景 定义 损失 优化

线性回归(Linear Regression)是利用回归方程(函数)对一个或多个自变量和因变量之间关系进行建模的一种分析方式。特点:只有一个自变量的情况称为单变量回归,多于一个自变量情况的叫做多元回归。

大数据-89 Spark Streaming 整合 Kafka:Receiver 与 Direct 模式全解析

详解 Spark Streaming 接入 Kafka 的两种模式:基于 Receiver 的高级 API 与 Direct 直连模式的架构差异、偏移量管理、Exactly-Once 语义保证及完整 Scala 代码实现。

大数据-87 Spark DStream 转换算子详解:map、reduceByKey、transform 实战

系统梳理 Spark Streaming DStream 的无状态转换算子与 transform 高级操作,通过黑名单过滤案例演示 leftOuterJoin、SQL、广播变量三种实现方式。

大数据-88 Spark Streaming 窗口操作与状态追踪:updateStateByKey 与 mapWithState

深入讲解 Spark Streaming 有状态计算:窗口操作参数配置、reduceByKeyAndWindow 热词统计、updateStateByKey 全量状态维护与 mapWithState 增量优化,附完整 Scala 代码。

大数据-85 Spark Streaming 入门:从 DStream 到 Structured Streaming 的演进

介绍 Spark 实时计算的两代框架:DStream 微批处理模型的架构与局限,以及 Structured Streaming 如何通过无界表模型和 Catalyst 优化解决 EventTime 处理、API 一致性等问题。

大数据-86 Spark Streaming 数据源详解:文件流、Socket、RDD 队列流

全面讲解 Spark Streaming 三种基础数据源的原理与实现:文件流监控目录、Socket TCP 接入、RDD 队列模拟测试,附完整 Scala 代码示例。

大数据-83 SparkSQL 语句实战:DataFrame 操作、SQL 查询与 Hive 集成

介绍 SparkSQL 的核心使用方式,包括 DataFrame API、SQL 查询语法、lateral view explode 等高级功能,以及如何通过 enableHiveSupport 集成 Hive 元数据与读写 Hive 表。

大数据-84 SparkSQL 内核原理:五种 Join 策略与 Catalyst 优化器解析

深入解析 SparkSQL 的五种 Join 执行策略(BHJ、SHJ、SMJ、Cartesian、BNLJ)的选择条件与适用场景,以及 Catalyst 优化器从 SQL 解析到代码生成的完整处理流程。

大数据-81 SparkSQL 核心抽象:RDD、DataFrame、Dataset 与 SparkSession 详解

深入对比 Spark 三大数据抽象 RDD、DataFrame、Dataset 的特性与适用场景,介绍 SparkSession 统一入口,并演示各抽象之间的相互转换方法。

大数据-82 SparkSQL 算子详解:Transformation 与 Action 操作实战

系统梳理 SparkSQL 的 Transformation 和 Action 算子,涵盖 select、filter、join、groupBy、union 等操作,并通过实际测试用例演示其用法与性能优化技巧。

大数据-79 Spark Standalone 模式:架构解析与性能调优

全面讲解 Spark Standalone 集群的四大核心组件、应用提交流程、SparkContext 内部架构,以及 Shuffle 演进历史和 RDD 优化策略。

大数据-80 SparkSQL 入门:SQL 与分布式计算的融合

系统介绍 SparkSQL 的演进历史、核心抽象 DataFrame/Dataset、Catalyst 优化器原理,以及与 Hive/HDFS 多数据源集成的实战用法。

大数据-77 Spark RDD 容错机制:Checkpoint 原理与最佳实践

详解 Spark Checkpoint 的执行流程、与 persist/cache 的核心区别、分区器策略,以及在迭代算法和长依赖链场景下的最佳使用实践。

大数据-78 Spark 广播变量:高效共享只读数据

详解 Spark 广播变量的工作原理、配置参数与最佳实践,以及利用广播实现 MapSideJoin 替代 shuffle join 的性能优化方案。

大数据-75 Spark Super WordCount:文本清洗 + 词频统计 + MySQL 持久化

实现一个完整的生产级词频统计流水线:小写转换、标点去除、停用词过滤、词频计数,最终通过 foreachPartition 高效写入 MySQL,对比逐条插入与分区批量写入的性能差异。

大数据-76 Spark 序列化机制与 RDD 执行原理

深入讲解 Spark Driver-Executor 进程通信、Java/Kryo 序列化选型、闭包序列化问题排查,以及 RDD 依赖、Stage 划分和持久化存储级别。

大数据-73 Spark + Scala 实现 WordCount 入门实践

使用 Spark + Scala 和 Spark + Java 两种方式实现分布式 WordCount,详解 RDD 五步处理流程、Maven 项目配置和 spark-submit 提交命令。

大数据-74 Spark Scala 实战:蒙特卡洛求 Pi 与共同好友分析

通过两个经典案例深入 Spark RDD 编程:蒙特卡洛方法分布式估算 π 值,以及两种思路实现社交网络共同好友分析,对比笛卡尔积与数据变换的性能差异。

大数据-72 Spark Action 操作全景解析

全面介绍 Spark RDD 的 Action 操作,涵盖数据收集、统计聚合、元素检索、存储写出等类别,并详解 Key-Value RDD 的 groupByKey、reduceByKey、join 等核心算子。

大数据-71 Spark 集群架构与部署模式详解

深入解析 Spark 集群核心组件 Driver、Cluster Manager、Executor 的职责,对比 Standalone、YARN、Kubernetes 部署模式,并介绍静态与动态资源分配策略。

大数据-69 Spark RDD 深度解析:五大特性、设计优势与典型应用场景

全面解析 Spark 核心数据抽象 RDD 的五大关键特征(分区、计算函数、依赖关系、分区器、优先位置),以及惰性求值、容错机制和窄/宽依赖的核心原理。

大数据-70 Spark RDD 创建与 Transformation 操作全攻略

详解 Spark RDD 的三种创建方式(parallelize、textFile、从已有 RDD 转换),以及 map、filter、flatMap、groupBy、sortBy 等常用 Transformation 算子的使用与惰性求值原理。

大数据-67 从 MapReduce 到 Spark:大数据计算引擎三代演进全景解析

系统梳理大数据处理引擎从 MapReduce 到 Spark 再到 Flink 的演进脉络,解析 Spark 内存计算模型、统一生态与核心组件,帮助快速建立 Spark 全局认知。

大数据-68 Spark 分布式环境搭建:从下载配置到多节点集群部署

手把手搭建 Apache Spark 分布式计算环境,涵盖下载解压、环境变量配置、slaves/spark-env.sh 核心配置文件调整,以及三节点集群分发启动的完整流程。

大数据-103 Spark Streaming 消费 Kafka:Offset 获取、存储与恢复详解

Spark Streaming 集成 Kafka 时,Offset 管理是保证数据处理连续性与一致性的关键环节。Offset 用于标记消息在分区中的位置,应用可通过它来控制消费进度。若在程序异常退出前未持久化保存 Offset,则会导致数据丢失或重复消费。常见管理方式包括:使用 Checkpoint 保存元数据和 Offset,支持故障恢复但存在版本兼容问题;依赖 Kafka 内置的提交机制,实现简单但控制粒度有限;或选择外部存储(如 Redis、MySQL、HBase、ZooKeeper),通过手动管理。

大数据-104 Spark Streaming 与 Kafka 集成:Offset 管理机制详解与最佳实践 Scala实现

Offset用于标记Kafka分区内消息的位置,正确管理能够实现"至少一次"甚至"仅一次"的数据处理语义。通过持久化Offset,应用在故障恢复时可从上次处理的位置继续消费,避免消息丢失或重复。

大数据-101 Spark Streaming 有状态转换详解:窗口操作与状态跟踪实战 附多案例代码

窗口操作通过设置窗口长度(windowDuration)和滑动间隔(slideDuration),在比 batchDuration 更长的时间范围内整合多个批次的数据,实现动态的流式计算。典型案例展示了如何通过 reduceByWindow 对窗口内数据进行拼接与求和,以及如何利用 reduceByKeyAndWindow 实现热点搜索词的实时统计,强调了窗口参数与批次间隔的关系。另一方面,状态跟踪操作如 updateStateByKey 和 mapWithState 可用于对流式数据进行全局累计统计。

大数据-102 Spark Streaming 与 Kafka 集成全解析:Receiver 与 Direct 两种方式详解 附代码案例

本文介绍了 Spark Streaming 与 Kafka 的两种集成方式:Receiver Approach 和 Direct Approach。Receiver 方式通过 Executor 上的 Receiver 持续接收数据,依赖 BlockManager 管理数据块,可通过 WAL 增强可靠性;Direct 方式不依赖 Receiver,直接生成与 Kafka 分区对应的 KafkaRDD,提升吞吐效率,支持手动维护 Offset 实现 Exactly Once 语义。