- 博客(73)
- 收藏
- 关注
原创 persist和cache方法
MEMORY_ONLY_SER:将 RDD 以序列化的 Java 对象形式存储在内存中,相较于 MEMORY_ONLY,序列化后占用的内存空间更小,但读取时需要进行反序列化操作,会带来一定的性能开销。MEMORY_ONLY:将 RDD 以 Java 对象的形式存储在 JVM 的内存中。MEMORY_AND_DISK:优先把 RDD 以 Java 对象的形式存储在 JVM 的内存中。MEMORY_AND_DISK_SER:优先将 RDD 以序列化的 Java 对象形式存储在内存中,内存不足时存储到磁盘上。
2025-05-19 08:05:30
221
原创 转换算子与行动算子
这个函数 f 接收一个输入类型为 T 的元素,返回一个类型为 U 的元素。f: T => Unit:这是一个函数,它接收一个类型为 T 的元素(T 为 RDD 中元素的类型),并对该元素执行相应的操作,但不返回任何值(返回类型为 Unit)。:筛选出 RDD 中满足函数 f 条件(即 f 函数返回 true)的元素,返回一个新的 RDD,新 RDD 中的元素类型与原 RDD 相同。:对 RDD 中的每个元素应用函数 f,函数 f 返回一个可遍历的集合,然后将这些集合中的元素扁平化合并成一个新的 RDD。
2025-05-19 08:03:29
881
原创 Mapreduce初使用
Map会处理本节点的原始数据,产生的数据会临时保存到本地磁盘,那么每个节点会得到一部分结果(因为节点上的数据是一部分数据)。计算的结果数据会临时保存到所在节点的本地磁盘里。该阶段的编程模型中会有一个 map 函数需要开发人员重写,map 函数的输入是一个 < key,value > 对,map 函数的输出也是一个 < key,value > 对,key和value的类型需要开发人员指定。每个Map任务读取数据,按行处理,按空格进行切分,组成KV键值对,单词为键,1为值,将键值对保存到磁盘。
2025-05-14 18:07:27
767
原创 MapReduce打包运行
比如其中一台机器挂了,它可以把上面的计算任务转移到另外一个节点上运行,不至于这个任务运行失败,而且这个过程不需要人工参与,而完全是由。我们集群上安装的java环境是1.8的,那么我们生成的代码也必须是这个版本的,否则,就会无法运行。我们集群上安装的java环境是1.8的,那么我们生成的代码也必须是这个版本的,否则,就会无法运行。在上面的代码中,我们的程序只能完成固定目录下的功能。当你的计算资源不能得到满足的时候,你可以通过简单的增加机器来扩展它的计算能力。改完代码之后,要重新打包,并上传到某台节点上运行。
2025-05-14 18:07:13
709
原创 HDFS的客户端操作
/ hadoop100是namenode所在的节点。这一小结,我们来通过hadoop的相关api,实现通过代码的方式去创建文件夹。我们的目标是:在根目录下去创建一个名为maven的文件夹。要用到的api是fs.mkdirs。此时,需要去设置登录的用户名。// 1 获取文件系统。
2025-05-13 15:37:40
173
原创 创建Maven项目
步骤一:打开 IDEA,点击 File -> Settings(Windows/Linux)或者 IntelliJ IDEA -> Preferences(Mac),进入设置界面,然后找到 Build, Execution, Deployment -> Build Tools -> Maven。步骤三:可以在 User settings file 中指定 settings.xml 文件的路径(一般使用默认路径即可),Local repository 中指定本地仓库的路径,配置完成后点击 OK 保存设置。
2025-05-13 15:36:14
892
原创 Maven基本介绍
Maven 可以帮助你管理这些依赖项,你只需在项目的 `pom.xml` 文件中声明所需的依赖,Maven 就会自动从远程仓库下载这些依赖项,并将其添加到项目的类路径中。Maven 的 settings.xml文件用于配置 Maven 的全局设置,例如镜像、仓库等。POM 是 Maven 的核心概念之一,它是一个 XML 文件(通常命名为 `pom.xml`),用于描述项目的配置信息和依赖关系。- 在“变量值”中输入 Maven 的安装路径,例如 `D:\Apache\maven`。
2025-05-13 15:32:33
924
原创 HDFS概述
随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。它有两种操作,一是移动,会把当前的文件删除,二是复制,保留当前的文件。HDFS中的文件在物理上是分块存储(Block),块的大小可以通过配置参数(dfs.blocksize)来规定,1. 不适合低延时数据访问,比如毫秒级的存储数据,是做不到的。
2025-05-13 15:27:48
915
原创 配置Hadoop集群-配置历史和日志服务
echo " --------------- 启动 historyserver ---------------"echo " --------------- 启动 hdfs ---------------"echo " --------------- 启动 yarn ---------------"echo " --------------- 关闭 yarn ---------------"echo " --------------- 关闭 hdfs ---------------"
2025-05-13 15:24:39
858
原创 配置Hadoop集群-测试使用
前面我们上传了一个小文件,可以看到这个文件太小,hadoop被没有被切分成小块。上传文件的时候,我们传一个大一点的(>128M),再传一个小一点的。对于大一点的文件,我们要去看看它是否会按128M为单位去拆分这个大文件,而拆分成大文件之后,我们又怎么才能去还原?上传完成之后,我们去查看,很明显大文件被分块了,128M一块,一共有两个块。在我们上一节的hadoop配置中,我们设置了保持文件的目录是/data,所以,我们进入hadoop的按照目录下的data中去看一看。
2025-05-13 15:16:14
639
原创 集群配置规划
这里一共有5个文件要配置:分别是core-site.xml,hdfs-site.xml,yarn-site.xml,重新启动hdfs, yarn。配置/opt/module/hadoop-3.1.3/etc/hadoop。-- 配置HDFS网页登录使用的静态用户为root-->-- 指定ResourceManager的地址-->-- 指定MapReduce程序运行在Yarn上 -->-- 指定hadoop数据的存储目录 -->-- 指定NameNode的地址 -->-- 指定MR走shuffle -->
2025-05-13 15:12:18
821
原创 YARN的命令
不是说非要启动HDFS集群才能启动YARN集群,不是先有哪个再有哪个?每个框都是一个进程,可能都运行在一台主机上,但是,属于不同的集群。Yet Another Resource Negotiator,简称YARN,另一种资源协调者,是Hadoop的资源管理器。(1)ResourceManager(RM):整个集群资源(内存,CPU。(2)NodeManager(NM): 单个节点服务器资源。物理上在一起:每一台机器上都有NN, NM。(2)Reduce阶段对Map结果进行汇总。用来提供计算的能力。
2025-05-13 15:06:52
152
原创 Spark缓存
当持久化某个RDD后,每一个节点都将把计算的分片结果保存在内存中,并在对此RDD或衍生出的RDD进行的其他动作中重用。MEMORY_ONLY_SER:将 RDD 以序列化的 Java 对象形式存储在内存中,相较于 MEMORY_ONLY,序列化后占用的内存空间更小,但读取时需要进行反序列化操作,会带来一定的性能开销。MEMORY_AND_DISK_SER:优先将 RDD 以序列化的 Java 对象形式存储在内存中,内存不足时存储到磁盘上。时,该RDD将会被缓存在计算节点的内存中,并供以后重用。
2025-05-13 15:03:27
233
原创 Spark处理过程-案例数据清洗
过滤算子中,函数返回为false,就会被过滤掉,函数返回为true,就会被保留下来。创建input文件夹,在input下新建记事本文件,内容就是前面的实例数据。在src下创建新的scala文件,开始写功能代码。// 创建 SparkContext 对象。// 创建 SparkConf 对象。// 停止 SparkContext。// 停止 SparkContext。// 读取文本文件,创建 RDD。// 保存清洗后的数据到文件。// 输出清洗后的数据。把清洗之后的数据保存到一个文件中。
2025-05-13 14:58:30
321
原创 行动算子的内涵和分类
行动算子是触发 Spark 计算的“触发点”,因为 Spark 的 RDD 是懒惰计算的,只有在执行行动算子时,才会真正开始计算。它会触发 Spark 作业的实际执行,对 RDD 中的所有元素进行计数,并将最终的计数结果返回给驱动程序。f: T => Unit:这是一个函数,它接收一个类型为 T 的元素(T 为 RDD 中元素的类型),并对该元素执行相应的操作,但不返回任何值(返回类型为 Unit)。返回值:返回一个包含 RDD 中所有元素的数组,数组元素的类型与 RDD 中元素的类型一致。
2025-05-13 14:54:04
336
原创 Spark处理过程-转换算子和行动算子
它的核心作用是对具有相同键的所有值进行聚合操作,通过用户提供的聚合函数将这些值合并成一个结果,从而实现数据的归约和统计。:对 RDD 中的每个元素应用给定的函数 f,将每个元素转换为另一个元素,最终返回一个新的 RDD。:筛选出 RDD 中满足函数 f 条件(即 f 函数返回 true)的元素,返回一个新的 RDD,新 RDD 中的元素类型与原 RDD 相同。:对 RDD 中的每个元素应用函数 f,函数 f 返回一个可遍历的集合,然后将这些集合中的元素扁平化合并成一个新的 RDD。
2025-05-13 14:52:04
593
原创 RDD的五大特征
优先位置列表会存储每个Partition的优先位置,对于一个HDFS文件来说,就是每个Partition块的位置。按照“移动数据不如移动计算”的理念,Spark在进行任务调度时,会尽可能地将任务分配到其所要处理数据块的存储位置。RDD的每次转换都会生成一个新的RDD,所以RDD之间就会形成类似于流水线一样的前后依赖关系。在部分分区数据丢失时,Spark可以通过这个依赖关系重新计算丢失的分区数据,而不是对RDD的所有分区进行重新计算。RDD的分区是RDD数据存储的最小单位。RDD的方法会作用在所有的分区上。
2025-05-13 14:44:19
164
原创 运行Spark程序-在shell中运行
通过 SparkConf 类,你可以设置应用程序的名称、运行模式(如本地模式、集群模式)、资源分配(如内存、CPU 核心数)等。是 Spark 应用程序的入口点,它代表了与 Spark 集群的连接。通过 SparkContext,你可以创建 RDD(弹性分布式数据集)、累加器、广播变量等,还可以与外部数据源进行交互。Resilient Distributed Dataset 叫做弹性分布式数据集,是Spark中最基本的数据抽象,是分布式计算的实现载体,代表一个不可变,可分区,里面的元素并行计算的集合。
2025-05-13 14:42:19
289
原创 运行Spark程序-在Idea中
8.准备待统计的词频文件。在项目根目录下建立文件夹input,并穿件两个文本文件:word1.txt, word2.txt。作系统的Scala安装包。选择教材对应的Scala版本:2.13.14。的版本信息,说明安装成功。它的功能是wordcount的功能:从指定的文件夹中去读取文件,并做词频统计。6.新建Scala类。如果这里没有看到Scala类的选项,就去检查第2步。// 提取文本内容并执行 WordCount 操作。// 将所有分区的数据合并成一个分区。// 读取目录下的所有文本文件。
2025-05-13 14:36:08
802
原创 HDFS相关
小文件存储的寻址时间会超过读取时间,它违反了HDFS的设计目标。),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。数据自动保存多个副本(可以灵活指定副本个数),它通过增加副本的形式,提高容错性。HDFS中的文件在物理上是分块存储(Block),块的大小可以通过配置参数(dfs.blocksize)来规定,1. 不适合低延时数据访问,比如毫秒级的存储数据,是做不到的。文件规模:能够处理百万规模以上的文件数量。
2025-05-06 15:27:06
155
原创 rsync远程同步
rsync和scp区别是:rsync只对差异文件做更新,而scp是把所有文件都复制过去,所以它的效果更高一些。(4)$user@host:$pdir/$fname: 目的地用户@主机:目的地路径/名称。rsync主要用于备份和镜像。具有速度快、避免复制相同内容和支持符号链接的优点。,尽可能让拷贝的文件之间保持一致。要拷贝的文件路径/名称。
2025-05-06 15:09:04
108
原创 spark和Hadoop的区别
Spark 除了能处理批处理任务外,还广泛应用于机器学习、图计算、实时流计算、交互式查询等场景,如 Spark MLlib 用于机器学习,Spark GraphX 用于图计算,Spark Streaming 用于实时流数据处理。Spark 的体系结构相对简单,主要由 Spark Core、Spark SQL、Spark Streaming、MLlib、GraphX 等组件构成,这些组件共享相同的内存空间和计算引擎,可以方便地进行集成和协同工作。
2025-04-21 08:26:51
183
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人