自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 hdfs客户端操作-文件上传

原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147924156。//1.3创建Hadoop文件系统对象。//1.3创建Hadoop文件系统对象。//1.3创建Hadoop文件系统对象。//1.2设置Hadoop集群地址。//1.2设置Hadoop集群地址。//2.上传文件到hadoop集群。//1.2设置Hadoop集群地址。//1.1 创建Hadoop配置。//1.1 创建Hadoop配置。//1.1 创建Hadoop配置。

2025-05-13 15:23:00 361

原创 spark和hadoop的对比和联系

就像一个超大的仓库,能存很多东西,但取东西的速度比较慢。Spark:擅长快速处理数据,无论是离线的还是实时的。它就像一个超级快的快递员,能快速把东西送到你手上。Spark:把数据放在内存里计算,速度非常快,适合需要快速响应的场景,比如实时计算和交互式查询。Hadoop:因为主要依赖磁盘存储和读取数据,速度比较慢,适合对速度要求不高的离线计算。Spark:提供了简单易用的接口,支持多种编程语言,很容易上手,就像拼一个简单的拼图。Hadoop:适合存储海量数据和做大规模的离线批处理,比如分析海量的日志文件。

2025-05-13 15:21:42 206

原创 如何进行流量统计二

String flowDesc =String.format("总的上行流量是:%d 总的下行流量:%d 总流量是:%d",upFlowSum,downFlowSum,sumFlow);原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147924115。//1遍历集合,取出每一个元素,计算上行流量和下行流量的总汇。//2重写reduce函数。//1继承Reducer。

2025-05-13 15:20:47 197

原创 hdfs客户端操作-文件上传

原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147924139。//1.3创建Hadoop文件系统对象。//1.3创建Hadoop文件系统对象。//1.3创建Hadoop文件系统对象。//1.2设置Hadoop集群地址。//1.2设置Hadoop集群地址。//2.上传文件到hadoop集群。//1.2设置Hadoop集群地址。//1.1 创建Hadoop配置。//1.1 创建Hadoop配置。//1.1 创建Hadoop配置。

2025-05-13 15:20:17 429

原创 如何实现java序列化

原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147924087。// Student student = new Student("张三", 18);//java反序列化:从文件student_java.ser中读出内容,还原这个对象。//java序列化:把对象保存到一个文件中。//实例化Student对象。// //3把对象写入到文件中。//2创建一个输出流。//学生类,姓名,年龄。

2025-05-13 15:18:30 318

原创 Spark,流量统计案例

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。拥有一个文件,其中文件内容(内容随便写符合规矩即可)分别为电话号码 上行流量 下行流量(第一行是写给大家看的 注释不用写出来)原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147903243。//三个属性:手机号,上行流量,下行流量。//定义一个获取总流量的方法。//定义get/set方法。提前创好一个文件夹分为四个类。//hadoop 序列化。

2025-05-13 15:13:17 263

原创 Spark,流量统计案例

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。拥有一个文件,其中文件内容(内容随便写符合规矩即可)分别为电话号码 上行流量 下行流量(第一行是写给大家看的 注释不用写出来)原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147903243。//三个属性:手机号,上行流量,下行流量。//定义一个获取总流量的方法。//定义get/set方法。提前创好一个文件夹分为四个类。//hadoop 序列化。

2025-05-13 15:12:34 319

原创 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 15:09:07 250

原创 隐式对象作用域代码写在包对象

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147924032。println("阶乘函数被调用", d)//写代码,完成1*2*3*.....*d。//需求:给整数添加一个功能,求阶乘。

2025-05-13 15:08:37 256

原创 spark和hadoop的对比和联系

它们的关系:Spark 可以和 Hadoop 的仓库(HDFS)搭配使用,还能和 Hadoop 的资源管理器(YARN)一起合理分配资源。Spark 是 Hadoop 生态系统的一部分,可以和 Hadoop 的其他工具(比如 Hive、HBase)一起用,就像一个大家庭里的兄弟姐妹,互相配合。它适合存储海量数据和做离线计算。Spark:把数据放在内存里计算,速度非常快,适合需要快速响应的场景,比如实时计算和交互式查询。Spark:提供了简单易用的接口,支持多种编程语言,很容易上手,就像拼一个简单的拼图。

2025-05-13 15:07:46 145

原创 使用xsync脚本同步文件

保存后读取一下文件再打开脚本如果权限不够输入命令chmod +x /root/bin/xsync再次读取会发现文件变为绿色打开后在hadoop100中conf文件夹下创建6.txt并输入指令 xsync /opt/conf/原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147924058。在root文件夹中创建bin文件夹在其中创建文件xsync并打开文件输入。它会让你输入俩次密码,代码完成后会发现文件全部同步了。#3. 遍历所有目录,挨个发送。

2025-05-13 15:07:17 227

原创 hdfs客户端操作-文件上传

原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147924156。//1.3创建Hadoop文件系统对象。//1.3创建Hadoop文件系统对象。//1.3创建Hadoop文件系统对象。//1.2设置Hadoop集群地址。//1.2设置Hadoop集群地址。//2.上传文件到hadoop集群。//1.2设置Hadoop集群地址。//1.1 创建Hadoop配置。//1.1 创建Hadoop配置。//1.1 创建Hadoop配置。

2025-05-13 15:05:20 284

原创 scala集合复习

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.youkuaiyun.com/2402_87162165/article/details/147923635。先进先出.enqueue入队,dequeue出队。pop表示取出,push表示在栈中添加元素。Stack:栈,特殊的结构。它对元素的操作是在头部:栈顶。集Set:表示无序且不重复的集合。Seq表示有先后顺序的集合。映射Map:表示键值对。二.Queue 队列。

2025-05-13 15:00:33 230

原创 Scala中的case class

val book1 = new Book(id = "001", name = "红楼梦", stock = 3)val book2 = new Book(id = "001", name = "红楼梦", stock = 3)val book3 = new Book(id = "001", name = "红楼梦", stock = 3)val book1 =new Book(id = "001", name = "红楼梦", stock = 3)4.添加一本已经存在的书。

2025-05-13 14:58:45 290

原创 一分钟教你数据清洗

• 将数据统一为相同的格式,例如日期格式统一为“YYYY-MM-DD”,金额统一为小数格式等。• 填充:根据数据的性质,可以用平均值、中位数、众数或使用预测模型填充缺失值。• 确定数据的用途和分析目标,这将决定需要保留哪些数据,删除哪些数据。• 删除:如果缺失值较多且对分析影响不大,可以删除包含缺失值的行或列。• 清洗完成后,检查数据是否符合预期,确保清洗过程没有引入新的错误。• 确保数据在不同字段或表中的一致性,例如名称的拼写是否一致。• 删除与分析目标无关的列或行,减少数据量,提高处理效率。

2025-05-12 11:23:04 499

原创 mapreduce的工作原理

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

2025-05-12 11:22:09 233

原创 数据清洗ETL

ETL 是 Extract(抽取)、Transform(转换)、Load(加载)的缩写,是数据仓库和大数据处理中常用的概念,数据清洗是 ETL 过程中 Transform 阶段的重要工作内容。例如,在记录用户身高的数据中,如果出现了一个远远超出正常人类身高范围的值,就需要判断是否是数据录入错误,并进行相应处理,如修正或删除。数据清洗(作为转换的一部分):这是 ETL 过程中非常关键的步骤,目的是处理数据中的噪声、缺失值、异常值、重复值等问题,提高数据质量。数据标准化:将数据转换为统一的格式或标准。

2025-05-12 11:21:22 341

原创 Scala语言特点

4)Scala在设计时,马丁·奥德斯基是参考了Java的设计思想,可以说Scala是源于Java,同时马丁·奥德斯基也加入了自己的思想,将函数式编程语言的特点融合到JAVA中,因此,对于学习过Java的同学,只要在学习Scala的过程中,搞清楚Scala和Java相同点和不同点,就可以快速的掌握Scala这门语言。(多范式,就是多种编程方法的意思。2)Scala源代码 (.scala) 会被编译成Java字节码 (.class),然后运行于JVM之上,并可以调用现有的Java类库,实现两种语言的无缝对接。

2025-05-12 11:20:35 250

原创 Spark

特点:提高处理能力:通过将任务分散到多个节点上并行计算,能够大大提高数据处理的速度和效率,从而可以在短时间内处理海量数据,满足大数据时代对数据处理的实时性和高效性要求。例如早期的个人电脑,通常只有几百兆的内存和几 GB 的硬盘空间。2.可靠性和可用性较低:一旦单机出现故障,整个系统就会瘫痪,导致业务中断,数据也可能丢失,没有冗余机制来保证数据的安全和业务的连续性。1.无法处理大规模数据:随着业务的发展和数据量的增长,单机系统很快就会遇到存储和处理能力的瓶颈,无法应对海量数据的存储和分析需求。

2025-05-12 11:19:58 338

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

会把aaa、这三个字符写入a.txt文件,并把之前的内容全部覆盖掉(等价于先删除了a.txt的内容,再写入aaa)会把文件的最尾部的内容显示在屏幕上,并且不断刷新,只要文件有更新,就可以看到最新的文件内容。命令是:tar -cvf test.tar 1.txt 2.txt 3.txt。-x 表示解压文件。示例1:把1.txt,2.txt,3.txt压缩到test.tar文件中。格式:tar -cvf 压缩包.tar 文件1 文件2 文件3。命令是:tar -xvf test.tar -C ./temp。

2025-05-12 11:19:04 182

原创 spark和hadoop的对比和联系

就像一个超大的仓库,能存很多东西,但取东西的速度比较慢。Spark:擅长快速处理数据,无论是离线的还是实时的。它就像一个超级快的快递员,能快速把东西送到你手上。Spark:把数据放在内存里计算,速度非常快,适合需要快速响应的场景,比如实时计算和交互式查询。Hadoop:因为主要依赖磁盘存储和读取数据,速度比较慢,适合对速度要求不高的离线计算。Spark:提供了简单易用的接口,支持多种编程语言,很容易上手,就像拼一个简单的拼图。Hadoop:适合存储海量数据和做大规模的离线批处理,比如分析海量的日志文件。

2025-05-12 11:17:22 145

原创 一分钟教你数据清洗

• 将数据统一为相同的格式,例如日期格式统一为“YYYY-MM-DD”,金额统一为小数格式等。• 填充:根据数据的性质,可以用平均值、中位数、众数或使用预测模型填充缺失值。• 确定数据的用途和分析目标,这将决定需要保留哪些数据,删除哪些数据。• 删除:如果缺失值较多且对分析影响不大,可以删除包含缺失值的行或列。• 清洗完成后,检查数据是否符合预期,确保清洗过程没有引入新的错误。• 确保数据在不同字段或表中的一致性,例如名称的拼写是否一致。• 删除与分析目标无关的列或行,减少数据量,提高处理效率。

2025-05-12 11:16:46 227

原创 hadoop集群的常用命令

文件权限管理: hdfs dfs -chmod permissions hdfs_path hdfs dfs -chown owner:group hdfs_path 修改 HDFS 文件的权限和所有者。合并下载: hdfs dfs -getmerge hdfs_source_path local_destination_file 将 HDFS 中的多个文件合并后下载到本地。查看文件内容: hdfs dfs -cat hdfs_file_path 查看 HDFS 中某个文件的内容。

2025-05-12 11:16:01 263

原创 Linux的指令

原文链接:https://blog.youkuaiyun.com/Hao_7/article/details/147740492。- mkdir -p dir1/dir2:递归创建。- touch: 创建空文件或更新文件时间戳。- head/tail: 查看文件开头/结尾。- more/less: 分页查看文件。- tail -f:实时查看日志。- mv: 移动或重命名文件/目录。- chown: 修改文件所有者。ls -a:显示隐藏文件。- rm -r:递归删除。- rm -f:强制删除。- cp -r:递归复制。

2025-05-12 11:15:26 235

原创 RDD的两种操作算子

比如,我们读取一个文本文件创建一个RDD,然后把其中包含spark的行筛选出来。如果Spark在我们运行lines = sc.textFile(test.txt) 时就把文件中所有的行都读取到内存中并存储起来,内存开销会很大,而我们接下来的操作会筛选掉其中的很多数据。Transformation操作是延迟计算的,也就是说从一个RDD转换生成另一个RDD的转换操作不是马上执行,需要等到Actions操作时,才真正开始运算。例如,first() 就是我们之前调用的一个行动操作,它会返回 RDD 的第一个元素。

2025-05-12 11:14:49 350

原创 spark和hadoop的对比和联系

就像一个超大的仓库,能存很多东西,但取东西的速度比较慢。Spark:擅长快速处理数据,无论是离线的还是实时的。它就像一个超级快的快递员,能快速把东西送到你手上。Spark:把数据放在内存里计算,速度非常快,适合需要快速响应的场景,比如实时计算和交互式查询。Hadoop:因为主要依赖磁盘存储和读取数据,速度比较慢,适合对速度要求不高的离线计算。Spark:提供了简单易用的接口,支持多种编程语言,很容易上手,就像拼一个简单的拼图。Hadoop:适合存储海量数据和做大规模的离线批处理,比如分析海量的日志文件。

2025-05-12 11:14:11 172

原创 CentOS 7 IP 地址设置保姆级教程

例如,如果你的接口名称是 ens160,则配置文件为 /etc/sysconfig/network-scripts/ifcfg-ens160。在 CentOS 7 系统中,设置 IP 地址是一项常见的网络配置任务。无论是动态分配 IP 地址(DHCP)还是设置静态 IP 地址,都可以通过多种方法完成。在 CentOS 7 中,可以通过编辑网络接口配置文件或使用命令行工具来设置静态 IP 地址。如果你更喜欢使用命令行工具,nmcli 是一个强大的网络管理工具,可以快速设置静态 IP。

2025-05-12 11:11:21 650

原创 从零开始:VMware 安装与 Linux 系统配置全攻略

二、打开VMware软件,选择创建新的虚拟机。用于大家往svn上上传文档资料,时间一久,空间就不够用了,当时新建的虚拟机空间也不多,就8g,现在想给这台xp的虚拟机扩展为30g。上面第四种溢出错误,已经说明了线程的内存空间,其实线程基本只占用heap以外的内存区域,也就是这个错误说明除了heap以外的区域,无法为线程分配一块内存区域了,这个要么是内存本身就不够,要么heap的空间设置得太大了,导致了剩余的内存已经不多了,而由于线程本身要占用内存,所以就不够用了,说明了原因,如何去修改,不用我...

2025-05-12 11:10:37 1299

原创 Hadoop 集群部署与配置详解

原文链接:https://blog.youkuaiyun.com/a1199a/article/details/146201625。# 将 jdk-8u361-linux-x64.tar.gz 中的文件解压到 /opt/service/ 目录下。该命令会初始化 HDFS 的命名空间,并在 /opt/hadoop-tmp/dfs/name 目录下创建相关文件。# 通常会在 /opt/service/ 下生成一个类似 jdk1.8.0_361 的目录,即JDK的安装路径。

2025-05-12 11:09:24 971

原创 CentOS 7 IP 地址设置保姆级教程

在开始设置 IP 地址之前,我们需要先查看系统的网络接口名称。可以使用以下命令:bas或者使用nmcli命令:bash复制这些命令会列出系统中的所有网络接口,例如eth0ens160或enp0s3等。

2025-03-03 19:47:27 4556

原创 从零开始:VMware 安装与 Linux 系统配置全攻略

点击“浏览”,找到下载的 Linux 镜像文件(如 CentOS-7-x86_64-DVD-2009.iso 或 ubuntu-22.04-desktop-amd64.iso)。找到下载的 VMware Workstation Player 安装文件(如 VMware-player-full-xx.x.x-xxxxxxx.exe)。在 VMware Workstation Player 中,选择刚创建的虚拟机,点击“开启此虚拟机”。选择键盘布局(如“汉语”或“English (US)”),点击“继续”。

2025-02-25 12:29:48 943

原创 Linux基本命令教程:电脑小白的保姆级生存指南

Linux,听起来像是某种神秘的生物,但实际上,它是一种开源的操作系统。命令行,听起来很酷,但实际上它就是一个可以和你的电脑对话的窗口。想象一下,你的电脑是一个巨大的衣柜,ls命令就是打开衣柜门,看看里面有什么衣服。最后,如果你觉得这篇文章对你有帮助,不妨分享给你的朋友们,让更多人加入到Linux的奇妙世界中来。毕竟,分享是美德,对吧?tmux命令就像一个超级衣柜,你可以在多个衣柜之间自由切换,甚至可以保存和恢复你的衣柜状态。nohup命令就像把你的衣服放在一个特殊的衣柜里,即使停电了,衣服也不会丢失。

2025-02-25 12:26:18 418

原创 文本编辑器使用指南:Linux中的文本编辑器大冒险

它们都有自己的忠实粉丝。现代编辑器如Visual Studio Code和Atom结合了传统编辑器的优点,并加入了新的特性,如图形用户界面和内置的调试工具。随着你对文本编辑器的熟练,你可以开始探索更高级的特性,比如自定义快捷键、编写插件和扩展功能。替换文本:按Ctrl + \,输入要替换的文本和新文本,按Enter。在线教程:网上有大量的教程和指南,可以帮助你学习文本编辑器的使用。搜索文本:按Ctrl + W,输入要搜索的文本,按Enter。搜索文本:按Ctrl + S,输入要搜索的文本,按Enter。

2025-02-25 12:24:20 635

原创 Scala中的不可变Map和操作:简单易懂指南

本文将通过一个简单的示例,带你了解Scala中不可变Map的基本操作,包括添加元素、删除元素、查询元素、修改元素和遍历,以及它们的特点。向不可变Map中添加元素实际上是创建一个新的Map,因为原始的Map不能被修改。val map1 = Map("新" -> "新疆", "蒙" -> "内蒙古", "青" -> "青海")修改不可变Map中的元素也是通过创建一个新的Map来实现的。val result = map1.get("鄂") // 返回None,因为"鄂"不在map1中。

2024-12-11 22:32:40 255

原创 Scala中的可变Map操作:简单易懂指南 #Scala Map #Scala

在编程中,Map是一种常见的数据结构,用于存储键值对。"0001" -> ("Scala程序设计","王敏",34324234),"0002" -> ("侏罗纪园历险记","美国人",352352356),"0001" -> ("Scala程序设计", "王敏", 34324234),books("0003") = ("小红跟小Q", "桥桥", 999999456)books("0003")=("小红跟小Q","桥桥",999999456)"0003" -> ("小红跟小Q","桥桥",646456))

2024-12-11 22:28:26 569

原创 Scala编程技巧:用户验证、正则表达式和隐式转换 #Scala # scala #正则表达式

println(reg.matches(name1)) // matches对字符串做验证,返回boolean值。println(reg.matches(name3)) // matches对字符串做验证,返回boolean值。println(reg.matches(name4)) // matches对字符串做验证,返回boolean值。println(reg.matches(name5)) // matches对字符串做验证,返回boolean值。" // 不合法,!

2024-12-11 22:26:48 289

原创 Scala编程技巧:用户验证、正则表达式和隐式转换 #Scala # scala #正则表达式

println(reg.matches(name1)) // matches对字符串做验证,返回boolean值。println(reg.matches(name3)) // matches对字符串做验证,返回boolean值。println(reg.matches(name4)) // matches对字符串做验证,返回boolean值。println(reg.matches(name5)) // matches对字符串做验证,返回boolean值。" // 不合法,!

2024-12-11 22:25:15 403

原创 Scala编程技巧:正则表达式与隐式转换

隐式转换:transform函数允许在不显式调用的情况下,将String类型隐式转换为StrongString类型,从而可以直接调用isPhone和isID方法。val reg = "[1][3-9]\\d{9}".r // 正则表达式匹配以1开头,第二位是3-9的数字,后面跟着任意9个数字。通过本文的介绍,您应该对Scala中的正则表达式和隐式转换有了更深入的了解。正则表达式是用于字符串搜索和匹配的强大工具。我们将通过一个简单的示例来展示如何使用正则表达式和隐式转换来验证电话号码和身份证号码。

2024-12-11 22:24:29 335

原创 Scala编程技巧:探索隐式转换和隐式参数的妙用

Scala的隐式转换和隐式参数提供了一种强大的方式来扩展现有类的功能和简化函数调用。通过上述示例,我们可以看到,这些特性不仅可以使代码更加灵活,还可以提高其可读性和可维护性。cala编程中,隐式转换和隐式参数为代码提供了强大的扩展性和灵活性。解析:通过隐式转换PowerUser,我们为BaseUser类提供了updateUser方法,而无需修改BaseUser类本身。解析:通过隐式参数,我们为sayName函数的name参数提供了默认值"小明"。背景:简化函数调用,通过隐式参数提供默认值。

2024-12-11 22:23:41 483

原创 Scala编程技巧:用户验证、正则表达式和隐式转换 #Scala # scala #正则表达式

println(reg.matches(name1)) // matches对字符串做验证,返回boolean值。println(reg.matches(name3)) // matches对字符串做验证,返回boolean值。println(reg.matches(name4)) // matches对字符串做验证,返回boolean值。println(reg.matches(name5)) // matches对字符串做验证,返回boolean值。" // 不合法,!

2024-12-11 22:22:58 314

空空如也

空空如也

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

TA关注的人

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