- 博客(225)
- 资源 (2)
- 问答 (2)
- 收藏
- 关注
原创 flink 自定义kudu connector中使用Metrics计数平均吞吐量,并推送到自定义kafkaReporter
ps:kudu写入实际指标包含2个,一个是每分钟流量,在try代码块中,一个是每分钟错误数量,在catch代码块中flink-conf.yaml配置。
2024-10-29 17:07:40
680
原创 k8s metrics-server服务监控pod 的 cpu、内存
修改components.yaml配置文件,在 containers 的 args 参数中增加。docker无法拉取镜像,先拉取到本地,yaml中配置的imagePullPolicy策略为。
2024-06-13 15:09:01
966
原创 以hive metastore报错举例,远程调试hadoop服务
在idea上配置remote debug即可远程调试程序。根据脚本,metastore服务是采用。
2024-06-03 15:18:38
654
1
原创 Waiting for table metadata lock引发java.sql.SQLException: No operations allowed after statement closed
mysql中如果一个表产生了Waiting for table metadata lock,针对表的任何操作都会被锁住,包括select,可以通过配置参数lock_wait_timeout减少等待时长。原因是存在未提交事物,阻塞DDL,继而阻塞所有同表的后续操作。DDL操作(表是一个分区表,通过自动化脚本定时新增分区)查找未提交事务id,kill。
2024-06-03 14:32:07
332
原创 gitlab pull拉取失败,报错Access denied. The provided password or token is incorrect
吐槽:报错显示密码错误加上不久前改了密码,我陷入深思,密码到底是什么?然并软,提示不友好。直至在stackoverflow上翻一翻,然后检查了一下,原来是Personal Access Tokens过期了。删除令牌,再拉取一下代码,弹出窗口填入令牌。
2024-05-27 10:22:01
824
原创 hive “Struct is not null“ gets evaluated as nullable always causing filter miss in the query
对比执行计划:在关闭cbo后,才会添加过滤。1.升级hive版本或者修改源码。2.在执行时sql时禁用CBO。通过查看执行计划,排查。
2024-05-25 12:21:15
275
原创 flink 设置空闲等待推进水位线,避免子任务上游最小的水位线迟迟未达到触发时间
此时,如果有其中一个子任务没有数据,导致当前Task的水位线无法推进,窗口无法触发,需要等待上游最小的水位线达到触发时间。于是,flink添加了。多并行度的flink作业,watermark水位线的传递遵循。checkIfIdle()方法用于判断是否触发水位线推进。在设置WatermarkStrategy时,添加。
2024-03-03 12:16:03
684
原创 flink 报错ByteArraySerializer is not an instance of org.apache.kafka.common.serialization.Serializer
存在依赖冲突,把conf目录下flink-conf.yml中的classloader.resolve-order参数由默认的child-first改成parent-first。代码逻辑为从socket流中读取数据写入kafka。查看flink作业日志。提交到yarn集群后报错。
2024-03-02 19:48:05
1091
原创 生产环境下,应用模式部署flink任务,通过hdfs提交
通过通过yarn.provided.lib.dirs配置选项指定位置,将flink的依赖上传到hdfs文件管理系统。
2024-02-19 21:03:24
721
原创 ktutil编写生成keytab文件的脚本、通过keytab文件认证用户
示例:为密码123456的hive用户,生成名称为hive.keytab的认证文件。生成keytab文件的脚本。
2024-02-18 23:23:53
1062
原创 Nginx 缓存集成、清除、设置不缓存资源
使用缓存的优点在于减少数据传输,节省网络流量,加快响应速度;减轻服务器压力;提供服务端的高可用性;缺点在于数据的不一致问题;增加成本Nginx作为Web缓存服务器,介于客户端和应用服务器之间,当用户通过浏览器访问一个URL时,web缓存服务器会去应用服务器获取要展示给用户的内容,将内容缓存到自己的服务器上,当下一次请求到来时,如果访问的是同一个URL,web缓存服务器就会直接将之前缓存的内容返回给客户端。
2024-02-08 18:36:51
3209
1
原创 NGINX upstream、stream、四/七层负载均衡以及案例示例
伴随单台服务器性能及单点故障问题的凸显,一方面需要增加系统的硬件处理能力,另一方面需要添加机器构建应用集群应用集群:将同一应用部署到多台机器上,组成处理集群,接收负载均衡设备分发的请求,进行处理并返回响应的数据负载均衡器:将用户访问的请求根据对应的负载均衡算法,分发到集群中的一台服务器进行处理。
2024-02-08 11:30:19
4018
原创 flink 从savepoint、checkpoint中恢复数据
flink作业因为故障导致restart strategy失败或升级flink版本重新发布任务,这时就需要从最近的checkpoint恢复。一般而言有两种方案,第一种方案是开启checkpoint且任务取消时不删除checkpoint(调整参数execution.checkpointing.externalized-checkpoint-retention),第二种方案是定时触发savepoint(编写代码调用flink rest api)。
2023-04-01 10:58:22
2805
原创 yum install报错 cyrus-sasl-devel-2.1.26-23.el7.x86 64 was supposed to be installed but is not!
在正常的服务器上把rpm包下载到本地目录(注意:只有在当前服务器未安装时有效,已经安装可yum remove后重新安装)自制的yum源,在一台服务器上安装cdh客户端时,执行。在其他节点上安装正常,大概率是服务器环境的问题。scp命令分发到对应服务器上。
2023-03-28 10:24:32
1486
原创 flink sql作业报错Timeout of 60000ms expired before the position for partition xxx could be determined
新增流作业,将kafka集群的数据通过flink sql写入hdfs,所有的flink作业均出现订阅的topic某个分区超时;(3)查看页面,找到出现异常的taskmanager所对应的域名,通过ping和telnet命令测试是否网络正常,发现不通,生产环境存在2套网络,(一套管理ip、一套服务ip),域名映射出错。(2)连接kafka对应的zookeeper客户端,找到kafka连接超时分区的leader对应的服务器ip。打通此节点和cdh集群之间的网络,配置正确的域名映射。
2023-03-26 11:05:52
3028
原创 ambari搭建HDP集群后修改存储元数据的mysql数据库配置
ambari搭建HDP集群后,存储元数据的mysql数据库由单点改为集群后,需要修改ambari配置。(2)修改数据库配置文件ambari.properties中mysql配置。(1) 进入参数配置目录。
2022-08-23 06:59:45
1236
原创 spark Spark Streaming、kafka数据源Direct模式、 自定义数据源
Spark Streaming广泛运用于流式数据的处理(准实时、微批次的数据处理框架)。使用离散化流(discretized stream)作为抽象表示,即DStream。DStream 是随时间推移而收到的数据的序列。在内部,每个时间区间收到的数据都作为 RDD 存在,而DStream是由这些RDD所组成的序列。典型的流式数据输入源就是kafka本文使用的spark版本3.0.0需要继承Receiver,并实现onStart、onStop方法来自定义数据源采集。...
2022-08-14 17:25:57
917
2
原创 jvm 类和类加载器 、双亲委派模型、自定义类加载器
如java.lang.Object,存放在rt.jar中,无论哪个类去加载,最终都是委派给模型最顶端的启动类加载器进行加载,因此Object类在程序的各种类加载器环境中都是同一个类,反之不使用双亲委派模型,会造成系统存在多个Object类出现混乱。其工作过程是:如果一个类加载器收到类加载的请求,首先不会自己去尝试加载这个类,而是把这个请求委派给给父类加载器去完成,每一个层次的类加载器都是如此,因此。(除了顶层的启动类加载器,其余加载器均有自己的父类加载器。每个类加载器拥有一个独立的类名称空间。...
2022-08-10 09:24:23
16249
原创 spark RDD转换算子 sample
随机数是通过复杂的数学算法得到的,随机种子(Random Seed)就是这些随机数的初始值。具体实现:根据种子和随机算法算出一个数和第二个参数设置几率比较,小于第二个参数要,大于不要。第二个参数:每条数据抽取的几率,范围在[0,1]之间,0:全不取;第二个参数:重复数据的几率,范围大于等于0.表示每一个元素被期望抽取到的次数。第一个参数:抽取的数据是否放回,false:不放回。第三个参数:随机数种子(随机数不随机:随机算法)第一个参数:抽取的数据是否放回,true:放回;第三个参数:随机数种子。...
2022-08-08 10:12:02
473
原创 scala 并行集合、并行并发、线程安全问题、ThreadLocal
ThreadLocal中填充的变量属于当前线程,对其他线程而言是隔离的。ThreadLocal。Scala提供并行集合,用于多核环境的并行计算,充分使用多核CPU。,每个线程访问自己内部的副本变量。因此不存在线程安全问题。所导致的数据冲突问题。...
2022-08-02 16:46:41
995
原创 scala reduce、reduceLeft 、reduceRight 、fold、foldLeft 、foldRight
如sum函数统计List中所有元素的和;在scala底层采用两两聚合,聚合结果的类型与reduce方法的返回值类型相同。如合并2个map并key相同的求和。,集合遍历的方向是从右到左。,对集合中的元素执行算子。,对集合中的元素执行算子。fold函数的本质是。第一个参数表示初始值。...
2022-08-02 14:44:39
467
原创 远程调试 idea配置remote debug、在远程服务器的程序中,添加JVM启动参数-Xdebug
在本地开发的程序运行在服务器上报错且缺少日志信息甚至没有错误日志时,需要通过远程调试来调试服务器上的程序。
2022-07-27 07:16:30
72015
1
原创 scala 不可变Map 、 可变Map 、Map转换为其他数据类型
scala中Map是一种可迭代的键值对(key/value)结构。所有的值都可以通过键来获取。Map中的键都是唯一的。
2022-07-26 07:42:14
1083
原创 java 继承中子类和父类同名的属性和方法的使用、重载
类当中,多个不同的方法,但是方法名一致,参数列表不一致(参数个数、参数顺序、参数类型)由于getI()是调用B1类中的,所以使用的属性i为B1类中的属性。(多态中,成员变量编译和运行参考左边(引用型变量所属的类))对对象属性的调用,是没有动态绑定技术的,上诉例子中,在实际调用重载的方法时,会。B为A的子类,若使用。,然后调用方法,即采用。...
2022-07-22 11:01:02
57160
1
原创 kafka 自定义Interceptor(通过拦截器对消息进行定制化处理)
第一个interceptor会在消息发送前将时间戳信息加到消息value的最前部;第二个interceptor会在消息发送后更新成功发送消息数或失败发送消息数到控制台。参数指定多个interceptor按序作用于同一条消息从而形成一个。producer生成消息时,interceptor使得用户在。对消息做定制化处理。注producer将按照指定顺序调用拦截器,并。,确保在消息被序列化以及计算分区前调用。方法会运行在用户主线程中,封装进。可获取配置信息,初始化调用一次。关闭拦截器,执行资源清理工作。...
2022-07-21 08:09:39
53029
原创 scala 函数&方法、函数&方法的实现原理
可以赋值给一个变量。scala中的方法跟Java类似,方法是组成类的一部分。scala中的函数则是一个完整的对象。类中的方法可以重载和重写,而函数没有重载和重写的概念,但是函数可嵌套使用。(3)所谓的方法,就是类中方法,无需进行任何改变。把上诉scala代码(main函数内部的。(1)所谓的函数,就是在对象中生成。(2)所谓的嵌套函数,实际上是。嵌套函数test()方法,并自动增加后缀。...
2022-07-19 17:20:48
52706
原创 scala Breaks.break()、Breaks.breakable()、控制抽象
然而一旦抛出异常,逻辑无法继续执行,需要结合。scala中,函数作为参数,且无参无返回值。scala中没有break关键字,采用。注函数的参数列表,如果是。查看breakable源码。则可以传递代码逻辑,这种。跳出循环,实现原理是。抛出异常改变逻辑顺序。...
2022-07-19 15:33:48
52763
原创 scala Object关键字声明的类直接调用方法、伴生对象
静态语法不是面向对象的,所以scala中没有静态语法,为了和java兼容,所以。使用Object关键字声明的类,如Student,可。Object声明的类中伴随着类所产生的单例对象。Student,会产生2个类文件,一个就是。可以返回对象,而这个对象只有一个,称之为。,无法直接构建对象,在类的内部通过。通过类名直接访问方法。实际使用的是单例对象。...
2022-07-15 15:46:38
52890
原创 scala for循环 (循环守卫、 循环步长、循环嵌套 、引入变量、循环返回值、循环中断 Breaks)
scala所有的表达式都是有返回值的,但是返回值并不一定都是有值的,循环时可以增加条件来决定是否继续循环体的执行(建议第二种方式),yield关键字会把每次循环结果放置在一个新的结果中。若需要将for循环的结果作为返回值使用,需要采用。提供2种循环嵌套的方式(建议第二种方式)scala的集合可设定循环的增长幅度。......
2022-07-15 14:12:54
75372
原创 scala 分支控制 (单分支、双分支、多分支)、 分支判断的返回值
输入年龄,如果年龄小于18岁,则输出“童年”。如果年龄大于等于18且小于等于30,则输出“青年”,如果年龄大于30小于等于50,则输出”中年”,否则,输出“老年”scala中如果逻辑代码只有一行,花括号可省略,若需要三元运算符,可使用。(1)下面代码中的变量result类型为Any类型,用于匹配不同分支的执行结果。,需要在执行之前将数据类型确定,编译器在编译时就会考虑多种情况下的通用方案。(2)下面代码中的变量result类型为String类型。视为一个整体,返回值为Unit,被赋予变量b。...
2022-07-15 10:43:26
53109
原创 linux上 选择所需的版本,安装Node.js 、which指令在环境变量设置的目录里查找符合条件的文件
在linux服务器上安装Nodejs node.js官方下载,选择所需的发行版(Node.js 12.18.0)即 通过或者获取 解压 进入解压目录 设置环境变量添加 查看node的版本,观察是否安装成功注:在服务器上之前有安装node.js,需要清理,这里删除环境路径下的连接......
2022-07-12 15:47:04
72668
原创 Command execution failed.: Cannot run program fpm异常、编译ruby安装fpm工具
问题: maven打包报错原因: 执行命令,发现没有安装fpm工具解决: fpm打包需要用到rpmbuild工具 删除yum源安装的老版本ruby 从ruby官网下载ruby-2.5.9版本的源代码包 把下载的包编译安装到/home/software/下 建立软连接 查看对应版本 使用gem安装fpm,版本为1.9.3 建立软连接 查看对应版本...
2022-07-12 14:49:29
73462
原创 Too many files with unapproved license异常、使用-Drat.skip=true跳过 或者 对没有授权的文件开头添加授权
问题:原因: 使用apache-rat-plugin,代码中存在许多文件没有获得许可解决: 在maven命令后添加参数 或者 读取报错中的文件,找到在没有授权的文件开头添加
2022-07-12 12:19:32
75806
1
oracle insert操作没有cdc对应的归档日志
2021-06-01
TA创建的收藏夹 TA关注的收藏夹
TA关注的人