自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(93)
  • 收藏
  • 关注

原创 通用数据存储结构以及他们的时间复杂度

数据结构 查找 插入 删除 遍历 数组 O(N) O ( 1 ) O ( N ) --- 有序数组 O(logN)(二分查找) O(N) O(N) O(N) 链表 O(N) O(1) O ( N ) --- 有序链表 O(N) O ( N ) O(N)...

2019-03-24 10:39:22 437

原创 Java实现Hive UDF详细步骤 (Hive 3.x版本,IDEA开发)

Java实现Hive UDF的详细步骤,用IDEA开发,Hive3.x版本实现方案

2023-11-01 17:19:11 2137

原创 springboot 定时任务基础模板

springboot 定时任务,基础班,多线程版

2022-12-22 14:44:29 536 1

原创 more than one ‘primary‘ bean found among candidates: xxxTransactionManager

多事务管理器如何实现以及遇到的问题排查过程

2022-09-15 16:08:31 4185

原创 springboot 使用多数据源 + 多事务管理器

Springboot帮我们做了很多事情, 但是其实明白里面的设计还是比较重要的, 至少你从0搭建一个代码框架的时候不会有太多问题。记录一下自己的问题,也希望能够帮助到正在学习的各位。

2022-09-13 15:50:16 2367

原创 Canal安装部署详细步骤

canal安装部署

2022-04-29 16:19:04 7512

原创 Azkaban自定义用户管理 CustomUserManger

背景公司外部项目不允许azkaban的用户名和密码存在于azkaban的配置文件中azkaban-users.xml,于是翻看azkaban文档,发现可以自定义用户管理。那么就开干。但是由于azkaban文档过于简单,起初还是遇到好一些问题。搭建项目idea新建项目,自己命名即可。 我这里用的名字是 azkaban-user-manager引入所需要的POM依赖。 <!-- https://mvnrepository.com/artifact/com.linkedin.azkaban

2022-04-26 13:56:01 2543

原创 MySQL MAX()函数针对VARCHAR类型的问题

问题描述我们的系统某一处业务逻辑需要查询某个表里面一个字段的最大值。sql不难,就是一两个join。 一直运行没有问题。 但是某一天,突然发现这个地方有点问题,没有查询出来想要的结果。 导致用户无法选择想要的任务。问题排查找过来之后,第一直觉是他的操作有问题,但是仔细确认之后,发现用户的操作并没有问题。数据本身是有的,但是并没有被查询出来。于是就找到这段SQL,拿出来,去数据库查询一下。发现确实没有得到正确的结果。那么很明显问题就是出在这段SQL上。但是发现这部分逻辑在开发环境上无法复现,察觉到不

2022-04-22 17:57:07 2857 2

原创 DolphinScheduler本地开发环境搭建

DolphinScheduler本地开发环境搭建

2022-04-19 23:09:07 2551 1

原创 Shell命令之nohup: 如何做到将进程放到后台运行

命令使用场景在使用shell窗口启动服务进程的时候,有些进程需要在关闭shell窗口的情况下依然保持运行状态在使用shell窗口执行脚本任务的时候,有时候需要任务在后台运行,不阻碍马上使用命令行。命令解释nohup:运行命令,忽略挂起信号。Run COMMAND, ignoring hangup signals.默认输出日志到 nohup.out If standard output is a terminal, append output to ‘nohup.out’ if possi

2022-04-14 18:20:31 2030

原创 java操作hdfs报错:Operation category READ is not supported in state standby

报错信息INFO o.a.h.i.retry.RetryInvocationHandler 236b33af11c8ab85a731ef390ef31cbe - Exception while invoking getFileInfo of class ClientNamenodeProtocolTranslatorPB over xxxxxxxxxx:8020 after 6 fail over attempts. Trying to fail over after sleeping for 200

2022-04-12 13:49:00 3043

原创 Flinksql kafka connector连接失败 Could not find any factory for identifier ‘kafka‘ that implements

问题测试flink sql连接kafka, 启动 sql-client.sh之后,想要建立一张kafka的表CREATE TABLE pageviews_per_region ( id STRING, name string, age string, address string) WITH ( 'connector' = 'kafka', 'topic' = 'canal_cdc', 'properties.bootstrap.servers' = 'xxx.xx.x.x

2022-03-30 12:19:30 2933

原创 datax 同步hive表到其他数据源的时区问题

datax, hive, impala

2022-03-21 16:29:10 2967

原创 Hive常用函数 - abs

hive常用函数知识点

2022-03-21 11:56:48 3332

原创 Spark Container killed by YARN for exceeding memory limits. 11.1 GB of 11 GB physical memory used

公司 SparkSql运行出现问题 同事要求帮忙排查下原因日志:19-10-2021 10:12:06 CST SPARK_SQL-1632390310963 INFO - SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.19-10-2021 10:12:06 CST SPARK_SQL-1632390310963 INFO - SLF4J: Actual binding is of typ

2021-10-21 16:43:04 1227

原创 SpringBoot @Async 异步方法内部再调用异步方法

异步方法背景代码提示背景系统有一个接口,业务比较复杂,执行耗时会很长时间,但是前端页面需要很快返回结果。使用@Async注解,将执行耗时很长的逻辑异步处理。不过这个异步处理逻辑里面又需要依次去执行一系列执行耗时很长的逻辑。 最后需要对这些耗时较长任务的执行结果做一些处理。伪代码:@Async("xxxx")public void xxxx(){ //做一些增删改查 doSomethings() for(xxx xx : xxx{ //这个操作很耗时间,且for次数比较多,如果依次执行

2021-09-15 22:54:10 5715 3

原创 java FtpUtils 自用

maven依赖<dependency> <groupId>commons-net</groupId> <artifactId>commons-net</artifactId> <version>3.6</version></dependency>import com.google.common.collect.Lists;import lombok.extern.slf4j

2021-08-26 15:59:26 364

原创 线上canal问题排查:CanalParseException: column size is not match,parse row data failed

一、背景现象背景:公司flink任务出现问题,数据没有写入到结果库中。于是立马去查看flink任务,在web页面,没有任何异常,没有exception,checkpoint也正常,反压也没有。那问题就不出在我程序的问题上了。矛头直指环境问题二、环境排查首先去查看了flink的taskManager打印的日志,发现数据消费到了某一个时间段,后续就再也没有数据进来了。说明数据没有到flink程序,所以源头就出了问题。检查了一下 kafka,发现没有消息积压,而且消费速率也正常。那么问题也不出在k

2021-07-20 16:42:56 2721

原创 Flink任务 checkPoint失败 问题排查记录

背景公司有一个实时报表项目,需要使用到flink来进行处理。处理逻辑大概如下:需要使用canal监控多张表,然后进行一些复杂计算。程序设置flink程序代码里面设置了 checkPoint和自动重启机制//checkpoint配置env.enableCheckpointing(300000);env.getCheckpointConfig().setCheckpointingMode(CheckpointingMode.EXACTLY_ONCE);env.getCheckpointConf

2021-06-17 15:40:33 8382 9

原创 Mybatis持久层 if标签 对于 Integer类型的正确判断方式

Mybatis持久层 if标签 对于 Integer类型的正确判断方式

2021-03-12 15:07:24 1334 2

原创 MapStruct 实用java实体映射工具

实体映射工具maven依赖: <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-jdk8</artifactId> <version>${org.mapstruct.version}</version> </dependency> <dependency> <groupId&g

2021-01-12 14:42:47 331

原创 Leecode-191 位1的个数 (引发了对于有符号、无符号、>>、>>>)的思考

题目编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。提示:请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。 在 Java 中,编译器使用二进制补码记法来表示有符号整数。因此,在上面的 示例 3 中,输入表示有符号整数 -3。link思路1首先想到的 其实就是有没有一种库

2020-11-27 15:42:41 131

原创 RDD 的概念和五大特性理解

RDD 概念A Resilient Distributed Dataset (RDD), the basic abstraction in Spark. Represents an immutable,partitioned collection of elements that can be operated on in parallel. RDD 是一个弹性分布式数据集 DataSet;是一个抽象类;表示一个可以进行并行操作的元素的不可变集合。DataSet 可以理解成一个集合,集合

2020-11-01 11:36:05 1504

原创 Object类中 equals方法和hashCode方法的作用!

起源先来看看 object里面的两个方法的代码块/** * Indicates whether some other object is "equal to" this one. * <p> * The {@code equals} method implements an equivalence relation * on non-null object references: * <ul> * <li>I

2020-10-16 14:48:10 435

原创 Leecode 二叉树的前、中、后序遍历解法

题目给定一个二叉树,返回它的 前序 遍历。给定一个二叉树,返回它的 中序 遍历。给定一个二叉树,返回它的 后序 遍历。但是很明显,如果是递归写法,十分简单,不会是中等难度了题上也明确表示了,写 迭代算法 public List<Integer> preorderTraversal(TreeNode root) { }ps : 这三道题的题号分别是144,94,145什么是二叉树百度直达链接 二叉树前序、中序、后序前序: 先输出根节点,然后输出左孩子节点,然后输出右

2020-09-30 15:17:50 141

原创 Leecode 17 电话号码的字母组合

题目:给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:“23”输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”].说明:尽管上面的答案是按字典序排列的,但是你可以任意选择答案输出的顺序。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/letter-combinations-

2020-08-26 17:20:08 167

原创 Leecode 347. 前 K 个高频元素 由此引发的对于优先级队列 最大堆&最小堆的思考

题目描述给定一个非空的整数数组,返回其中出现频率前 k 高的元素。示例 1:输入: nums = [1,1,1,2,2,3], k = 2输出: [1,2]示例 2:输入: nums = [1], k = 1输出: [1]link思路首先,题目中有”前 k 高“这样的字眼,应该很自然地联想到优先队列。(只要有“前K” 都可以联想下优先级队列)那出现频率怎么统计呢,我们既要保留原数组的元素,还要统计它出现的频率。那么很明显,需要一个map来存放<元素,元素出现的频率>

2020-08-07 11:38:39 161

原创 Leecode 207. 课程表

题目你这个学期必须选修 numCourse 门课程,记为 0 到 numCourse-1 。在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们:[0,1]给定课程总量以及它们的先决条件,请你判断是否可能完成所有课程的学习?来源:力扣(LeetCode)链接著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。/** * @ClassName CanFinish * @Description 你这个学期必须选修 nu

2020-08-04 23:01:56 117

原创 sql开窗函数初体验

目录一、定义:1.1 使用group by进行查询1.2 使用开窗函数1.3 使用ORDER BY1.4 rows关键字 指定窗口范围二、多种分析函数的使用2.1 min函数2.2 sum开窗函数2.3 first_value开窗函数2.4 last_vlaue开窗函数2.5 lag函数2.6 lead函数2.7 row_number函数2.8 rank开窗函数2.9 dense_rank开窗函数hive同样可以使用开窗函数 十分方便,但是就是mapreduce是真的慢一、定义:开窗函数用于为行定义一

2020-07-26 19:45:33 424

原创 SQL中join句子中使用on和where的区别

目录预备知识提要join子句中 ON和WHERE的区别left joinright joinfull joininner join预备知识提要SQL join 用于把来自两个或多个表的行结合起来。下图展示了 LEFT JOIN、RIGHT JOIN、INNER JOIN、OUTER JOIN 相关的 7 种用法。图片来自菜鸟教程left join: 两个表join的时候,即使右边的表没有匹配中条件,左边表都会返回该行。 就是说不管怎么样 左边都会返回所有行,而右表只会返回匹配中的行,其余的都为

2020-07-22 16:30:43 409

原创 java中子类父类的各种加载关系(附代码)

前提知识提要父类与子类继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。继承的特性子类拥有父类非 private 的属性、方法。子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。子类可以用自己的方式实现父类的方法。Java 的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如 A 类继承 B 类,B

2020-07-21 11:20:09 576 1

原创 Leecode 148. 排序链表

题目描述在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。示例 1:输入: 4->2->1->3输出: 1->2->3->4示例 2:输入: -1->5->3->4->0输出: -1->0->3->4->5来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/sort-list著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请

2020-06-29 18:08:33 4928

原创 LeeCode 215. 数组中的第K个最大元素

题目:在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例 1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例 2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4说明:你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/kth-largest-el

2020-06-19 17:40:43 136

原创 Leecode 33. 搜索旋转排序数组

目录题目:分析:代码题目:假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。你可以假设数组中不存在重复的元素。你的算法时间复杂度必须是 O(log n) 级别。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/search-in-rotated-sorted-ar

2020-06-15 22:53:28 116

原创 Leecode-15 三数之和

题目要求:给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/3sum示例:给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[[-1, 0, 1],[-1, -1, 2]]思路:一很明显,

2020-06-12 16:40:13 132

原创 Leecode-739 每日温度

目录题目要求:思路1:代码:思路2:代码:题目要求:根据每日 气温 列表,请重新生成一个列表,对应位置的输出是需要再等待多久温度才会升高超过该日的天数。如果之后都不会升高,请在该位置用 0 来代替。例如,给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是 [1, 1, 4, 2, 1, 1, 0, 0]。提示:气温 列表长度的范围是 [1, 30000]。每个气温的值的均为华氏度,都是在 [30, 100] 范围内的整数。思

2020-06-02 23:27:05 139

原创 Leecode-567 字符串的排列

题目描述给定两个字符串 s1 和 s2,写一个函数来判断 s2 是否包含 s1 的排列。换句话说,第一个字符串的排列之一是第二个字符串的子串。示例1:输入: s1 = “ab” s2 = “eidbaooo”输出: True解释: s2 包含 s1 的排列之一 (“ba”).示例2:输入: s1= “ab” s2 = “eidboaoo”输出: False思路第一眼看到这个题 暴力解法在脑海里面就散开了直接罗列s1的所有字符的排列组合,然后每个组合都去跟s2匹配,看看是否在s2中存

2020-05-27 18:22:13 176

原创 Leecode-974 和可被 K 整除的子数组

题目描述给定一个整数数组 A,返回其中元素之和可被 K 整除的(连续、非空)子数组的数目。示例:输入:A = [4,5,0,-2,-3,1], K = 5输出:7解释:有 7 个子数组满足其元素之和可被 K = 5 整除:[4, 5, 0, -2, -3, 1], [5], [5, 0], [5, 0, -2, -3], [0], [0, -2, -3], [-2, -3]代码: public int subarraysDivByK(int[] A, int K) { Ma

2020-05-27 16:32:47 154

原创 Leecode 560 和为K的子数组个数

题目说明:给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数。示例 1 :输入:nums = [1,1,1], k = 2输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。说明 :数组的长度为 [1, 20,000]。数组中元素的范围是 [-1000, 1000] ,且整数 k 的范围是 [-1e7, 1e7]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/subarray-sum-equals

2020-05-15 11:35:00 247

原创 Spark standalone初体验2 -Spark 提交任务设置参数

Spark 提交任务设置参数MASTER=spark://rhel731:7077 spark-shell --executor-cores=3 --total-executor-cores 9MASTER参数指定 集群的master--executor-cores是每个executor使用的cpu核数--total-executor-cores是该任务所有executor总共使用的cpu核数--executor-memory 是指定每个executor(执行器)占用的内存如果不指定参数,那

2020-05-14 16:48:01 395

空空如也

空空如也

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

TA关注的人

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