自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 收藏
  • 关注

原创 之前网站进得去 为什么这次进不去?

每次进网站前都要输入以下命令。

2025-05-13 10:39:29 117

原创 修改配置文件

这里一共有5个文件要配置:分别是core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml,workers。接下来配置第二个文件,/opt/module/hadoop-3.1.3/etc/hadoop/hdfs-site.xml。-- 指定ResourceManager的地址-->-- 指定MapReduce程序运行在Yarn上 -->-- 指定hadoop数据的存储目录 -->-- 指定NameNode的地址 -->-- 环境变量继承 -->

2025-05-13 10:37:50 800

原创 自定义分区器

(1)它用来将map方法生成的键值对,按照指定的规则来进行分区。这个泛型类的泛型是map方法输出的k2,v2的数据类型。// 分配到Reducer 0。// 分配到Reducer 1。(3)每个map生成的键值对,都会调用这个方法来得到它对应的分区号。// 根据单词的首字母分配分区。(2)它返回的分区号是从0开始,且是连续的。

2025-05-13 10:33:32 166

原创 数据清洗-日志

在之前的项目的基础之上,重写去写一个包,并创建两个类:WebLogMapper和WebLogDriver类。去除日志中字段个数小于等于11的日志。(1)编写WebLogMapper类。(2)编写WebLogDriver类。

2025-05-13 10:32:08 190

原创 打包spark代码在集群中运行

示例:hdfs dfs -put target/spark-example-1.0-SNAPSHOT.jar /user/spark/apps/打包后的文件位于 target/spark-example-1.0-SNAPSHOT.jar。--executor-cores 每个 Executor 的 CPU 核心数。--executor-memory 每个 Executor 的内存大小。--num-executors 分配的 Executor 数量。确保 Maven 已安装并配置。

2025-05-13 10:28:19 99

原创 HDFS背景

其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。HDFS中的文件在物理上是分块存储(Block),块的大小可以通过配置参数(dfs.blocksize)来规定,默认大小是128M。(1)文件上传 HDFS 的时候,Client 将文件切分成一个一个的 Block,然后进行上传;

2025-05-13 10:25:00 586

原创 Hadoop 和 Spark 生态系统中的核心组件

作用:实时处理流式数据(如 Kafka、Flume),支持微批处理(Micro-Batch)和持续处理(Continuous Processing)。- 作用:提供内存计算框架,支持分布式数据处理(RDD/Dataset/DataFrame),支持多种编程语言(Scala/Java/Python)。- 命令/工具: spark-submit 提交作业, spark-shell 交互式环境。- 命令/工具: hdfs 命令(如 hdfs dfs -put 等)。

2025-05-13 10:18:04 204

原创 MapReduce-WordCount案例实操

此时要注意,我们的程序并没有使用集群中的资源,在yarn中看不到运行的任务,我们也没有把结果保存在hdfs中。请注意Mapper的来源,它是mapreduce.Mapper,而不是mapred.Mapper。重写reduce方法(keyIn, Iterable<ValueIn>,Content<KeyOut, Key>)它的核心代码有7个步骤,属于固定写法。LongWritable, Text是hadoop的数据类型。准备maven工程,具体要求和之前的一致。每个类的具体内容如下。1.新建一个空白项目。

2025-05-13 10:11:00 206

原创 HDFS文件上传

接下来,我们向/maven下上传一个文件。要用到的api是put (或者copyFormLocalFile)。上传结束之后,回到hdfs的UI界面去检查是否成功。

2025-05-13 10:03:14 99

原创 【Spark】使用Spark集群搭建-Standalone

调整 SPARK_WORKER_MEMORY 和 spark.executor.memory 参数。Master:7077(集群通信)、8080(Web UI)刷新 Master Web UI,应看到两个 Worker 节点已注册。检查防火墙、主机名解析和 spark-env.sh 配置。确保端口开放且 Master/Worker 服务正常运行。下载完成后,将文件解压到目标目录。,选择合适的版本进行下载。,应看到 Spark Master 界面。验证 Master 启动成功:访问。所有节点安装相同版本的。

2025-05-12 19:54:29 889

原创 Spark处理过程-转换算子和行动算子

行动算子是触发 Spark 计算的“触发点”,因为 Spark 的 RDD 是懒惰计算的,只有在执行行动算子时,才会真正开始计算。对 RDD 中的每个元素应用给定的函数 f,将每个元素转换为另一个元素,最终返回一个新的 RDD。筛选出 RDD 中满足函数 f 条件(即 f 函数返回 true)的元素,返回一个新的 RDD,新 RDD 中的元素类型与原 RDD 相同。对 RDD 中的每个元素应用函数 f,函数 f 返回一个可遍历的集合,然后将这些集合中的元素扁平化合并成一个新的 RDD。

2025-05-12 19:37:02 1056

原创 通过jps命令,可以看到如下进程名,请解释一下它们各自是哪个命令产生的,有什么作用?

【代码】通过jps命令,可以看到如下进程名,请解释一下它们各自是哪个命令产生的,有什么作用?

2025-04-29 08:39:26 176

原创 如何在idea中写spark程序

目录下创建一个新的类或对象来编写 Spark 代码。通过以上步骤,你就可以在 IntelliJ IDEA 中编写、运行和提交 Spark 程序了。作为项目构建工具(这里以 Maven 为例),确保 JDK 版本正确,然后点击。在上述配置中,使用了 Spark 3.4.1 版本,你可以根据实际需求调整版本号。文件中添加 Spark 相关依赖。打开 IntelliJ IDEA,选择。目录下生成一个 JAR 文件。在弹出的窗口中,选择。在 IDEA 的右侧。

2025-04-28 19:51:28 466

原创 如何搭建spark yarn模式的集群

按照以上步骤,你就可以成功搭建一个 Spark YARN 模式的集群。在实际操作过程中,请根据你的具体环境和需求进行相应的调整。在 Spark 安装目录的。分发到集群中的所有节点。

2025-04-28 19:48:09 610

原创 搭建spark-local模式

在安装Spark时,它就提供了一些示例程序,我们可以直接来调用。进入到spark-local,运行命令spark-submit命令。这里的 \ 是换行输入的意思,整体的代码就只有一句,只不过太长了,我们把它拆开成几个部分来输入,其中\ 的意思就是这里写不下,写在下一行。接下来的操作,我们把它上传到集群中的节点,并解压运行。1.打开etc/profile.d/my_env.sh文件中,补充设置spark的环境变量。的值,具体运行效果如下。请注意,它并不会产生新的文件,而是直接在控制台输出结果。

2025-04-22 09:40:07 429

原创 Spark和Hadoop之间的对比和联系

Hadoop:Hadoop MapReduce 基于磁盘进行数据处理,数据在 Map 和 Reduce 阶段会频繁地写入磁盘和读取磁盘,这使得数据处理速度相对较慢,尤其是在处理迭代式算法和交互式查询时,性能会受到较大影响。Spark:Spark 基于内存进行计算,能将数据缓存在内存中,避免了频繁的磁盘 I/O。这使得 Spark 在处理大规模数据的迭代计算、交互式查询等场景时,速度比 Hadoop 快很多倍。例如,在机器学习和图计算等需要多次迭代的算法中,Spark 可以显著减少计算时间。

2025-04-22 08:23:08 332

原创 如何配置环境变量HADOOP_HOMEM、AVEN_HOME?不配置会怎么样

• 无法直接使用 Hadoop 命令:不配置 HADOOP_HOME 及其 PATH,你就不能在命令行直接使用 hadoop、hdfs 等命令,每次使用都得指定完整的命令路径,这会让操作变得麻烦。• 无法直接使用 Maven 命令:不配置 MAVEN_HOME 及其 PATH,你就不能在命令行直接使用 mvn 命令,同样每次使用都得指定完整的命令路径。• Hadoop 相关脚本无法正常运行:Hadoop 的一些启动脚本依赖于 HADOOP_HOME 环境变量,不配置的话这些脚本可能无法正常工作。

2025-04-15 08:14:55 404

原创 流量统计实例

编写流量统计的Bean对象。编写Driver驱动类。编写Reducer类。

2025-04-09 16:00:36 99

原创 序列化 反序列化实例

测试类TestStudent。学生类Student。

2025-04-08 11:22:57 125

原创 数据清洗

代码说明:NullWritable就等价于null,context.write(value,NullWritable.get())就表示只有key,没有value。reduceTask为0,表示没有reduce阶段,程序会根据Map函数的结果把内容输出。map阶段:按行读入内容,对内容进行检查,如果字段的个数少于等于11,就删除这条日志(不保留)<偏移量,第一行的内容> → <通过刷选之后的第一行的内容,null>1.编写WebLogMapper类。编写WebLogDriver类。

2025-04-07 23:25:56 232

原创 mapreduce的工作原理

输入:Map 阶段接收输入数据,通常是键值对(key-value pairs)。处理:Map 函数对输入数据进行处理,生成中间结果。输出:Map 函数的输出是新的键值对,这些中间结果将传递给 Reduce 阶段。: 输入:Reduce 阶段接收 Shuffle 阶段处理后的数据。处理:Reduce 函数对相同键的值进行合并计算,生成最终结果。: 分区:将 Map 阶段的输出数据进行分区,每个分区对应一个 Reduce 任务。合并:将相同键的值合并在一起,准备传递给 Reduce 阶段^2^。

2025-03-31 19:55:25 249

原创 Hadoop集群的常用命令

hadoop fs -put <local> <hdfs>: 从本地复制文件到HDFS。- hadoop fs -get <hdfs> <local>: 从HDFS复制文件到本地。- hadoop fs -du -h <path>: 显示目录/文件大小。- hadoop fs -rm -r <path>: 递归删除目录。- hadoop fs -cp <src> <dst>: 复制文件。- hadoop fs -mv <src> <dst>: 移动文件。- start-yarn.sh: 启动YARN。

2025-03-31 19:52:32 200

原创 如何调整yarn.nodemanager.vmem-pmem-ratio参数?

找到 yarn-site.xml 文件,该文件通常位于 Hadoop 配置目录中,例如 /etc/hadoop/conf 或 /opt/module/hadoop-3.1.3/etc/hadoop。监控内存使用:调整参数后,建议通过 YARN 的资源管理器界面(如 http://<ResourceManager-IP>:8088)监控作业的内存使用情况,确保调整后的配置能够满足需求。节点差异化配置:如果集群中的节点硬件配置差异较大,可以根据不同节点的实际情况分别调整 yarn-site.xml 文件。

2025-03-25 08:21:50 412

原创 hadoop集群配置-scp拓展使用

在hadoop102上,将hadoop101中/opt/module/hadoop-3.1.3目录拷贝到hadoop102上。中/opt/module目录下所有目录拷贝到hadoop10。上操作,将hadoop10。分析:使用scp进行拉取。分析:使用scp进行搭桥。登录hadoop101。

2025-03-17 13:19:56 391

原创 hadoop集群配置-scp命令

如果要拷贝的是文件夹,就把文件夹下的内容都拷贝。这台机器中已经安装了jdk和hadoop。都已经创建好了/opt/module。目的地用户@主机:目的地路径/名称。/opt/software两个目录。要拷贝的文件路径/名称。2. 进入到hadoop10。

2025-03-17 13:18:01 161

原创 在虚拟机上安装Hadoop

请注意,我们已经将hadoo解压到了/opt/module/hadoop-3.1.3目录下。先用finalshell将hadoop- 3.1.3. tar.gz导入到opt目录下面的software文件夹下面,然后解压,最后配置环境变量。使用hadoop version 检查hadoop是否安装成功。1.使用finalshell上传。这里直接鼠标拖动操作即可。这个命令的功能与解压java类似,这里不再重复解释了。使用source命令让配置文件生效。保存并退出,按下:wq并回车。(3)让修改后的文件生效。

2025-03-06 17:23:01 287

原创 在虚拟机上安装java

用FinalShell传输工具将JDK导入到opt目录下面的software文件夹下面(opt/software文 件夹是我们自己创建的)

2025-03-06 17:12:07 571

原创 虚拟机设置IP

linux中,ip地址是写在配置文件(/etc/sysconfig/network-scripts/ifcfg-ens33)中,这里使用 vi 编辑器去修改即可!如果不进行设置,每次启动机器时都可能是随机的IP,不方便我们后续操作。注意:这里的第三个部分的10并不是固定的,我们自己可以约定,但是约定之后就要固定下来。让所有的vm配置的虚拟机使用NAT时,它们的网段都是一致的。配置Windows本地虚拟网卡,让本机也可以访问虚拟机。具体设置为:进入虚拟机,修改对应的IP。(3)设置虚拟机的IP。

2025-02-26 19:04:28 646

原创 vi编辑器的使用

1.如果这个文件不存在,此时就是新建文件,编辑器左下角会提示:new file。提示:在命令模式下按下shift + zz,可以实现快速保存退出。4.在命令模式下,按下G键(大写g)可以跳到文件的最后一行。5.在命令模式下,按下gg键(两个小g)跳到文件的第一行。2.如果文件已存在,此时就打开这个文件,进入命令模式。2. nyy(n+两个小y)复制当前行往下n行内容。vi编辑器三种模式:命令模式,输入模式,底线模式。2.ndd(n+两个小d)用来删除当前行往下n行。1. p(小写p)在当前行的下一行粘贴。

2025-02-25 13:40:57 196

原创 Linux常用命令

rm -rf /* 将根目录以下所有递归逐一删除(俗称删库跑路),特别小心使用!rm -rf:删除目录无需用户确认。例:rm -rf ./bbb 将目录及以下递归逐一删除。例:rm file.txt。它会给出一个提示,让用户确认之后再删除。mkdir -p:创建目录,如果父级目录不存在,就建立一个父级目录。rm -f:删除文件无需用户确认。例:rm -f file.txt。touch :创建一个空文件。rm -r:删除目录。例:rm -r dir(谨慎使用)。mkdir:创建目录。

2025-02-19 16:00:56 139

原创 vmware虚拟机安装教程

​准备工作下载 VMware 软件:访问VMware 官方网站,下载适合自己操作系统的 VMware Workstation Pro 安装包。准备操作系统镜像文件:根据想要在虚拟机中安装的操作系统,提前下载好相应的 ISO 镜像文件。比如要安装 Windows 10,就需要下载 Windows 10 的 ISO 镜像文件。安装 VMware 软件​

2025-02-18 12:50:26 425

原创 泛型

【代码】泛型。

2024-12-11 17:03:36 522

原创 隐式转换的案例

【代码】隐式转换的案例。

2024-12-11 17:02:08 138

原创 正则表达式的应用场景

【代码】正则表达式的应用场景。

2024-12-11 17:01:48 126

原创 函数的隐式参数 + 隐式类 + 隐式对象

【代码】函数的隐式参数 + 隐式类 + 隐式对象。

2024-12-11 16:41:50 129

原创 匹配for表达式

【代码】匹配for表达式。

2024-12-04 15:34:57 414

原创 模式匹配

【代码】模式匹配。

2024-12-02 17:08:33 94

原创 打印1-100内的偶数(循环守卫)

【代码】打印1-100内的偶数(循环守卫)

2024-11-27 16:53:41 136

原创 求斐波那契数列的第n项

【代码】求斐波那契数列的第n项。

2024-11-27 16:52:43 155

原创 把函数作为返回值

【代码】把函数作为返回值。

2024-11-27 16:52:23 111

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除