- 博客(72)
- 收藏
- 关注
原创 hadoop中创建MySQL新数据库数据表
在Hadoop环境中创建MySQL数据库和数据表,通常需要通过MySQL命令行工具来完成,而不是直接在Hadoop中操作。在创建好的数据库中创建数据表。通过以上步骤,你可以在Hadoop环境中创建MySQL数据库和数据表,并实现数据的交互操作。如果需要在Hadoop环境中与MySQL进行数据交互,可以使用Hive或Sqoop等工具。此命令会在mydb数据库中创建一个名为mytable的表,包含id和name两个字段。登录MySQL后,使用CREATE DATABASE命令创建一个新的数据库。
2025-05-14 14:22:17
138
原创 spark sql基本操作
Spark SQL 是 Apache Spark 的一个模块,用于处理结构化数据。它允许用户使用标准的 SQL 语法来查询数据,并且可以无缝地与 Spark 的其他功能(如 DataFrame、Dataset 和 RDD)结合使用。以下是 Spark SQL 的基本使用方法和一些常见操作的介绍。1. Spark SQL 的基本概念DataFrame 是 Spark SQL 中的核心数据结构,类似于传统数据库中的表。它是一个不可变的分布式数据集合,具有结构化的列信息。
2025-05-14 14:22:11
279
原创 如何同步虚拟机文件夹
100虚拟机中opt文件夹下创建conf文件夹并在其中创建四个文本文件并输入命令rsync -av conf/ root@hadoop101:/opt/conf就能将conf文件夹同步到hadoop101opt文件夹中。
2025-05-14 14:21:55
130
原创 使用xsync脚本同步文件
保存后读取一下文件再打开脚本如果权限不够输入命令chmod +x /root/bin/xsync再次读取会发现文件变为绿色打开后在hadoop100中conf文件夹下创建6.txt并输入指令 xsync /opt/conf/在root文件夹中创建bin文件夹在其中创建文件xsync并打开文件输入。它会让你输入俩次密码,代码完成后会发现文件全部同步了。#1. 判断参数个数。
2025-05-13 09:11:39
93
原创 如何进行流量统计一
先创建一个目录并列出统计的三个元素,手机号,上行流量,下行流量。将手机号的上行流量与下行流量进行汇总计算数据。再对多个元素进行封装,
2025-05-13 09:10:36
185
原创 如何进行流量统计二
再去提交job和进行关联mapper和reducer进行汇总设置输出类型路径。进行运行生成一个output目录 part-r-00000中则会生成结果。再继承Reducer,并重写reduce函数。
2025-05-13 09:09:58
90
原创 sparkrdd分区器
在Spark中,RDD分区器是用于控制RDD数据如何在集群中分布和组织的关键组件。分区器的作用是将数据划分为多个分区,以便Spark能够高效地并行处理数据,同时减少数据传输开销。以下是关于Spark RDD分区器的详细内容:1. 分区器的作用数据分布 :分区器决定了RDD中的数据如何在集群的各个节点上进行分布。通过合理分区,可以优化数据的存储和计算效率。数据局部性 :分区器可以尽量保证数据的局部性,减少跨节点的数据传输,从而提高计算性能。
2025-05-13 09:09:24
332
原创 如何在IDEA中编写Spark程序
通过以上步骤,你可以在 IntelliJ IDEA 中轻松搭建 Spark 开发环境,并编写、调试和运行 Spark 程序。以下是详细的步骤,帮助你在 IDEA 中搭建 Spark 开发环境并编写 Spark 程序。1. 调整内存和核心数:根据集群资源和任务需求,合理设置 `--executor-memory` 和 `--executor-cores` 参数。4. 在 Project name中输入项目名称,例如 SparkProject,在 Project location中选择项目存储路径。
2025-05-13 08:36:46
858
原创 spark和hadoop的对比和联系
它们的关系:Spark 可以和 Hadoop 的仓库(HDFS)搭配使用,还能和 Hadoop 的资源管理器(YARN)一起合理分配资源。Spark 是 Hadoop 生态系统的一部分,可以和 Hadoop 的其他工具(比如 Hive、HBase)一起用,就像一个大家庭里的兄弟姐妹,互相配合。它适合存储海量数据和做离线计算。Spark:把数据放在内存里计算,速度非常快,适合需要快速响应的场景,比如实时计算和交互式查询。Spark:提供了简单易用的接口,支持多种编程语言,很容易上手,就像拼一个简单的拼图。
2025-05-13 08:25:02
127
原创 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 08:24:28
305
原创 RDD的两种操作算子
比如,我们读取一个文本文件创建一个RDD,然后把其中包含spark的行筛选出来。如果Spark在我们运行lines = sc.textFile(test.txt) 时就把文件中所有的行都读取到内存中并存储起来,内存开销会很大,而我们接下来的操作会筛选掉其中的很多数据。Transformation操作是延迟计算的,也就是说从一个RDD转换生成另一个RDD的转换操作不是马上执行,需要等到Actions操作时,才真正开始运算。例如,first() 就是我们之前调用的一个行动操作,它会返回 RDD 的第一个元素。
2025-05-07 15:45:01
244
原创 数据清洗ETL
ETL 是 Extract(抽取)、Transform(转换)、Load(加载)的缩写,是数据仓库和大数据处理中常用的概念,数据清洗是 ETL 过程中 Transform 阶段的重要工作内容。以下为你详细介绍:抽取(Extract):从各种数据源中提取数据,数据源可以是数据库(如关系型数据库 MySQL、Oracle,非关系型数据库 MongoDB 等)、文件系统(如 CSV、JSON、XML 文件)、日志文件、实时流数据等。例如从 MySQL 数据库的一张用户信息表中提取所有用户的记录。在抽取时需要考虑数
2025-05-07 14:30:06
298
原创 spark和hadoop的对比和联系
Spark 是 Hadoop 生态系统的一部分,可以和 Hadoop 的其他工具(比如 Hive、HBase)一起用,就像一个大家庭里的兄弟姐妹,互相配合。HDFS 是一个超大的仓库,Spark 是一个快速的处理工具,它们可以搭配使用。:擅长快速处理数据,无论是离线的还是实时的。:就像一个超大的仓库,能存很多东西,但取东西的速度比较慢。:把数据放在内存里计算,速度非常快,适合需要快速响应的场景,比如实时计算和交互式查询。:提供了简单易用的接口,支持多种编程语言,很容易上手,就像拼一个简单的拼图。
2025-04-22 08:26:37
238
原创 一分钟教你数据清洗
• 将数据统一为相同的格式,例如日期格式统一为“YYYY-MM-DD”,金额统一为小数格式等。数据清洗是一个需要耐心和细致的过程,但只要按照这些步骤操作,就能有效提升数据质量。• 确定数据的用途和分析目标,这将决定需要保留哪些数据,删除哪些数据。• 删除:如果缺失值较多且对分析影响不大,可以删除包含缺失值的行或列。• 清洗完成后,检查数据是否符合预期,确保清洗过程没有引入新的错误。• 确保数据在不同字段或表中的一致性,例如名称的拼写是否一致。• 删除与分析目标无关的列或行,减少数据量,提高处理效率。
2025-04-02 15:43:11
154
原创 mapreduce的工作原理
处理:Map 函数对输入数据进行处理,生成中间结果。输出:Map 函数的输出是新的键值对,这些中间结果将传递给 Reduce 阶段^1^。: 输入:Reduce 阶段接收 Shuffle 阶段处理后的数据。处理:Reduce 函数对相同键的值进行合并计算,生成最终结果。输出:Reduce 函数的输出是最终结果,通常存储在 HDFS 中^1^。: 分区:将 Map 阶段的输出数据进行分区,每个分区对应一个 Reduce 任务。合并:将相同键的值合并在一起,准备传递给 Reduce 阶段^2^。
2025-03-31 19:40:21
171
原创 hadoop集群的常用命令
这些命令是与 HDFS 进行交互的基础,涵盖了文件操作、系统管理、权限控制等多个方面。通过这些命令,用户可以有效地管理和操作存储在 Hadoop 集群中的数据。这些命令会分别启动 Hadoop 的 DFS 和 YARN。该命令会递归地列出 HDFS 根目录下的所有文件和目录。将 HDFS 中的多个文件合并后下载到本地。查看特定 Hadoop 命令的帮助信息。修改 HDFS 文件的权限和所有者。查看 HDFS 中某个文件的内容。修改 HDFS 中文件的副本数量。删除 HDFS 中的文件。
2025-03-31 19:38:41
124
原创 Linux的指令
mkdir -p dir1/dir2:递归创建。- touch: 创建空文件或更新文件时间戳。- head/tail: 查看文件开头/结尾。- more/less: 分页查看文件。- tail -f:实时查看日志。- mv: 移动或重命名文件/目录。- chown: 修改文件所有者。- chmod: 修改文件权限。- chgrp: 改文件所属组。- rm -r:递归删除。- rm -f:强制删除。- cp -r:递归复制。ls -l:详细列表。- rm: 删除文件或目录。- cp: 复制文件或目录。
2025-03-03 20:03:38
217
原创 VM 虚拟机的指令及作用
more 命令:除了分页显示外,还可以显示已显示内容的百分比,并提供一些基本的导航功能,如向上翻页(在某些系统中需要使用特殊键或组合键)在命令模式下,按下键盘上的i,a , o键,在编辑模式下,按下键盘上的Esc键可以返回到命令模式。在虚拟机中执行命令echo abc >> a.txt的作用是将字符串 "abc" 追加到文件a.txt的末尾。在虚拟机中,echo abc > a.txt的作用是将字符串 "abc" 写入到文件a.txt中。在虚拟机中,vi编辑器有三种主要模式:命令模式、插入模式和末行模式。
2025-02-25 11:38:30
363
原创 虚拟机编辑器
启动vi编辑器后,默认进入的是命令模式。在命令模式下,按下键盘上的i,a , o键,在编辑模式下,按下键盘上的Esc键可以返回到命令模式。输入:wq并按下回车键。这会保存当前文件的更改并退出vi编辑器 shirt+zz。在虚拟机中,vi编辑器有三种主要模式:命令模式、插入模式和末行模式。nyy可以复制多行内容。
2025-02-25 11:37:49
343
原创 虚拟机编辑器
在此模式下,可以使用键盘快捷键进行光标移动、删除、复制等操作。按 i 键进入插入模式,在光标当前位置开始输入文本。:用于执行复杂的命令,如保存文件、退出编辑器等。输入命令 vi 文件名 来打开一个现有文件,或者输入 vi 创建一个新文件。:在末行模式下输入 :w 保存文件,或者 :wq 保存并退出。:使用方向键(上、下、左、右)移动光标。:在光标当前位置的下一个字符处插入文本。:使用 vi 文件名 命令打开文件。:在光标当前位置的下一行插入新行。:分别表示左、下、上、右移动。:在光标当前位置插入文本。
2025-02-25 11:37:10
567
原创 教你学会VMware虚拟机的操作系统安装
2打开虚拟机后enter选择要安装的操作系统,等待安装完成以后选择要使用的语言,设置完磁盘的存储设置,选择自动分配分区,完成后会出现完成的ui点击完成设置root密码,输入密码,然后确认密码后点击完成,等待安装完后,输入root再输入密码就能完成问题了。1安装完vmware后点击创建虚拟机,自定义设置设置完虚拟机的内存硬盘大小以及处理器设置,选择光盘映像文件,自定义虚拟机的名称,选中linux系统。
2025-02-19 14:35:39
93
原创 Scala正则表达式(4)
println(reg.matches(name1))//matches字符串做验证,返回boolean的值。println(reg.matches(name3))//matches字符串做验证,返回boolean的值。println(reg.matches(name4))//matches字符串做验证,返回boolean的值。println(reg.matches(name5))//matches字符串做验证,返回boolean的值。val name3="admin"//不合法:长度不高够。
2024-12-11 17:06:47
373
原创 Scala正则表达式(3
/ val t=("雷总",1969)元组。"马-阿里巴巴"->1964,"马腾-腾讯"->1971,"李-百度"-> 1968,"雷-小米"-> 1969,// 找出哪些是1971年的老板?"丁-网易"->1971,// 对于Map,可以for遍历。// 模式匹配。
2024-12-11 17:06:15
309
原创 Scala隐式转换
/隐式转换:编译器 偷偷的,自动地帮我们把一种数据类型转换为另一种类型。//它有失败的时候(double-->int).有成功的时候。// 当他转换失败的时候,我们提供一个工具,让他能成功。// j=i//把Int 转入Double。i=j//把Double转入Int。//明确地,把double转成int。//例如:int-->double。
2024-12-11 17:05:44
302
原创 Scala函数隐式参数
def sayName(implicit name:String="小明"):Unit={implicit val value:String="小米"//困难:函数有一个默认参数值,在不传入具体的实参时。println("我的名字是:"+name)sayName("小婉")//一直在修改原来的代码!
2024-12-11 17:05:12
355
原创 Scala隐式泛型
/LIstanbul(1,2,3,4,5)==>中间元素下标=长度/2===>3。//需求:你是一个程序员,老板让你写一个函数,用来获取列表中的中间元素。//def 函数的名字(参数1:类型1):返回值的类型={
2024-12-11 17:04:09
111
原创 使用Scala进行Web开发:构建你的第一个Web应用.m
使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Scala进行Web开发使用Sc
2024-12-11 17:03:12
269
原创 Scala安装配置
4)Scala在设计时,马丁·奥德斯基是参考了Java的设计思想,可以说Scala是源于Java,同时马丁·奥德斯基也加入了自己的思想,将函数式编程语言的特点融合到JAVA中, 因此,对于学习过Java的同学,只要在学习Scala的过程中,搞清楚Scala和Java相同点和不同点,就可以快速的掌握Scala这门语言。一般来说,学 Scala 的人,都会 Java,而 Scala 是基于 Java 的,因此我们需要将 Scala和 Java 以及 JVM 之间的关系搞清楚,否则学习 Scala 你会蒙圈。
2024-12-11 17:02:33
820
原创 Scala基础知识
条件表达式就是if表达式,if表达式可以根据给定的条件是否满足,根据条件的结果(真或假)决定执行对应的操作。例如:姓名,年龄,性别,出生年月。val/var a = ArrayBuffer(元素1,元素2,元素3....)val/var 变量名 = ListBuffer(元素1,元素2,元素3...)val/var 变量名 = Array(元素1, 元素2, 元素3...)来访问元组中的元素,_1表示访问第一个元素,依次类推。val/var 变量名 = List(元素1, 元素2, 元素3...)
2024-12-11 17:02:02
111
原创 类型化函数,多态函数和符号函数
对于调用多态函数applyDiscountWithReturnType()时使用的每个指定类型,该函数还返回相同类型的Sequence序列。// 调用一个函数,其名称只是一个符号,就像上面步骤中的-函数一样,与调用任何其他函数没有什么不同。虽然可以依赖Scala的类型推断来推断函数参数的类型,但一般来说,显式指定参数类型是一个很好的实践。在多态函数中,我们可以指定参数的类型以及函数的返回类型。调用一个函数,其名称只是一个符号,就像上面步骤中的-函数一样,与调用任何其他函数没有什么不同。
2024-11-27 16:49:49
623
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人