自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据清洗-案例

代码说明:NullWritable就等价于null,context.write(value,NullWritable.get())就表示只有key,没有value。在之前的项目的基础之上,重写去写一个包,并创建两个类:WebLogMapper和WebLogDriver类。// 1. 获取一行数据,使用空格进行拆分,判断是否有8个字段。// 这条数据是有意义的,保留。// 5 设置输入和输出路径。// 4 设置最终输出类型。// 1 获取job信息。// 2 加载jar包。// 3 关联map。

2025-05-19 08:04:36 302

原创 RDD-自定义分区器案例(3)

override def numPartitions: Int = 2 // 两个分区,编号就是: 0, 1。Iterator(s"${count}件,$totalAmount")// 如果key在2001和2003之间,就返回 0。// 在分区完成之后的基础上,只保留key。// 创建一个类继承Partitioner。// 创建SparkContext。// 同时计算件数和总金额。// 使用自定义分区器。// 否则,返回 1。

2025-05-19 08:02:38 419

原创 sparkSQL读入csv文件写入mysql(4)

核心方法:dataFrame.write.mode("append").jdbc()。上面的代码运行完成之后,切换到finalshell中的mysql端,查看效果。// 创建properties对象,设置连接mysql的用户名和密码。四)Spark添加数据到mysql。// 插入一条数据到数据库。

2025-05-19 08:01:23 202

原创 spark yum配置

把yum想象成你自己开的一家商场,那么yum的源就是你的供货商。这个源已经失效了,就是你的默认供货商跑路了!如果是win11,它在Windows/system32/hosts 文件,如果是win10,它在C:\Windows\System32\drivers\etc\hosts。我们打开这个文件,并在最后一行的后边,添加三个新行,内容是:IP地址 主机名 eg:192.168.56.101 hadoop100(注:IP地址和主机名之间有一个空格)网络上的免费而稳定的源有很多,这里我们选择阿里云的源。

2025-05-19 08:00:00 320

原创 分区器和序列化

说明:这里的setNumReduceTasks的值最好与setPartitioner返回的分区器的个数一致。回顾我们的需求,我们在做词频统计的时候,把a-m开头的保存在一个文件中,n-z开头的保存在另一个文件中。下面我们来看一个例子:通过代码来定义一个类,并创建它的一个对象,把这个对象保存到文件中(序列化),然后再写代码读取这个文件并还原回来。这个泛型类的泛型是map方法输出的k2,v2的数据类型。// 2. 使用ObjectInputStream对象中的readObject方法,读取文件中的对象。

2025-05-19 07:59:46 329

原创 Spark;scp命令,rsync命令,ssh命令

伪分布式:也是在一台单机上运行,但用不同的 Java 进程模仿分布式运行中的各类节点,特点:Hadoop 启动的这些守护进程都在同一台机器上运行,是相互独立的 Java 进程。eg命令:scp -r /opt/module/jdk1.8.0_212/ root@hadoop102:/opt/module/jdk1.8.0_212/命令:rsync -av /opt/conf/1.txt root@roothadoop102:/opt/conf/$pdir/$fname :要拷贝的文件路径 / 名称。

2025-05-13 15:05:27 386

原创 Spark,hadoop 集群的常用命令

hadoop jar <JAR文件路径> <主类名> <输入路径> <输出路径>:提交一个 MapReduce 作业。hdfs dfs -rm <路径>:删除指定路径下的文件或目录,若要删除目录,需使用-r选项,如hdfs dfs -rm -r <目录路径>。put '<表名>', '<行键>', '<列族:列限定符>', '<值>':向指定表的指定行键插入数据。hdfs dfs -cp <源路径> <目标路径>:将文件或目录从源路径复制到目标路径。drop '<表名>':删除指定的表(需先禁用)。

2025-05-13 15:03:10 271

原创 Spark, MapReduce工作原理

该阶段编程模型中有一个 reduce 函数需要开发人员重写,reduce 函数的输入也是一个 <key, value> 对,reduce 函数的输出也是一个 < key,List<value>> 对。该阶段的编程模型中会有一个 map 函数需要开发人员重写,map 函数的输入是一个 < key,value > 对,map 函数的输出也是一个 < key,value > 对,key和value的类型需要开发人员指定。Shuffle:将 Map 输出的键值对按 Key 分组,发送到对应的 Reduce 节点。

2025-05-13 15:02:22 833

原创 Spark,RDD中的行动算子

返回值:该算子的返回类型为 Unit,即不返回任何有意义的值,它主要是为了执行副作用操作。格式:def reduce(func: (T, T) => T): T。格式:def foreach(f: T => Unit): Unit。返回值:返回一个单一的值,其类型与 RDD 中元素的类型相同。格式:def collect(): Array[T]count,聚合操作 eg:计算rdd中的元素之和。参数说明:该算子没有参数。

2025-05-13 15:00:08 173

原创 Spark,RDD中的转换算子

对具有相同键的所有值进行聚合操作 = 统计词频。对数字1-10进行过滤,过滤出偶数。对数字1-10进行乘除,*2。reduceByKey算子。filatMap算子。

2025-05-13 14:58:22 125

原创 Spark,在shell中运行RDD程序

/ 将元组的value按照key来分组,对所有的value执行聚合操作(相加)在根目录下可见out111文件,文件打开后可以看到,word2.txt文件内单词被拆分。在hdfs中/wcinput中创建一个文件:word2.txt在里面写几个单词。// 将单词转换为元组对象,key是单词,value是数字1。// 将单词进行切割,得到一个存储全部单词的RDD。// 收集RDD的数据并打印输出结果。// 将结果储存在out111中。// 读取文件,得到RDD。按住ctrl+D退出。

2025-05-13 14:56:13 254

原创 Spark,Idea中编写Spark程序 2

命令为:[root@hadoop100 sbin]# spark-submit --class WordCount_online --master yarn /opt/module/original-untitled-1.0-SNAPSHOT.jar /wcinput /output1。// 写一个spark程序,统计input目录下所有文本文件中单词的词频。// 将所有分区的数据合并成一个分区。// 配置 Spark 应用程序。// 读取目录下的所有文本文件。// 把结果保存在output下。

2025-05-13 14:54:25 717

原创 Spark,Idea中编写Spark程序 1

在项目根目录下建立文件夹input,并穿件两个文本文件:word1.txt, word2.txt。它的功能是wordcount的功能:从指定的文件夹中去读取文件,并做词频统计。IDEA中,默认是不支持编写Scala的,需要额外配置一个插件。添加完成之后,刷新Maven,它会帮助我们去下载依赖。// 提取文本内容并执行 WordCount 操作。如果这里没有看到Scala类的选项,就去检查第2步。-- 声明并引入共有的依赖-->// 将所有分区的数据合并成一个分区。// 读取目录下的所有文本文件。

2025-05-13 14:51:13 530

原创 Spark,所用几个网页地址

YARN的ResourceManager网址:http://hadoop101:8088。History Server网址:192.168.56.100:18080。HDFS的NameNode网址:http://hadoop100:9870。2. MapReduce:计算。1. HDFS:存储。3. YARN:调度。

2025-05-13 14:42:15 180

原创 Spark,集群搭建之Yarn模式

对应命令为:spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode cluster /opt/module/spark-standalone/examples/jars/spark-examples_2.12-3.1.1.jar 10。进入/opt/module/spark-yarn/sbin,运行: ./start-all.sh 和 ./start-history-server.sh。

2025-05-13 14:39:26 465

原创 Spark,配置历史服务

进入 /opt/module/spark-standalone/conf/spark-default.conf.temple 先把名称改成spark-default.conf,再补充两个设置。启动hadoop的hdfs服务(start-dfs.sh),并在根目录创建目录directory。(注:4、5两步在上一条博客中直接一起配置了,所以这里可自行跳过)命令是 ./start-history-server.sh。四、修改spark-env.sh文件。命令是 ./start-all.sh。

2025-05-13 14:37:57 213

原创 Spark,集群搭建-Standalone

在之前的学习中我们有了一个软件包 spark.3.1.2-bin-hadoop3.2.tgz (eg我的在 /opt/software目录下)把这个软件包解压到 /opt/module 下(也可以自己决定解压到哪里)。进入到hadoop100机器,切换目录到/opt/module/spark-standalone/sbin下,运行命令 ./start-all.sh。打开 /opt/module/spark-standalone/conf 中可看到修改文件内容前把 .template 后缀名都删掉再打开。

2025-05-13 14:36:07 637

原创 Spark,从0开始配置Spark的local模式

4.重命名,把解压后的文件夹改成spark-local。因为后续我们还会使用其他的配置方式,所以这里先重命名一次。① 打开etc/profile.d/my_env.sh文件中,补充设置spark的环境变量。2.通过finalshell连接虚拟机,并将文件上传安装文件到 /opt/software下。进入到spark-local,运行命令spark-submit命令。3.解压spark安装文件到/opt/module下。注:一旦任务结束,则这个界面就不可访问了。从0开始配置Spark的local模式。

2025-05-13 14:34:17 239

原创 Spark和hadoop的区别与联系

实时数据处理(如 Spark Streaming)、交互式查询(如 Spark SQL)、机器学习(MLlib)、图计算(GraphX)等多场景。组合使用:实际场景中常采用“Hadoop存储数据 + Spark处理数据”的架构,充分利用两者的优势,例如在HDFS上存储原始数据,通过Spark进行实时分析和复杂计算。总之,Hadoop是大数据领域的“地基”,而Spark是构建在其上的“多功能工具”,两者共同推动了大数据技术的发展和应用。二、Spark和Hadoop的区别。1. 同属大数据生态体系。

2025-05-13 14:32:42 338

原创 Spark,数据压缩

四、打开我们之前的项目(是下面这个哦)在下面位置添加下下面代码//开启reduce端压缩然后在第七点上面添加//设置reduceTask的数量//产生结果的时候,会用3个文件来保存// 设置自定义分区器//设置reduce的个数。

2025-05-13 14:31:43 323

原创 Spark,序列化反序列化

/ 1. 创建一个ObjectInputStream对象,构造方法中传入一个InputStream对象。// 2. 使用ObjectInputStream对象中的readObject方法,读取文件中的对象。序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储到磁盘(持久化)和网络传输。反序列化就是将收到字节序列(或其他数据传输协议)或者是磁盘的持久化数据,转换成内存中的对象。常用的Java的数据类型与Hadoop的序列化的类型对比。// 反序列化:将字节序列转换为内存中的对象。

2025-05-12 11:16:31 1027

原创 Spark,maven打包

流式计算的输入数据是动态的,会一条一条的过来,是动态产生的,而MapReduce的输入数据集是静态的,不能动态变化。注:我们集群上安装的java环境是1.8的,那么我们生成的代码也必须是这个版本的,否则,就会无法运行。注:我们集群上安装的java环境是1.8的,那么我们生成的代码也必须是这个版本的,否则,就会无法运行。我们集群上安装的java环境是1.8的,那么我们生成的代码也必须是这个版本的,否则,就会无法运行。当你的计算资源不能得到满足的时候,你可以通过简单的增加机器来扩展它的计算能力。

2025-05-12 11:15:10 406

原创 Standalone

进入到hadoop100机器,切换目录到/opt/module/spark-standalone/sbin下,运行命令 ./start-all.sh。进入/opt/module/把解压的内容重命名一下,mv spark-3.1.1-bin-hadoop3.2/ spark-standalone。注意,这里不要省略./,它表示的是当前目录下的start-all命令,如果省略了./,它就会先去环境变量PATH中指定的目录来找这个命令。11.查看启动效果。(linux,ip设置,能ping 百度),免密互联。

2025-05-12 11:04:43 332

原创 spark

2025-05-12 11:02:50 119

原创 如何在idea中写spark程序

2025-05-06 15:10:08 126

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

2025-05-06 15:06:12 92

原创 从0开始配置spark-local模式

这里使用单机模式快运行第一个Spark程序,让大家有个基本的印象。在安装Spark时,它就提供了一些示例程序,我们可以直接来调用。进入到spark-local,运行命令spark-submit命令。mv是linux的命令,这里的 \ 是换行输入的意思,整体的代码就只有一句,只不过太长了,我们把它拆开成几个部分来输入,其中\ 的意思就是这里写不下,写在下一行。接下来的操作,我们把它上传到集群中的节点,并解压运行。1.打开etc/profile.d/my_env.sh文件中,补充设置spark的环境变量。

2025-05-06 15:03:14 322

原创 spark集群配置

刚才我们是在hadoop100这台机器上进行了正确的设置,但是,其他的2台机器也要做相同的配置。这里一共有5个文件要配置:分别是core-site.xml,hdfs-site.xml,yarn-site.xml,配置/opt/module/hadoop-3.1.3/etc/hadoop。配置/opt/module/hadoop-3.1.3/etc/hadoop。-- 指定ResourceManager的地址-->-- 指定hadoop数据的存储目录 -->-- 指定NameNode的地址 -->

2025-05-06 14:35:48 890 1

原创 hadoop与spark的区别和联系

Hadoop 的 YARN 是资源管理系统,负责集群资源的管理和调度。对于一些复杂的大数据处理任务,可先用 Hadoop 的 MapReduce 进行初步的数据清洗和预处理,将处理后的数据存储在 HDFS 中,再利用 Spark 进行后续的复杂分析和计算,如机器学习模型训练、实时数据分析等。Hadoop:主要采用 MapReduce 编程模型,该模型将数据处理分为 Map 和 Reduce 两个阶段,编程模型相对简单,但对于复杂的迭代计算任务,需要多次编写 MapReduce 程序,开发效率较低。

2025-04-21 08:34:09 694

原创 虚拟机IP配置

虚拟机IP配置

2025-03-03 19:24:38 138

原创 vi的基本使用

vi是 Linux 和 Unix 系统中经典的文本编辑器,功能强大,很多系统默认安装。以下为你介绍vi。

2025-02-24 21:46:17 479

原创 Linux基本命令

命令查看文件和目录的权限信息,权限信息由 10 个字符组成,如。

2025-02-24 21:44:00 924

原创 如何安装vm和centos

可以根据需要调整虚拟机的硬件配置,如内存、处理器核心数、网络连接方式等,设置完成后点击 “关闭”。

2025-02-24 21:39:13 678

原创 scala

2024-12-30 08:07:37 126

原创 scala

2024-12-30 08:05:49 92

原创 scala

2024-12-30 08:04:30 120

原创 scala

2024-12-30 08:02:40 101

原创 scala

2024-12-30 08:01:23 94

原创 Scala

2024-12-16 10:55:46 122

原创 Scala

2024-12-16 10:50:19 134

空空如也

空空如也

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

TA关注的人

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