- 博客(68)
- 收藏
- 关注
原创 SparkSQL操作Mysql
SparkSQL 提供了强大的功能来连接和操作 MySQL 数据库,支持读取数据、写入数据以及执行 SQL 查询。下面将详细介绍如何使用 SparkSQL 与 MySQL 进行交互,并提供完整的代码示例。,并将 JAR 文件添加到 Spark 的 classpath 中。在创建 SparkSession 时,通过。
2025-05-13 15:38:47
814
原创 结构化数据处理
结构化数据处理是数据分析和机器学习的基础,主要涉及对结构化数据(如表格数据)的清洗、转换、分析和建模。结构化数据通常以二维表格形式存在,具有明确的列名和数据类型,常见于关系型数据库、CSV 文件、Excel 表格等。结构化数据处理是数据科学的基础技能,通过熟练掌握上述工具和技术,可以高效地完成从数据清洗到分析建模的全流程。
2025-05-13 15:35:51
479
原创 RDD的自定义分区器-案例
我们希望根据用户所在地区将数据分区,以便后续对每个地区的数据进行独立分析。以下是一个更具体的 RDD 自定义分区器案例,展示如何根据业务需求实现自定义分区逻辑。通过自定义分区器,你可以精确控制数据分布,优化 Spark 作业的执行效率。假设我们有一个电商交易数据集,包含。
2025-05-13 15:33:39
320
原创 自定义分区器-基础
继承类:自定义分区器需要继承类(在 Python 中是),并实现其中的方法。实现属性:该属性返回分区的数量,必须是一个大于 0 的整数。实现方法:该方法接受一个键(key)作为参数,并返回该键对应的分区索引(从 0 到。
2025-05-13 15:31:51
229
原创 Spark缓存
在 Spark 中,缓存(Caching)是一种优化技术,用于将中间计算结果存储在内存或磁盘中,避免重复计算,从而显著提升迭代计算或交互式查询的性能。缓存是 Spark 中提升性能的重要手段,尤其适合迭代计算和交互式查询。合理使用缓存可以显著减少计算开销,但需根据数据规模和内存情况选择合适的存储级别,并注意监控和管理缓存数据。对于需要多次使用的 RDD(如迭代算法或交互式查询),这种重复计算会造成极大的资源浪费。缓存过多数据会导致内存压力,触发频繁的 GC 或数据溢写磁盘,反而降低性能。
2025-05-13 15:30:52
1166
原创 Spark处理过程-案例数据清洗
用于将数据缩放到统一范围,常见方法有 Min-Max 缩放和 Z-score 标准化。异常值可能由数据录入错误或真实异常事件导致,处理方法包括删除、修正或离散化。缺失值是数据中最常见的问题之一,处理方法包括删除、填充或预测。对于大规模数据,可使用 Spark 进行分布式清洗。确保数据类型与业务需求一致,避免计算错误。处理大小写、单位、拼写等不一致问题。文本数据常包含噪声,需进行特殊处理。
2025-05-13 15:27:47
397
原创 Spark处理过程-转换算子和行动算子
在 Spark 中,RDD(弹性分布式数据集)和 DataFrame 的操作被分为 ** 转换算子(Transformations)行动算子用于触发实际计算并返回结果(如返回值、写入文件、显示数据等)。调用行动算子时,Spark 会执行之前记录的所有转换操作。行动算子(Actions)** 两类,它们是构建 Spark 应用的核心概念。,即调用转换算子时不会立即执行计算,而是记录计算逻辑(DAG),直到遇到行动算子才会触发实际计算。转换算子用于从现有 RDD/DF 创建新的 RDD/DF,这类操作是。
2025-05-13 15:25:38
831
原创 sparkSQL读入csv文件写入mysql
下面为你提供一个使用 SparkSQL 读取 CSV 文件并写入 MySQL 数据库的完整示例。这个示例展示了如何配置数据源、处理数据以及将结果写入关系型数据库。
2025-05-13 15:22:58
219
原创 RDD-自定义分区器案例
以下是实现这个自定义分区器的代码:python运行# 创建Spark配置和上下文# 自定义分区器类# 分区数必须大于0# 根据键(用户ID)的最后两位数字计算分区号return int(key) % 100 # 假设用户ID是数字类型# 用于比较分区器是否相等# 创建示例数据:(userId, orderId, amount)data = [# 创建RDD并转换为(userId, (orderId, amount))的键值对格式# 使用自定义分区器进行分区。
2025-05-13 15:21:11
225
原创 命令说明(hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount wcinput wcoutp)
它会启动 Hadoop 的 Java 虚拟机环境,并执行指定的 JAR 文件中的主类。:指定要运行的具体示例程序。这里是 WordCount,它是一个经典的 MapReduce 应用,用于统计文本中每个单词出现的次数。WordCount 是 MapReduce 的经典示例,其核心功能是统计文本中每个单词的出现次数。:将输入的文本拆分成单词,并为每个单词生成键值对(word, 1),其中键是单词,值是 1,表示该单词出现了一次。:对每个键(单词)的所有值(1)进行求和,得到每个单词的总出现次数。
2025-05-13 15:17:50
433
原创 Spark集群搭建之Yarn模式(配置集群)
使用xsync /opt/module/hadoop-3.1.3/etc/hadoop/同步一下。--是否启动一个线程检查每个任务正使用的物理内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->--是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->2. 修改一下spark的环境变量,/etc/profile.d/my_env.sh。
2025-05-13 15:13:16
262
原创 行动算子(知识)
行动算子是触发 Spark 计算的“触发点”,因为 Spark 的 RDD 是懒惰计算的,只有在执行行动算子时,才会真正开始计算。它会触发 Spark 作业的实际执行,对 RDD 中的所有元素进行计数,并将最终的计数结果返回给驱动程序。f: T => Unit:这是一个函数,它接收一个类型为 T 的元素(T 为 RDD 中元素的类型),并对该元素执行相应的操作,但不返回任何值(返回类型为 Unit)。返回值:返回一个包含 RDD 中所有元素的数组,数组元素的类型与 RDD 中元素的类型一致。
2025-05-13 15:11:42
395
原创 RDD案例-数据清洗
这个案例展示了如何使用 RDD 进行基本的数据清洗操作,包括过滤无效数据、格式转换和异常处理。你可以根据实际需求扩展清洗规则和处理逻辑。假设你有一个包含用户行为日志的数据集,需要清洗其中的无效数据并提取关键信息。转换数据格式为统一标准的具体方法是什么?怎样移除金额字段为空的购买记录?如何过滤无效时间戳的记录?
2025-05-12 23:40:11
432
原创 如何在idea中写spark程序
如果要将程序提交到 Spark 集群运行,可以使用 Maven 将项目打包成 JAR 文件。文件中添加 Spark 依赖。目录下生成一个 JAR 文件。Maven 会自动下载这些依赖项。替换为实际的 JAR 文件路径。替换为实际的主类名,
2025-04-28 19:52:36
620
原创 如何搭建spark yarn模式的集群
如果应用程序成功运行并输出结果,则说明 Spark YARN 模式集群搭建成功。从 Apache 官网下载 Hadoop 3.x 版本,并解压到指定目录。从 Apache 官网下载 Spark 3.x 版本,并解压到指定目录。
2025-04-28 19:51:11
526
原创 从0开始配置spark-local模式
这里使用单机模式快运行第一个Spark程序,让大家有个基本的印象。在安装Spark时,它就提供了一些示例程序,我们可以直接来调用。进入到spark-local,运行命令spark-submit命令。mv是linux的命令,这里的 \ 是换行输入的意思,整体的代码就只有一句,只不过太长了,我们把它拆开成几个部分来输入,其中\ 的意思就是这里写不下,写在下一行。接下来的操作,我们把它上传到集群中的节点,并解压运行。1.打开etc/profile.d/my_env.sh文件中,补充设置spark的环境变量。
2025-04-21 11:05:44
494
原创 spark和hadoop的区别与联系
Hadoop 负责数据采集、存储等基础工作,Spark 在此之上进行更复杂高效的数据处理和分析,相互配合完成从数据收集到价值挖掘的全过程。Spark 可以直接读取 Hadoop 中 HDFS 存储的数据,方便企业在已有 Hadoop 存储系统基础上,利用 Spark 计算能力处理数据,实现存储与计算的分离与协同。它们都来自 Apache 基金会开源项目,目标都是为大数据处理提供高效、可靠、可扩展的解决方案,且社区不断有开发者参与完善,推动大数据技术在各行业的应用发展。
2025-04-21 08:25:20
532
原创 虚拟机配置
点击 “自定义硬件” 按钮,对虚拟机的硬件进行详细配置:内存:根据物理机的内存大小和使用需求分配虚拟机的内存。如果物理机内存为 16GB,建议给虚拟机分配 4GB 或 8GB 内存。处理器:设置虚拟机使用的 CPU 核心数。一般可以根据物理机的 CPU 核心数进行分配,例如物理机为 4 核 CPU,可以给虚拟机分配 2 个核心。网络适配器:选择虚拟机的网络连接方式,常见的有 “桥接模式”“NAT 模式” 和 “仅主机模式”。桥接模式下,虚拟机可以直接连接到物理网络,拥有独立的 IP 地址;
2025-03-03 19:44:38
662
原创 vi的基本使用
保存并退出:在命令模式下输入 `:wq` 或 `:x`,然后按 `Enter`。- `ndd`:删除从当前行开始的 `n` 行(如 `3dd` 删除 3 行)- `nyy`:复制从当前行开始的 `n` 行(如 `3yy` 复制 3 行)- `nG`:移动到第 `n` 行(如 `5G` 移动到第 5 行)- `/关键词`:向下查找(按 `n` 查找下一个,`N` 查找上一个)- 在命令模式下按 `i`、`a`、`o` 等键可进入插入模式。5. 保存并退出:输入 `:wq`,按 `Enter。
2025-02-24 23:27:26
380
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人