自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 问答 (1)
  • 收藏
  • 关注

原创 Flume中的小文件问题

在Flume的官方文档中可以看出, flume是存在小文件问题的(默认10个Event,或者1kb在Hdfs上创建一个文件;

2023-05-16 19:10:17 384

原创 Phoenix如何进行初始化?

(进入zookeeper目录下,进入bin目录,这里会有zkCli.sh脚本,该脚本是启动zk客户端的),(web端也就是core-site.xml文件的所配置的端口号,我这里配置的为9870),,该目录下存放的是hbase大量的启动生成配置信息,不算核心数据。1.首先,因为Hbase是基于Hadoop组件的,所以先在。2. Hbase需要zookeeper实时进行监控,所以。3. 重启hbase,尝试重新连接Phoenix。了(可以采用delete hbase命令)hdfs的web端/目录下。

2023-04-21 00:22:59 256

原创 FlinkSQl

区别:executeSQL直接执行sql语句的接口,接口返回的是一个TableResult executeSQL追踪整个接口调用流程SQLQuery不会真正的执行SQL语句,需要后续调用Table#execute()才会真正执行,接口返回的是一个Table表对象~executeSQL: 返回TableResult结果集~SQLQuery: 返回Table表对象

2023-04-18 21:30:34 302

原创 有关FlinkAPI如何使用IntervalJoin

3. 需求: 源数据从指定的端口中获取, 分别创建员工流数据和部门流数据, 并指定水位线以及提取事件时间字段(流处理环境和并行度略过,该案例的并行度为方便测试设置为1)~~~ 关于IntervalJoin时是哪条流join哪条流,这两条流的先后顺序没有区别,也不会发生数据重复, 因为调用IntervalJoin在底层底层实现的双向调用。~~~ 采用IntervalJoin进行关联,IntervalJoin的前提是两条流的数据都需要先进行keyby分组,这里是按照部门编号分组的。1. 准备一个员工实体类。

2023-04-18 10:56:22 146

原创 [ERR] 1273 - Unknown collation: ‘utf8mb4_0900_ai_ci‘

生成转储文件的数据库版本和要导入sql文件的数据库版本不兼容, 由高版本到低版本,引起1723错误。保存后再次运行sql文件,运行成功。打开sql文件,将文件中的所有。

2023-04-12 18:17:26 279

原创 flink小点

max/min/maxby/minby/sum操作。keyby之后的操作叫做。开窗以后的这些操作叫做。

2023-04-03 18:15:23 53

原创 Flink中max maxby区别

取指定字段的当前的最大值,如果有多个字段,其他字段以最大值那条数据为准;:取指定字段的当前的最小值,如果有多个字段,其他字段以最大值那条数据为准;:取指定字段的当前的最大值,如果有多个字段,其他非比较字段,以第一条为准。:取指定字段的当前的最小值,如果有多个字段,其他非比较字段,以第一条为准。

2023-03-30 10:13:28 169

原创 IDEA三种依赖的生效范围

provided: 对主程序和测试程序有效. 不参与打包(因为依赖是已经提供了的) 只在编译期间有效。test: 对测试程序有效. 不参与打包。compile: 对主程序和测试程序有效. 参与打包。

2023-03-19 22:36:47 179

原创 水位线的特点

``一个水位线, 表示当前时间已经达到了这个时间戳t,代表t时间之前的数据到齐了不会再出现小于这个时间戳的数据。```水位线的内容就是一个时间戳,表示当前事件时间的进展。```水位线可以设置延迟保证正确处理乱序数据。```水位线是插入到数据流的一个标记。```水位线是基于数据的时间戳生成的。```水位线的时间戳必须单调递增。

2023-03-09 10:26:02 94

原创 Flink并行度优先级

默认的最大并行度是近似于operatorParallelism + (operatorParallelism / 2),下限是127,上线是32768.并行度改变会影响任务划分,进而影响task数量,如果taskslots数量不满足要求,会导致任务没有足够的资源分配。setParallelism()设置的并行度需要小于.setMaxParallelism()设置的最大并行度。某些算子无法设置并行度,如socketTextStream。1.代码中设置setParallelism()

2023-03-07 19:15:06 867

原创 Flink提交流程总结

Yarn的ResourceManager启动TaskManager, TaskManager会启动一个TaskExecutor, 并向ResourceManager注册slot, ResourceManager收到TaskManager的请求之后会给TaskExecutor返回分配的slot, TaskExecutor给JobManager提供slot, JobManger向TaskExecutor提交执行。JobMaster: 是JobManager中最核心的组件。注: YarnClient: 客户端。

2023-03-07 17:17:20 193

原创 Flink运行时架构

客户端的工作原理: 调用程序的main()方法,将代码转换成"数据流图",并且最终生成作业图,一并发送给JM. 提交之后,任务的执行和客户端就没关系了.当然客户端是否断开与JM的连接是可以选择的,也可以让继续保持连接.客户端可以随时连接到JobManager,获取当前作业的状态和执行结果,也可以发送请求取消作业。所以JobMaster和具体的Job是一一对应的,多个Job可以同时运行在一个Flink集群中, 每个Job都有一个自己的JobMaster。:客户端不属于处理系统的一部分,只负责作业的提交.

2023-03-07 16:48:22 123

原创 Flink模式

如果TaskManager进程异常退出,JobManager会收到消息并且重新向Yarn ResourceManager 申请资源,重新启动TaskManager。4.TaskManager启动一个线程开始执行. TaskManager会向JobManager报告状态更改,比如开始执行, 正在执行或者已经完成。3.JobManager负责协调资源和作业执行. 资源分配完成之后,任务将提交给相应的TaskManager。3.flink on yarn 有三种模式:会话模式,但作业模式,应用模式。

2023-03-06 20:27:35 222

原创 自定义函数

标量函数: UDF 表示一对一,比如一个小写字母c对应一个大写字母C表值函数: UDTF 表示一对多,一行数据转换为多行数据聚合函数": UDAF 表示多对一,多行数据转换为一条数据

2023-03-03 21:58:22 47

原创 kafka副本概念

​​副本数是2,意思是有2个分区,1个是主分区,1个是从分区​​,​​副本数已把主分区数包含在内。副本数是1 ,意思是就一个分区,同时也是主分区。

2023-02-28 15:35:26 195

原创 Kafka生产者发消息流程

如果Record中的key不为null,默认情况下是根据key的哈希值来确定把消息发送到哪个分区中,相当于只要是key相同的消息都始终会发送到同一个分区中;如果是Record中的key为null,就会使用轮询的分区策略,通过轮询的分区策略来平衡每个分区中的数据。1.kafka生产者会将发来的消息封装为一个record,没有的话就采取粘性分区随机发送其中一个分区。

2023-02-27 21:21:12 101

原创 spark任务的提交流程

第三步,因为在用户代码中,RDD算子会设计大量的转换操作,然后会通过一个动作(action)操作,触发任务的真正执行,在这里会按照RDD与RDD之间的依赖关系,首先会生成一个DAG的有向无环图,图的方向就是RDD算子的操作顺序,最终会将RDD DAG有向无环图发送给DAGScheduler对象;Master收到申请资源的请求后,向指定的worker节点发送请求,然后worker节点会开启对应的executor的进程。Executor进程会向driver发送注册请求,然后申请要计算的task。

2023-02-27 18:41:53 759

原创 HDFS写数据的流程

~~因为数据以管道的方式,顺序的沿着一个方向进行传输,这样能够充分利用每个机器的带宽,避免网络瓶颈和高延迟的连接,最小化推送所有数据的延时。~~~其次,在线性推送模式之下,每台机器所有的出口宽带都用于以最快的方式传输数据,,而不是多个接受者之间分配宽带。~~~ack是确认字符,数据通信中接收方给发送方的一种传输类控制字符,表示发来的数据已确认接收无误。~~~在pipeline管道传输过程中,传输的反方向会进行ACK校验,确保数据传输安全。1.Pipeline管道。

2023-02-24 14:54:25 99

原创 HDFS读数据的流程

1. 首先客户端会通过Distributed FileSysytem 向NameNode发送下载文件的请求,NameNode会做两件事,其一会校验这个客户端请求的合法性,也就是说会确认请求读取的文件是否存在,其二会判断是否有读的权限,如果没有读数据的权限肯定是不能下载的. 如果NameNode判断请求是合法的以及有读取数据的权限,就会返回查询元数据的结果。5.等待到客户端将所有的数据块下载结束之后,会将所有的数据在本地排序并且拼接位一个新文件。

2023-02-23 16:12:59 232

转载 sql优化-count(1) count(*) count(列名)

(2)count(列名): 忽略NULL字段的情况,即为不统计NULL的记录,只统计该字段在表中出现的次数。详尽: count(*): 包括了所有的列数,不会忽略NULL,结果也包含NULL值, 即为求总行数。3.若多个列并且没有主键,count(1)效率优于count(*)(1) count(1): 不会忽略NUll值.记录总行数。2.列名不为主键,则count(1)效率最高。三.生产过程中,count(1)用的比较普遍。2.count(1) count(列名)含义: 都是求表的总行数。

2023-02-23 10:40:55 449

原创 SQL报错信息: org.apache.hadoop.hive.ql.parse.ParseException:line 9:6 cannot recognize input near ‘<EOF>‘

2.报错信息:org.apache.hadoop.hive.ql.parse.ParseException:line 9:6 cannot recognize input near '' '' '' in subquery source。1. 当前使用hive版本:3.1.3。

2023-02-14 20:15:32 892

原创 流处理环境为什么设置ttl?

为什么要设置: 如果我们在数据流上进行分组查询,分组处理产生的结果(不仅仅是聚合结果)会作为中间状态存储下来。随着分组key的不断增加,状态自然也会不断膨胀。但是这些状态数据基本都有时效性,不必永久保留。例如,使用Top-N语法进行去重,重复数据的出现一般都位于特定区间内(例如一小时或一天内),过了这段时间之后,对应的状态就不再需要了。Flink SQL提供的idle state retention time特性可以保证当状态中某个key对应的数据未更新的时间达到阈值时,该条状态被自动清理。

2023-02-05 22:39:16 148

原创 DWD-流量域未经加工的事务事实表(日志分流)

4.简单的ETL以及类型转换 jsonStr -> jsonObj 将脏数据放到侧输出流中。8.将不同流数据写到kafka不同的topic中。5.将侧输出流中的脏数据写到kafka主题中。3.从kafka主题中读取相关设置。错误日志 -> 错误侧输出流。启动日志 -> 启动侧输出流。曝光日志 -> 曝光侧输出流。动作日志 -> 动作侧输出流。页面日志 -> 页面侧输出流。2. 检查点相关的设置。6.修复新老访客标记。

2023-02-03 22:48:47 128

原创 实时项目使用的命令

6.启动phoenix: /opt/module/phoenix/bin/sqlline.py。3.启动maxwell: mymaxwell.sh start。2.启动kafka: mykafka.sh start。4.启动hdfs: myhadoop.sh start。5.启动hbase: start-hbase.sh。7.在phoenix页面查看当前表:!1.启动zk: zk.sh start。

2023-02-02 12:52:57 83

原创 完整的Flink程序基本内容

获取执行环境 (execution environment)~定义数据的转换操作 (transformations)~定义计算结果的输出位置 (sink)~触发程序执行 (execute)~读取数据源 (source)一个Flink程序, -其实就是对于DataStream的各种转换.DataStream API是Flink的核心层API.

2023-01-06 21:44:12 177

原创 HBase—写流程—操作原理

2022-12-31 01:15:12 107 1

转载 Exception in thread “main“ java.lang.RuntimeException: 查询MySQL失败: The connection property ‘useSSL‘ o

首先,如果你的报错信息和我上面的一模一样,那么你肯定是使用了Porperties类去加载mysql的配置文件进行连接的,接着,我们可以看到错误信息中的 property ,这个词的意思是属性的意思,在Porperties类中就有一个获取属性的方法,我们也是用这个方法来拿到配置信息的。然后,我们来看错误信息后面的提示:'useSSL' only accepts values of the form: 'true', 'false', 'yes' or 'no'. The value 'false;

2022-12-26 10:20:02 1754

原创 电脑进程莫名卡死

打卡任务管理器找到该进程并结束 就不再卡了

2022-12-10 02:18:39 169

原创 linux切换root,显示su:鉴定故障问题

当普通用户切换root用户时报错,显示鉴定故障原因:root以前没设置密码或密码输入错误解决办法:使用sudo passwd root命令之后,设置新的密码,就可以正常切换用户了.

2022-12-06 09:55:08 4526

原创 虚拟机防火墙状态

虚拟机,linux,防火墙问题

2022-12-06 09:47:30 2250

原创 hiveserver2总是无故挂掉

原因;一般情况下是默认堆空间过小导致解决措施:将hive(根路径下)/conf/hive-env.xml(也可以是hive-env.sh.template)文件里增加一行配置更改堆大小为512mb或者以上

2022-12-01 01:15:43 1770 1

原创 linux删除文件内容命令

按ESC键,同样确保退出编辑模式,按一下“:”键,然后输入“1,$的”,就可以删除文件中所有内容了口诀:删文件内容,冒1逗多乐d

2022-11-12 02:20:16 761

原创 Flume配置文件source难点详解

有关flume配置详解

2022-11-09 18:49:17 779

原创 yarn服务没启动的解决办法

1.像vim cat tail这些命令2.可以用tail查看最后500行3.比如Hadoopde的yarn集群没启动起来,可以到hadoop目录下,ll可以发现有个logs目录,ll可发现有resource manager日志文件,就可以采用这个命令查看异常:tail 500 + 文件名

2022-11-03 19:51:56 1373

空空如也

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

TA关注的人

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