- 博客(176)
- 收藏
- 关注
原创 windows禁止更新
之后我们通过win+i打开设置,然后打开系统更新,在这里可以任意更改系统暂停的时间,想要恢复更新直接点击继续更新即可。打开win+r,输入cmd,之后按ctrl+shift+enter 粘贴下面这一串字符。
2023-07-05 19:08:11
260
原创 Hive UDTF、窗口函数、自定义函数
窗口函数,能为每行数据划分一个窗口,然后对窗口范围内的数据进行计算,最后将计算结果返回给该行数据。2.2 语法窗口函数的语法中主要包括“窗口”和“函数”两部分。其中“窗口”用于定义计算范围,“函数”用于定义计算逻辑。selectorder_id,amount,函数(amount) over (窗口范围) total_amount。
2023-04-14 11:03:14
664
2
原创 Hive查询语句
反之返回false。B的表达式说明如下:‘x%’表示A必须以字母‘x’开头,‘%x’表示A必须以字母‘x’结尾,而‘%x%’表示A包含有字母‘x’,可以位于开头,结尾或者字符串中间。如果A的值大于等于B而且小于或等于C,则结果为true,反之为false。union和union all都是上下拼接sql的结果,这点是和join有区别的,join是左右关联,union和union all是上下拼接。如果A和B都为null或者都不为null,则返回true,如果只有一边为null,返回false。
2023-04-10 18:20:03
905
原创 Hive DDL和DML
在关系型数据库管理系统(RDBMS)中,(Data Definition Language)和(Data Manipulation Language)是两类不同类型的SQL语句,用于对数据库进行不同的操作。DML(Data Manipulation Language):DML语句用于对数据库中的数据进行操作,包括查询、插入、更新和删除数据。需要注意的是,DDL语句会对数据库的结构进行修改,可能会对数据库的完整性和安全性产生重大影响,因此通常需要具有足够权限的用户来执行。
2023-04-10 10:58:05
597
原创 Hive3.1.3安装及部署
目录1 下载地址2 安装部署2.1 安装Hive2.2 启动并使用Hive2.3 MySQL安装2.3.1 安装MySQL2.3.2 配置MySQL2.3.3 卸载MySQL说明2.4 配置Hive元数据存储到MySQL2.4.1 配置元数据到MySQL2.4.2 验证元数据是否配置成功2.4.3 查看MySQL中的元数据2.5 Hive服务部署2.5.1 hiveserver2服务 2.5.2 metastore服务2.5.3 编写Hive服务启动脚本(了解)配置环境:http://archive.apa
2023-04-07 18:44:31
2511
原创 Hive了解
1Hive简介Hive是由Facebook开源,基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。那为什么会有Hive呢?它是为了解决什么问题而诞生的呢?下面通过一个案例,来快速了解一下Hive。例如:需求,统计单词出现个数。(1)在Hadoop课程中我们用MapReduce程序实现的,当时需要写Mapper、Reducer和Driver三个类,并实现对应逻辑,相对繁琐。test表id列atguiguatguigussss。
2023-04-07 11:36:59
560
原创 SparkSQL之数据加载保存
需要注意的是,如果你没有部署好 Hive,Spark SQL 会在当前的工作目录中创建出自己的 Hive 元数据仓库,叫作 metastore_db。此外,如果你尝试使用 HiveQL 中的CREATE TABLE (并非 CREATE EXTERNAL TABLE)语句来创建表,这些表会被放在你默认的文件系统中的 /user/hive/warehouse 目录中(如果你的 classpath 中有配好的hdfs-site.xml,默认的文件系统就是 HDFS,否则就是本地文件系统)。
2023-04-06 16:31:16
1172
原创 SparkSQL核心编程
是 Spark 最新的 SQL 查询起始点,实质上是 SQLContext 和HiveContext 的组合,所以在 SQLContex 和HiveContext 上可用的API 在 SparkSession 上同样是可以使用的。SparkSession 内部封装了 SparkContext,所以计算实际上是由 sparkContext 完成的。
2023-04-04 16:11:37
678
原创 SparkSQL 概述
但是,随着Spark 的发展,对于野心勃勃的Spark 团队来说,Shark 对于 Hive 的太多依赖(如采用 Hive 的语法解析器、查询优化器等等),制约了 Spark 的One Stack Rule Them All 的既定方针,制约了 Spark 各个组件的相互集成,所以提出了 SparkSQL 项目。其中 Shark 是伯克利实验室 Spark 生态环境的组件之一,是基于Hive 所开发的工具,它修改了下图所示的右下角的内存管理、物理计划、执行三个模块,并使之能运行在 Spark 引擎上。
2023-04-03 14:39:35
579
1
原创 Spark核心编程累加器、广播变量
/ 创建累加器// 向Spark注册累加器word => {// 使用累加器// 获取结果sc.stop()/*1、继承AccumulatorV2,定义泛型IN:累加器输入类型OUT:累加器返回类型2、实现函数*/// 判断是否为空// 复制累加器// 获取累加器需要计算的值// Driver合并多个累加器(2个map的合并)// 累加器结果wcMap广播变量用来高效分发较大的对象。
2023-03-30 19:18:01
199
原创 Spark运行架构
Spark 集群的独立部署环境中,不需要依赖其他的资源调度框架,自身就实现了资源调度的功能,所以环境中还有其他两个核心组件:Master 和 Worker,这里的 Master 是一个进程,主要负责资源的调度和分配,并进行集群的监控等职责,类似于 Yarn 环境中的 RM, 而Worker 呢,也是进程,一个 Worker 运行在集群中的一台服务器上,由 Master 分配资源对数据进行并行的处理和计算,类似于 Yarn 环境中 NM。在提交应用中,可以提供参数指定计算节点的个数,以及对应的资源。
2023-03-27 14:55:11
513
原创 Spark部署之Windows
在同学们自己学习时,每次都需要启动虚拟机,启动集群,这是一个比较繁琐的过程, 并且会占大量的系统资源,导致系统执行变慢,不仅仅影响学习效果,也影响学习进度, Spark 非常暖心地提供了可以在windows 系统下启动本地集群的方式,这样,在不使用虚拟机的情况下,也能学习 Spark 的基本使用.将文件 spark-3.0.0-bin-hadoop3.2.tgz 解压缩到无中文无空格的路径中。先在bin目录下创建input/word.txt。3 执行Scala代码。4 向命令行提交应用。
2023-03-27 08:54:04
556
原创 Spark Yarn部署
独立部署(Standalone)模式由 Spark 自身提供计算资源,无需其他框架提供资源。但是你也要记住,Spark 主要是计算框架,而不是资源调度框架,所以本身提供的资源调度并不是它的强项,所以还是和其他专业的资源调度框架集成会更靠谱一些。所以接下来我们来学习在强大的Yarn 环境下 Spark 是如何工作的(其实是因为在国内工作中,Yarn 使用的非常多)。修改 hadoop 配置文件/opt/module/hadoop/etc/hadoop/yarn-site.xml, 并分发。
2023-03-27 08:29:03
364
原创 Spark配置高可用HA
Spark高可用性(High Availability)是指在Spark集群中,当某个节点或组件出现故障时,系统可以自动切换到备用节点或组件,以保证整个集群的稳定性和可用性。Spark高可用性的实现可以通过以下两种方式之一:Spark Standalone模式的高可用性:使用Spark自带的HA机制,通过Zookeeper实现主节点的选举和故障转移,从而保证Spark集群的高可用性。
2023-03-24 19:28:20
1037
原创 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java
今天配置完Spark高可用之后,想要跑一下Pi来验证配置结果,出现一下问题。
2023-03-24 19:10:33
966
原创 ContOS7分布式部署ZooKeeper
代表102是Leader,103、104是Follower。在其余两台服务器上也配置环境变量。启动zookeeper服务端。新建data和logs目录。
2023-03-24 11:18:50
492
1
原创 Spark配置历史服务器
由于 spark-shell 停止掉后,集群监控 linux1:4040 页面就看不到历史任务的运行情况,所以开发时都配置历史服务器记录任务运行情况。1 修改 spark-defaults.conf.template 文件名为 spark-defaults.conf。3 注意:需要启动 hadoop 集群,HDFS 上的directory 目录需要提前存在。2 修改 spark-default.conf 文件,配置日志存储路径。4 修改 spark-env.sh 文件, 添加日志配置。
2023-03-24 08:47:03
970
原创 Spark standalone模式部署
local 本地模式毕竟只是用来进行练习演示的,真实工作中还是要将应用提交到对应的集群中去执行,这里我们来看看只使用 Spark 自身节点运行的集群模式,也就是我们所谓的独立部署(Standalone)模式。Spark 的 Standalone 模式体现了经典的master-slave 模式。
2023-03-23 19:59:04
448
原创 Spark Local模式部署
在shell里面可以写Scala代码,spark-shell还提供了控制台(退出spark-shell,进入spark主目录,运行Pi程序。在这里跑一个wordcount。进入spark-shell。上传Spark文件到。
2023-03-23 18:49:43
139
原创 Scala正则表达式
在上面的例子中,我们创建了一个正则表达式,它可以匹配以。方法来查找第一个匹配的字符串,它返回一个 Option[String]开头,后面跟任意字符的字符串。这个正则表达式被保存在 pattern。在上面的例子中,我们使用 findFirstIn。如果找到了匹配的字符串,它会返回一个 Some。Scala 中的正则表达式使用。我们可以使用 findFirstIn。我们还可以使用 findAllIn。对象,否则返回 None。
2023-03-23 15:28:56
556
原创 Scala泛型
相反,逆变表示类型参数能够被隐式地转换为更一般的类型,例如,如果B是A的子类型,则Comparator[A]是Comparator[B]的子类型。协变表示类型参数能够被隐式地转换为更具体的类型,例如,如果B是A的子类型,则List[B]是List[A]的子类型。这里,"
2023-03-23 15:15:00
295
原创 Scala隐式转换
Scala 的隐式转换是一种自动类型转换机制,它可以在编译器自动插入一些代码,。这种转换可以发生在函数调用、赋值、类型转换等多种场景中。隐式转换的机制可以让 Scala 代码更加简洁、优雅。例如,我们可以通过隐式转换实现一些类型之间的转换,而不需要手动编写转换代码。
2023-03-23 14:42:05
655
原创 Scala模式匹配
在 Scala 中,模式匹配是一种强大的语言特性,它可以用于匹配各种类型的值,包括基本类型、集合、对象等,从而实现分支逻辑、类型转换、提取数据等操作。
2023-03-22 21:14:14
696
2
原创 Scala队列和并行集合
在 Scala 中,可以使用并行集合来提高集合操作的执行效率。Scala 标准库中的大多数集合都有对应的并行集合,可以通过在集合类型前加上。的情况下,或者在执行的操作本身就非常快速的情况下。因此,应该根据具体情况选择是否使用并行集合。,提供了并行集合(有别于前面的串行集合),用于多核环境的并行计算。Scala 为了充分使用。前缀来创建并行集合。
2023-03-22 20:04:17
167
原创 Scala集合
"""|new 是关键字|Int 是泛型|10 是数量,确定后不可改变一些常用的操作arr1(0) = 1 // 根据索引赋值,使用小括号,而不是中括号arr1.update(2, 3) // 使用方法,将索引为2的值赋为3println(arr1.mkString(",")) // 字符串格式化输出数组 -> 1,0,3,0,0,0,0,0,0,0for (elem
2023-03-22 18:29:09
538
原创 Scala面向对象
注意:Scala中没有public,一个.scala中可以写多个类,Scala 语法中,类并不声明为public,所有这些类都具有公有可见性(即默认就是public)[修饰符] class 类名 {类体//(1)Scala 语法中,类并不声明为 public,所有这些类都具有公有可见性(即默认就是 public)//(2)一个 Scala 源文件可以包含多个类val|var name:String //一个属性没有初始化,就是抽象属性//只声明而没有实现的方法,就是抽象方法。
2023-03-21 20:44:45
633
原创 Scala函数式编程
3.1 无参,无返回值println("无参,无返回值")test1()3.2 无参,有返回值return "无参,有返回值"3.3 有参,无返回值println(s)3.4 有参,有返回值return s+"有参,有返回值"3.5 多参,无返回值。
2023-03-20 21:13:58
900
原创 Scala流程控制
循环守卫,即循环保护式(也称条件判断式,守卫)。保护式为 true 则进入循环体内部,为false 则跳过,类似于continue。,推荐使用函数式的风格解决break 和continue 的功能,而不是一个关键字。将遍历过程中处理的结果返回到一个新 Vector 集合中,使用 yield 关键字。控制结构来实现 break 和 continue 功能。Scala 内置控制结构特地。,具体返回值取决于满足条件的。表达式其实是有返回值的。代码体的最后一行内容。
2023-03-20 11:20:56
403
原创 Scala实现三元运算符
Scala 中没有三元运算符,但是可以使用类似于三元运算符的表达式来实现相同的功能。你可以使用 Scala 中的。表达式来代替三元运算符。
2023-03-20 09:39:25
506
原创 Scala运算符
Scala运算符的使用和Java运算符的使用基本相同,只有个别细节上不同。运算符运算范例结果正号+33负号b=4;-b-4加5+510减6-42乘3*412除5/51取模取余7%52字符串相加“He”+”llo”“Hello”
2023-03-20 09:25:01
368
原创 Scala数值类型自动转换、强制转换、数值类型和String 类型间转换
当 Scala 程序在进行赋值或者运算时,精度小的类型自动转换为精度大的数值类型,这个就是自动类型转换(隐式转换)。在程序开发中,我们经常需要将基本数值类型转成 String 类型。或者将 String 类型转成基本数值类型。自动类型转换的逆过程,将精度大的数值类型转换为精度小的数值类型。使用时要加上强制转函数,但可能造成。把精度大的数值类型赋值给精度小的数值类型时,就会报错。自动将所有数据转换成精度大的那种数据类型。Int转Byte,注意溢出问题。
2023-03-20 08:59:17
902
原创 Scala数据类型
二 Scala数据类型一 回顾:Java数据类型Java基本类型:char、byte、short、int、long、float、double、booleanJava引用类型:(对象类型)由于Java有基本类型,而且基本类型不是真正意义的对象,即使后面产生了基本类型的包装类,但是仍 然存在基本数据类型,所以Java语言并不是真正意思的面向对象。
2023-03-18 20:10:56
759
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人