自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天龙八部

当你回首往事,留下的都是记忆,而不是悔恨。

  • 博客(49)
  • 收藏
  • 关注

原创 裸机器搭建k8s部署 1.28.10版本

问了搭建k8s集群踩了很多坑,问题主要出现在网络插件处,因此主要是master节点操作问题。重新走一下流程整理一下笔记。

2025-01-08 19:02:57 749

原创 Containerd单机使用教程

配置详情生成默认配置。

2025-01-08 11:08:05 756

原创 centos7升级系统内核

安装看k8s的网络插件一直失败,看到有提示可能是系统内核版本太低,抱着试试的心态进行内核升级。文章很多,操作流程都一样,但是很多部分地址下载不下来安装包。

2025-01-08 09:16:15 181

原创 虚拟机配置静态ip后出现两个ip问题

对比其他虚拟机,配置并无不同,一直也很奇怪。最后跟网上的配置对比时 发现是自己的文件配置修改错误 应该将BOOTPROTO="dhcp" 修改为static ,而实际修改成PROXY_METHOD="static" ,导致静态ip不生效。最后解决 修改vi /etc/sysconfig/network-scripts/ifcfg-ens33。通过ip addr 查看出现两个ip,一个是自己配置的静态ip,一个是动态分配的ip。将 BOOTPROTO="dhcp" #dhcp修改为static 后正常。

2025-01-07 14:15:11 466

原创 flink sink kafka的事务提交现象猜想

任务开启后数据可以源源不断的打印出来,感觉不到事务的存在。查询资料发现 kafka的隔离级别默认为读未提交,因此当事务数据没有提交时可以消费到数据,改为事务级别改为读已提交后,在样例1的checkpoint执行完前,消费不到数据。查看flink源码时 sink kafka有事务提交机制,查看源码发现是使用两阶段提交策略,而事务提交是checkpoint完成后才执行,那么如果checkpoint设置间隔时间比较长时,事务不提交,后端就消费不到数据呢?而观察实际现象为写入kafka的消费数据可以立马消费。

2024-12-12 00:28:04 1222

原创 flink-状态

状态是程序运行数据处理的中间数据或缓存数据。在flink中有状态、状态后端和checkpoint概念,三者之间的关系为:状态为数据,状态后端为状态的管理员,checkpoint是管理员将状态数据进行快照的手段。

2024-12-10 23:27:08 1677 5

原创 mysql的mvcc笔记

MVCC,全称Multi-Version Concurrency Control,即多版本并发控制,是一种并发控制的方法,;在并发读写数据库时,可以做到在读操作时不用阻塞写操作,写操作也不用阻塞读操作,提高了数据库并发读写的性能解决脏读、幻读、不可重复读等事务隔离问题,但是不能解决更新丢失问题。

2024-10-20 11:10:24 718

原创 开窗函数整理

大数据大部分是sqlboy,整理一下常用的开窗函数。

2024-08-12 23:05:08 536

原创 flink-触发器Trigger和移除器Evictor

继承Triger,重写抽象方法,案例.print();窗口长24小时,每十秒触发一次计算@Override//定义状态,记录该状态 触发器第一个元素进来时注册全部的触发器//第一次注册,右面全部跳过//注册触发器 间隔10s@Override//使用的事件时间,因此触发窗口的计算@Override@Override。

2024-06-27 01:01:37 1390

原创 flink 处理函数和流转换

flink提供8种不同的处理函数;窗口和流都可以使用1.ProcessFunction 是最基本的处理函数,基于DataStream直接调用process()时作为参数传入;2.KeydProcessFunction:是对流进行分区后的处理函数,基于KeyedStream调用process()时作为参数传入。只有该方法支持定时器功能(onTime);窗口函数,只有窗口可以使用。

2024-06-26 18:25:34 832

原创 flink的窗口

窗口是flink中重要的概念,为了方便高效的处理无界流,将数据切成有限的数据块进行处理;

2024-06-26 09:25:06 1787

原创 虚拟机器centos7无法识别yum 命令异常处理笔记

添加后执行yum 命令正常设置linux本地的客户端DNS的配置文件。DNS可以实现域名和IP的互相解析,而我本地安装虚拟后该文件为空。

2024-02-22 20:12:31 902

原创 部署k8s踩坑记录

k8s部署后冲节点一直是norready

2022-04-05 12:45:06 1633

原创 compareto 排序异常记录

记录一次 compareto使用异常java.lang.IllegalArgumentException: Comparison method violates its general contract!源代码 如下 刚开始执行运行都没有任何问题 上线后也运行了一段时间,知道有一次数据量比较大 出现这个异常,查看日志问题错误发生在这个排序比较的地方@Overridepublic int compare(Integer o1, Integer o2) { return o1.intVa..

2021-05-09 15:06:21 651

原创 dateSet 、rdd 和dateframe 区别

三种数据结构出现的版本顺序RDD (Spark1.0) -->Dataframe(Spark1.3) -->Dataset(Spark1.6)RDDrdd的五大特性 这个用了很多,但是当突然被问到五大特性时,竟然一时卡壳,只记得弹性可分区和容错 ,而血统、依赖和数据本地化并没有归并到特性中,重新查看资料后,发现自己错在把rdd当成一种数据集合, 可分区列表:可以创建指定分区数目,可以生成新的rdd来改变分区数 作用在分区的函数:rdd的计算都是以分区为单位 依赖关系...

2020-09-15 16:35:00 808

原创 spark-sql cli模式下的优化经验

在spark-sql cli模式下只能是纯sql ,这个对于执行过程中的一些操作基本没有操作的可能,因此当出现执行速度很慢时优化难以入手

2020-05-26 23:39:21 702

转载 Spark SQL 之 Join 实现

在这篇文章中:SparkSQL总体流程介绍Join基本要素Join基本实现流程sort merge join实现broadcast join实现hash join实现inner joinleft outer joinright outer joinfull outer joinleft semi joinleft anti join总结文章写...

2020-02-29 17:04:48 191

原创 spark-sql运行脚本报错 tasks bigger than bigger than spark.driver.maxResult

spark-sql执行脚本,导出数据的脚本爆出如下异常;Caused by: org.apache.spark.SparkException:Job aborted due to stage failure: Total size of serializedresults of 1212tasks (10300 MB) is bigger thanspark.driver.maxResul...

2020-02-29 16:49:15 823

原创 spark-sql 堆外内存溢出

运行执行spark-sql 脚本文件,爆出对堆外内存溢出错误如下图,先区分发生异常是executor端还是driver端,我遇到的问题是driver端,因为最后数据导出生成文件,数据会在driver端收集结果集。调节方式有两种,第一种正大driver-memory值,堆外内存计算公式默认是max(0.1*driver-memory ,384M),(executory的的对外内存计算公式也是一样...

2020-02-29 16:32:40 1238 2

原创 spark1.5.1执行spark-sql client执行insert into 报错 解决

原先语句是在spark2.1上执行的sql,现在放到spark1.5上执行执行失败;现象描述:如果没有用insert 直接执行select 语句,是不会报错,执行insert 但是去除exists的子查询,也是不会报错。所以感觉很奇怪,然后将not exists用left anti join 代替 发现spark1.5也不支持。各种尝试后最后在inert into 后面加上table 关键字...

2020-01-07 18:34:21 4086

原创 测试环境csv文件数据导入parquet存储文件后用limit查询报错问题解决

数据导入流程先将oracle数据导出为csv文件,在将csv文件进行删除表头(第一行),删除双引号,替换时间分隔符等操作;然后创建对应表两张,一张表A存储格式textfile,另一张B表存储格式parquet,,先将csv文件导入A表,在通过A表导入B表。最后select count(*) from B ;有数据,但是执行select * from B limit 2 ;执行报错 提示类型问题...

2019-12-26 17:47:33 339

原创 spark-sql导入数据遇到的问题

spark-sql 客户端通过load data local inpath '/xx/xx' into table xx;方式导入,数据来源是oracle导出的csv文件数据导入后遇到下面的问题1,字符串带有双引号问题 通过sed命令直接替删除字段完成;2 , 时间类型格式不正确,导出时没有设定时间格式,如果导出时yyyy/MM/dd HH:mm:ss,二spark支持的是yyyy-...

2019-12-17 16:31:04 975

原创 spark整合hive后spark-sql启动报错

通过spark-sql 来访问hive的元数据,hive元数据信息存储在mysql但是启动的时候是报如下的错误,检查过配置,metastore已经配置,并且启动,用hive启动可以正常使用,但是spark-sql不行,报错信息Hive: Failed to access metastore. This class should not accessed in runtime.org.apac...

2019-12-14 18:24:05 2649

原创 一次测试环境问题记录

目录问题描述解决方法总结问题描述有三张表,A,B,C;其中c表有3百万条数据,a,b表没有数据,第一次,空表在前,大表在后,(常规的优化方案)写法insert into table d select * from a left bon xxx=xxx inner join c on ixxx=xxx;在spark-sql客户端执行,没有指定参数,相当于默认dri...

2019-12-12 14:50:18 261

原创 spark版本升级问题org.apache.spark.Logging

git下面有一个spark项目,用的版本是1.6.2,据说很稳定的一个版本,因为在2.0以后出来一个sparksession整合df和df 于是将spar库版本升到2.4.3,下面是遇到的问题1.升级后找不到org.apache.spark.Logging。 1.6.2中用的trait Logging 找不到org.apache.spark.Logging。 在spark2.4.3...

2019-12-01 22:21:33 2740

原创 spark项目scala版本依赖问题

今天从github上项目,运行一致报错,后来自己写了一个测试程序,竟然也是同样的错,最后发现竟然是scala版本不对 def main(args: Array[String]): Unit = { val conf=new SparkConf().setAppName("AppConf").setMaster("local[4]") val sc=new SparkCont...

2019-12-01 17:06:07 2118

原创 spark源码阅读环境搭建

目录1.环境介绍2.源码编译2.1编译成功的流程3.编译中遇到的问题3.1 在命令行直接执行编译命令3.2 未知失败问题(重新执行后成功)3.3编译成功后本地启动spark-shell4.导入idear5.执行测试案例遇到的问题和解决方法5.1添加依赖5.2 idear执行测试命令1.环境介绍用spark源码2.4.3为例源码下载...

2019-11-30 12:55:35 494

原创 浅谈设计模式

看完《head first 设计模式》这本书,做个笔记方便后面复习。书中最后有几句话印象很深刻--“尽可能的用最简单的方式解决问题,你的目标应该是简单,而不是如何在问题中应用设计模式”。设计原则学习设计模式必须先直到设计原则,因为设计模式是不同场景下设计原则的体现方式 --OO设计原则是 面向对象封装变化:将程序中变化和不变的代码分开,一方面可以复用代码,也能提高代码利用率,并且方便...

2019-11-22 19:21:58 139

原创 hbase入门(一)

hbase是一种nosql数据库,主要存储非结构化和半结构化的数据,是面向列、高性能、面向列、可伸缩、实时读写的分布式数据库。数据存储采用key-value形式的存储,数据类型只有byte,利用hadoop的hdfs作为其存储系统,mapreduce处理hbase的海量数据,利用zookeeper作为分布式协同服务特点:1.海量存储-扩展性能好:2.列式存储:存储格式是列存储,查...

2019-11-17 12:08:46 161

原创 spark-sql cli客户端搭建

网上关于spark-sql的资料很少,刚开始用spark-sql cli时我也好奇怎么还能使用这样的方式?下面就自己试了一下,如果你看到这个文章,你会发现跟不用搭建,可能你只是不知到入口,在集群上启动很简单,进到spark/bin目录下面执行spark-sql,和spark-shell完全相同,这个是在集群中的一台设备上执行的但是有些公司是用spark-sql client模式开发的,不是...

2019-10-16 23:58:19 838

原创 测试环境一次spark-sql执行limit查询失败问题解决

问题描述同事在执行sql查询直接用limit 查看几条数据时发现报错,但是用count或* 查询是显示有数据。第一感觉真的很奇怪,后面发现是马虎的锅;select * from tableName ; 正确显示数据;select * fromtableName limit 2; 查询报错(因为公司日志复制不出来,只好敲出来一部分,剩余上图了)java.lang.Unsupport...

2019-10-16 23:40:16 3286

原创 spark-sql cli模式下driver内存溢出

采用spark-sql启动编程,编写sql执行,但是数据量很少,不到一百条,执行时显示内存溢出,并且是已经显示stage进度条;如果是在编译过程中提示内存溢出,极有可能是driver内存分配的太小,而sql编译后stage太多导致,但是下面的这个是程序用改已经执行了,跟executor-memory有关,和driver没有多少关系了,但是最后的解决方法是加大了driver内存。这一点目前理解不同,...

2019-10-10 15:22:41 1566

原创 java为什么不能多继承问题

最近面试被问到了一个很有趣的问题,java为什么不能多继承,当时懵了,这个问题重来就没有考虑过,一直按照生物学一些类属性划分,来理解记忆;回来后网上查找,为什么java不能多继承,其实也很简单,问题在于功能在于谁实现,使用时能否准确定位是谁做。父类方法有方法体,也就是说能实现功能,子类继承父类,没有重写方法,调用的是父类的功能;假如可以继承多个父类,那么当父类A,B中有同样的方法或参数时,子类...

2019-08-31 13:13:18 642

原创 hive系统学习笔记

目录基本概念解析器交互方式基本操作创建库表数据导入数据的导出常用sql函数hive数据压缩,常用语法 操作分区和分桶数据存储格式建立表与文件的关联方式数据结构 结构化的数据:字段个数一定,字段之间的分隔符一定 半结构化的数据:例如xml,json等 非结构化的数据:没有任何规律格式的数据基本概念本质:将sql...

2019-08-27 23:12:32 820

原创 hive优化

hive优化hive本质上将sql语句解析成mapreduce程序运行,对于mapreduce的优化同样也会对hive sql的运行起到一定的优化作用,优化的大致思路大致目标是:增加任务线程来处理、避免数据倾斜1.增加任务线程来处理增加reduce数量 reduce数量计算公式:N=min(最大的reduce数,总输入数据量/每个reduce的处理数据大小) 每个Redu...

2019-08-27 19:29:29 829

原创 scala中方法和函数的去区别

方法的定义def m1(x:Int,y:Int):Int =x*ydef:当以方法的关键字m1:方法名(x:Int,y:Int):参数列表,两个参数,x和y类型都是Int,:Int :返回值类型,如果没有返回值用unit表示 方法的返回值可以不指定返回类型,编译器可以自动推断出来,但是对于递归函数,必须指定返回类型函数的定义val f1 :(x:Int,y:Int)=&...

2019-08-23 18:11:51 257

原创 springboot整合kafka消息发送失败问题-版本不匹配问题

今天测试kafka,发现高版本的springboot整合kafka消息发送失败,低版本就可以,刚看是查了好久,就是没找到问题,查到有人说是版本不匹配问题,于是更换成springboo 1.5.13,成功了,亲测springboot2.1.0也可以先测试的是boot2.0.1的版本,同样的代码使用boot的1.5.13就是ok的,具体什么原因不清楚,debug页面也买看到错误iserver...

2019-08-23 15:18:53 2898

原创 类加载过程整理

类加载的流程分7个阶段分别是:加载-->验证-->准备-->解析-->初始化-->使用-->卸载其中:加载-->验证-->准备,初始化,卸载这5个的加载顺序不能变类的加载通过类的全限定名获取类的二进制字节流 获取字节流可以从jar、zip、war等文件 网络中获取 运行时计算生成,如动态代理 其他文件生成,如jsp ...

2019-08-22 22:24:18 206

原创 yarn资源调度笔记

目录yarn资源调度架构图主要组件主要访问端口任务调度常用的参数yarn资源调度yarn主要就是为了调度资源,调度分两级一级调度管理 计算资源管理(CPU,内存,网络IO,磁盘) Appmaster生命周期管理 (每一个应用执行的情况,都需要汇报给ResourceManager) 二级调度管理 App内部的计算模型管理 (AppMaster的任...

2019-08-22 20:17:03 269

原创 flume日志采集系统

目录flume日志采集系统1.运行机制1.1组件介绍 1.2简单使用配置1.3flume拦截器1.4自定义拦截器高可用方式负载均衡关于各个组件的详细配置可以参考https://www.cnblogs.com/moonandstar08/p/6284243.htmlflume日志采集系统1.运行机制agent是flume的核心角色。每...

2019-08-22 18:32:50 280

空空如也

空空如也

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

TA关注的人

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