自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spark,HDFS客户端操作

是 Hadoop 用于分布式计算的编程模型。

2025-05-19 08:05:14 776

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

MapReduce 常用命令。

2025-05-18 22:42:56 213

原创 Spark,HDFS客户端操作

找到资料包路径下的Windows依赖文件夹,拷贝hadoop-3.1.0到非中文路径(比如d:\hadoop-3.1.0)在下方系统变量中新建HADOOP_HOME环境变量,值就是保存hadoop的目录。打开电脑终端验证Hadoop环境变量是否正常。配置Path环境变量。Maven的配置同上。

2025-05-18 22:38:56 453

原创 Spark,HDFS概述

把本地的文件上传到HDFS,并删除本地的文件。(1)文件上传 HDFS 的时候,Client 将文件切分成一个一个的 Block,然后进行上传;使用-rm -r命令, 它用来删除目录及目录里面内容,它的格式是: -rm -r 要删除的文件夹。使用-mkdir命令。使用-mv命令,它的格式是: hadoop fs -mv 文件起点 终点。hadoop fs -get (服务器上的文件路径 本地文件路径)表示从HDFS的一个路径拷贝到HDFS的另一个路径。2.如果要保留本地的文件,可以使用 -put 命令。

2025-05-18 22:37:37 717

原创 Spark,配置hadoop集群2

启动命令:[root@hadoop100 sbin]# myhadoop start。关闭命令:[root@hadoop100 sbin]# myhadoop stop。分配完成后可在其他设备上关闭myhadoop。像下图这样查看显示绿色即代表成功!1.建立新文件,编写脚本程序。保存后退出,然后赋予脚本执行权限。

2025-05-18 22:34:21 268

原创 Spark,配置hadoop集群1

和之前的配置一样,我们需要把这个更新之后的yarn-site.xml文件同步到其他的机器。在hadoop的安装目录下,打开mapred-site.xml,并在该文件里面增加如下两条配置。进入到我们安装yarn的主机,通过命令来关闭掉yarn和historyServer,然后再重启。同样也是在hadoop100内找到yarn-site.xml文件,我们添加如下的配置。请注意:你在配置的时候指定哪个节点是历史服务器,就在哪里启动,请不要搞错了。然后在点击logs,就可以查看运行日志的详情了。

2025-05-18 22:31:02 710

原创 Spark,上传文件

在NameNode上上传<128M文件时可直接上传当文件>128M时会将这个大文件拆分为多个小文件上传。在FinalShell上用命令上传文件就是。发布于2025-03-31著作权归作者所有。先使用命令打开HDFS的NameNode。上传的文件下载下来…上传小文件(小于128M)上传大文件(大于128M)刷新yarn即可查看。

2025-05-18 22:29:34 395

原创 Spark;修改配置文件,启动集群,查看运行结果,纠错

1246人阅读。

2025-05-18 22:28:48 784

原创 Spark,hadoop的组成

(1)NameNode(nn):存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间,副本数,文件权限),以及每个文件的块列表和块所在的DataNode等。每个框都是一个进程,可能都运行在一台主机上,但是,属于不同的集群。在Hadoop3.X中,hadoop一共有三个组成部分:MapReduce,Yarn,HDFS。对普通用户来说, Hadoop就是一个东西,一个整体,它能给我们提供无限的磁盘用来。(2)DataNode(dn):在本地文件系统存储文件块数据,以及块数据的校验和。

2025-05-18 22:27:03 301

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

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/eg:目标:hadoop100通过ssh访问hadoop101,hadoop102时不需要密码,其他两台设备也类似。2.在hadoop100中,把自己的公钥传递给hadoop101,hadoop102。(2)在该文件中编写如下代码。

2025-05-13 16:03:58 453

原创 Spark,Linux yum配置

把yum想象成你自己开的一家商场,那么yum的源就是你的供货商。如果是win11,它在Windows/system32/hosts 文件,如果是win10,它在C:\Windows\System32\drivers\etc\hosts。我们打开这个文件,并在最后一行的后边,添加三个新行,内容是:IP地址 主机名 eg:192.168.56.101 hadoop100(注:IP地址和主机名之间有一个空格)先要确保虚拟机的网络是通畅的。具体的操作是打开/etc/hostname这个文件,并修改其中的内容。

2025-05-13 15:57:15 341

原创 Spark,Linux配置

这里要注意一下:VMware net work Adpater VMnet8是安装了Vm这个软件之后会自动产生的。注意:这里的第三个部分的10并不是固定的,我们自己可以约定,但是约定之后就要固定下来。重启的命令是reboot,检查是否能Ping通外网。(2)配置IP地址和主机名的映射。命令是:vi /etc/hosts。让所有的VM配置的虚拟机使用NAT时,它们的网段都是一致的。修改完成之后,esc退出编辑模式, :wq 保存退出。(3) 最后,关闭服务器的防火墙。具体设置为:进入虚拟机,修改对应的IP。

2025-05-13 15:55:02 539

原创 安装VM和Centos

设置完密码后点击完成。后为此界面 等待安装。

2025-05-13 15:52:46 182

原创 Spark,Linux克隆

查看虚拟机ip命令:ip addr克隆出多台虚拟机。

2025-03-04 09:10:09 450

原创 Spark,Linux yum配置

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

2025-03-04 09:07:10 608

原创 Spark,vi的基本使用

1.如果这个文件不存在,此时就是新建文件,编辑器的左下角会提示:new file。d(一个小d)加←删除左侧一个单词,d(一个小d)加→删除右侧一个单词。vi编辑器有三种工作模式,分别为:命令模式,输入模式,底线模式。2.如果文件已存在,此时就打开这个文件,进入命令模式。底线命令模式:以:开始,通常用于文件的保存和退出。2.nyy(n+两个小y)复制当前行往下n行内容。2.ndd(n+两个小d)用来删除当前行往下n行。nyy(n+两个小y)复制当前行往下n行内容。1.yy(两个 y)复制光标所在行的内容。

2025-02-24 20:39:00 291

原创 Spark ,虚拟机(Linux)基本命令(2)

cp 命令,复制格式:cp 源文件 目标文件cp -r 命令 复制目录格式:cp -r 源文件 目标文件夹mv 命令,重命名和移动格式:mv 源文件 目标文件说明:若源文件和目标文件在同一个目录下,就是重命名,否则就是移动。重命名操作:mv file.txt newfile.txt移动操作:mv file.txt newdir/file.txt。

2025-02-24 20:37:57 415

原创 Spark ,虚拟机(Linux)基本命令(1)

波浪线,当前用户的home目录,比如root用户home目录是/root。rm -rf ./bbb 将目录及以下所有递归逐一删除,无需用户确认。相对路径:当前相对当前工作目录开始的路径,会随着当前路径变化而变化。rm -rf /* 将根目录及以下所有递归逐一删除,无需用户确认。绝对路径:不管工作目录在哪绝对路径都是从/根目录开始,唯一不重复。mkdir -p:创建目录,如果父级目录不存在,就建立一个新目录。ll -a 命令,显示当前的目录下的文件,包括隐藏文件。ll 命令,用来显示当前的目录下的文件。

2025-02-24 20:31:21 152

原创 Spark(1)

特点:提高处理能力:通过将任务分散到多个节点上并行计算,能够大大提高数据处理的速度和效率,从而可以在短时间内处理海量数据,满足大数据时代对数据处理的实时性和高效性要求。1.无法处理大规模数据:随着业务的发展和数据量的增长,单机系统很快就会遇到存储和处理能力的瓶颈,无法应对海量数据的存储和分析需求。3.应用场景简单:主要用于个人办公、简单的游戏娱乐或小型企业的基本业务处理,如文字处理、单机游戏、简单的库存管理等。例如早期的个人电脑,通常只有几百兆的内存和几 GB 的硬盘空间。1.硬件资源有限:单机系统的。

2025-02-24 19:50:38 138

原创 虚拟机的常见指令

‌磁盘管理‌:使用df -h命令查看磁盘剩余空间,使用du -h [目录]命令查看目录下的文件大小,参数-h表示以人性化的方式显示文件大小‌。‌列出目录内容‌:ls命令用于列出指定目录中的文件和子目录,可以使用不同的参数来显示隐藏文件、长列表格式、递归列出子目录等‌。‌查看进程状态‌:ps命令用于查看进程的状态,参数a显示所有进程,u显示详细状态,x显示没有控制终端的进程‌。‌创建链接‌:ln命令用于创建文件的硬链接或符号链接,硬链接保持文件物理位置不变,符号链接可以跨文件系统‌。

2025-02-24 19:08:53 326

原创 大数据笔记

Is -I*con* 列出当前目录下名称中有“con"文件或目录的详细信息。Is -a 列出包括以“.”开始的隐藏文件在内的所有文件。cd /etc/sysconfig/ 切换到/etc/sysconfig目录。■ -R:显示出目录下以及其所有子目录的文件名(包括了隐藏文件)■ -A:显示除隐藏文件“.”和“..”以外的所有文件列表;■ -d:仅显示目录名,而不显示目录下的内容列表。■ -l:以长格式显示目录下的内容列表。

2025-02-24 19:05:22 204

原创 scala中的函数变参

在Scala编程中,函数变参(也称为可变长度参数)允许你传递任意数量的参数给一个函数。Scala通过在参数类型后面加一个星号(*)来表示一个参数是可变的。

2025-01-02 00:50:53 137

原创 递归调用练习

在这个例子中,factorial 函数在 n 等于 0 时返回 1(基本情况),否则返回 n 乘以 factorial(n - 1)(递归情况)。else n * factorial(n - 1) // 递归情况。println(result) // 输出 120。if (n == 0) 1 // 基本情况。

2025-01-02 00:49:00 156

原创 scala中的函数递归调用

Scala中的函数递归调用是指一个函数在其定义中直接或间接地调用自身。递归函数通常用于解决可以分解为更小相似问题的问题,直到达到一个基本情况(也称为停止条件或基本情况)。:这是函数调用自身的情况,通常涉及对输入参数进行某种变换,并继续递归调用。:这是递归停止的条件,函数在此情况下不再调用自身,而是直接返回一个值。

2025-01-02 00:47:24 151

原创 scala中的函数定义和调用

使用def关键字定义函数,后跟函数名、参数列表及函数体。参数列表中的每个参数都需要指定类型,函数体可以包含任意表达式或代码块。如果函数没有显式指定返回类型,编译器会根据函数体中的最后一个表达式自动推断返回类型。函数调用通过函数名后跟一对圆括号实现,在圆括号中传递参数。参数可以是任何有效的Scala数据类型,包括其他函数或高阶函数的返回值。

2025-01-02 00:45:41 268

原创 scala中的面向对象继承

特质(Trait) :Scala中的特质类似于其他语言中的接口或抽象类,可以包含抽象方法和不完整的实现。特质可以继承其他特质或类,并且可以被多个类混合使用,从而实现代码复用和多重继承的效果,同时避免了Java中的多重继承问题。final :在Scala中,final关键字用于声明不可被继承的类、方法或字段。同样,final的字段和方法在继承体系中也是不可被覆盖的。这在子类覆盖父类方法时特别有用,可以显式调用父类的方法,而无需重新实现它们。子类可以继承父类的字段和方法,并且可以添加自己特有的字段和方法。

2025-01-02 00:42:57 197

原创 scala中的面向对象匿名类

在Scala中,匿名类是指没有显式名称的类,通常用于创建一次性使用的对象或实现特定的接口或抽象类。闭包和Lambda表达式 :匿名类经常与闭包和Lambda表达式一起使用,以实现简洁的代码。printMessage(funnyAnimal) // 输出: ahahahahahaah。实现接口或抽象类 :匿名类可以用来实现一个接口或继承一个抽象类,并覆盖其方法。println(doubled) // 输出: 2 4 6 8 10。4. **创建单例对象**:有时候,可以使用匿名类来创建单例对象。

2025-01-02 00:38:55 252

原创 scala中的面向对象抽象类

在Scala中,抽象类(Abstract Class)是一种不能被实例化的类,它主要用来作为其他类的基类,提供一些共享的方法和属性。抽象类可以包含抽象方法(没有方法体的方法)和具体方法,以及抽象属性(没有初始化的属性)和具体属性。抽象类可以包含抽象属性和具体属性。抽象属性使用val关键字定义且没有初始值,具体属性可以使用var或val关键字定义。抽象方法使用def关键字定义但没有方法体,具体方法包含方法体。子类必须实现抽象类中的所有抽象方法和抽象属性,否则子类也需要声明为抽象类。// 实现抽象属性和方法。

2025-01-02 00:32:48 167

原创 scala中的内部类

Scala内部类是 从属于外部类对象 的类。在Scala中,内部类不像Java内部类那样从属于外部类本身,而是从属于外部类的实例(对象)。这意味着Scala内部类可以访问外部类的实例成员,包括私有成员,而不需要通过外部类名称作为前缀。这种设计使得Scala内部类在编程时更加灵活和强大。

2025-01-02 00:28:16 130

原创 scala中的匹配函数match

Scala中的match表达式是一种强大的模式匹配机制,它允许你根据不同的条件执行不同的代码块。match表达式类似于其他语言中的switch语句,但它的功能更为强大和灵活。值匹配 :match可以用于匹配各种类型的值,包括基本类型和对象类型。你可以为每个可能的值定义一个case分支。} // 输出: One。

2025-01-02 00:24:53 157

原创 Scala中的List(链表)

但是可以使用:+和:::操作符创建一个新的列表,其中包含添加或移除的元素。可以使用map方法对列表中的每个元素进行映射操作,返回一个新的列表。可以使用groupBy方法根据某个属性对列表进行分组,然后使用mapValues方法对每个分组进行聚合操作。可以使用::操作符将元素添加到列表中,或者使用List()构造函数创建一个空列表。可以使用sorted方法对列表进行排序,使用reverse方法反转列表。可以使用apply方法或()操作符访问列表中的元素。可以使用foreach方法遍历列表中的每个元素。

2024-12-30 08:37:11 249

原创 scala中的集合Map

Scala中的map是一种高阶函数,它接受一个函数作为参数,并将该函数应用于集合(如List、Set、Map等)的每个元素,从而生成一个新的集合。map函数不会改变原始集合,而是返回一个新的集合。除了基本类型和字符串,map函数还可以应用于更复杂的集合类型,如Map。注意,在上述示例中,我们使用了_作为占位符,表示map函数中的每个元素都会被传递给提供的函数。

2024-12-30 08:24:35 174

转载 集合Set

Set集合特点:唯一(元素不相同) 无序\n可变的Set 可进行添加删除 不可变Set 不能进行修改\n默认时Set是不可变\n查询元素是否存在 contains\n差集 diff 交集 intersect 并集union。

2024-12-18 21:28:35 57

转载 迭代器练习

2024-12-18 21:21:03 41

原创 迭代器zip

在这个例子中,我们创建了两个迭代器iterator1和iterator2。然后,我们使用zip方法将它们组合成一个新迭代器zippedIterator。最后,我们遍历zippedIterator并打印每个元组。在Scala中,zip方法用于将两个集合组合成一个元组序列。每个元组包含来自两个集合的对应元素。这在迭代器中同样适用。请注意,如果两个迭代器的长度不同,zip方法将只组合它们共有的元素。在这种情况下,较长的迭代器中剩余的元素将被忽略。

2024-12-18 21:16:05 243

原创 迭代器toList

在Scala中,迭代器(Iterator)是一种特殊的集合类型,它允许你按需访问集合中的元素,而不需要一次性加载整个集合。toList方法可以将迭代器转换为列表(List),这样你就可以更方便地操作集合中的元素。需要注意的是,toList方法会消耗迭代器中的所有元素,因此在调用toList之后,迭代器将不再可用。如果你需要在转换之后继续使用迭代器,请确保在使用toList之前保存迭代器的引用。在这个示例中,我们首先创建了一个包含5个整数的迭代器。然后,我们使用toList方法将迭代器转换为列表。

2024-12-18 21:13:32 281

原创 scala迭代器drop take

在Scala中,drop和take是Iterator对象的方法,它们用于从迭代器中提取元素。这两个方法都返回一个新的迭代器,而不会修改原始迭代器。注意:drop和take方法都不会修改原始迭代器,而是返回一个新的迭代器。这意味着原始迭代器的状态不会改变,你可以继续使用它。: take方法用于从迭代器中提取前n个元素。它接受一个整数参数n,返回一个新的迭代器,包含原始迭代器的前n个元素。: drop方法用于从迭代器中丢弃前n个元素。它接受一个整数参数n,返回一个新的迭代器,包含原始迭代器中剩余的元素。

2024-12-18 21:10:06 249

原创 迭代器计算平均值和筛选大于平均值的元素

在Scala中,你可以使用迭代器(Iterator)来实现这个功能。

2024-12-18 20:43:12 175

原创 迭代器是什么和创建

返回迭代器的下一个元素,如果没有则抛出 NoSuchElementException。使用集合的 iterator 方法可以获取一个迭代器实例。可以使用 while 循环或 for 表达式来遍历集合。// 使用 while 循环。// 使用 for 表达式。检查是否还有下一个元素。

2024-12-18 20:38:02 154

原创 访问权限的修饰符

在Scala中不存在显式的public关键字,任何没有被标记为private或protected的成员默认都是public,可以被任何其他类访问。:表示成员可以被声明它的类及其子类访问,即使是不同包的子类也可以访问,但是同包的类无法访问。(没有显式指定修饰符):表示成员可以被声明它的类及其同包内的其他类访问。:表示成员只能在声明它的类或对象内部访问。

2024-12-18 20:31:38 157

空空如也

空空如也

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

TA关注的人

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