- 博客(24)
- 资源 (4)
- 收藏
- 关注
原创 数据血缘之 prestosql 事件监听器一
网上都是presto的事件监听器 ,这里改写为prestosql的监听器一、Event Listenerpresto 监听sql执行获取元数据信息Query creation查询建立相关信息Query completion (success or failure)查询执行相关信息,包含成功查询的细节信息,失败查询的错误码等信息Split completion (success or failure)split执行信息,同理包含成功和失败的细节信息.二、实现1.实现EventListene
2021-04-21 17:31:52 437
原创 记录使用docker安装clickhouse
记录使用docker安装clickhouse1 创建本地目录 /opt/ck下面mkdir conf data log2 .下载imagedocker pull yandex/clickhouse-server3 创建临时容器docker run --rm -d --name=clickhouse-server –ulimit nofile=262144:262144 -p 18123:8123 -p 19009:9009 -p 19000:9000 yandex/clickhouse-s
2021-03-12 13:51:35 265
原创 flink canal-format 解析多表binlog的bug解决方案
flink canal-format 解析多表binlog的bug解决方案版本flink1.12.0基于flink1.13 master版本进行修改编译 因为1.13 尚未正式发布版本flink1.12.0基于flink1.13 master版本进行修改编译 因为1.13 尚未正式发布前置问题在使用时候 配置’canal-json.table.include’ 并不能正确的过滤掉指定表的binlog ,在解析那步会报错,比如 我想读取 canal-json.table.include = ‘a’
2021-01-08 15:24:20 1066
原创 spark 知识点一
1、一个jar包就是一个application2、一个行动算子操作就是一个job3、一个job包含多个stage ,宽依赖和action决定4、一个stage包含多个task(taskset ),task的数量和分片数相同...
2019-09-04 15:56:46 102
原创 java8 HotSpot 垃圾回收GC
一:判断回收 (GC Roots:由堆外指向堆内的引用)1.引用计数法(很少使用):它的做法是为每个对象添加一个引用计数器,用来统计指向该对象的引用个数。一旦某个对象的引用计数器为 0,则说明该对象已经死亡,便可以被回收了。(弊端:a,b互相引用,导致计数永远大于0 ,内存泄漏)2.可达性分析算法:这个算法的实质在于将一系列 GC Roots 作为初始的存活对象合集(live set),...
2019-09-04 15:20:17 456
原创 jvm 类加载器总结
类加载器总结JVM 中内置了三个重要的 ClassLoader,除了 BootstrapClassLoader 其他类加载器均由 Java 实现且全部继承自java.lang.ClassLoader:BootstrapClassLoader(启动类加载器):最顶层的加载类,由C++实现,负责加载%JAVA_HOME%/lib目录下的jar包和类或者或被-Xbootclasspath参...
2019-08-29 19:37:23 94
原创 jvm模型
一组成线程私有的:程序计数器:代码的流程控制 虚拟机栈:Java 虚拟机栈也是线程私有的,它的生命周期和线程相同,描述的是 Java 方法执行的内存模型,每次方法调用的数据都是通过栈传递的 本地方法栈:和虚拟机栈所发挥的作用非常相似,区别是: 虚拟机栈为虚拟机执行 Java 方法 (也就是字节码)服务,而本地方法栈则为虚拟机使用到的 Native 方法服务线程共享的:堆:Ja...
2019-08-29 17:57:02 116
转载 算法的时间与空间复杂度
算法(Algorithm)是指用来操作数据、解决程序问题的一组方法。对于同一个问题,使用不同的算法,也许最终得到的结果是一样的,但在过程中消耗的资源和时间却会有很大的区别。那么我们应该如何去衡量不同算法之间的优劣呢?主要还是从算法所占用的「时间」和「空间」两个维度去考量。时间维度:是指执行当前算法所消耗的时间,我们通常用「时间复杂度」来描述。 空间维度:是指执行当前算法需要占用多少内...
2019-08-29 15:20:59 142
原创 zookeeper 总结
1、Zookeeper1)描叙:Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper就将负责通知已经在Zookeeper上注册的那些观察者做出相应的反应,从而实现集群中类似Master/Slave管理模式\ZooKeeper 底层其实只提供了两个功能:...
2019-08-29 15:11:22 127
原创 ConcurrentHashMap
putVal(K key, V value, boolean onlyIfAbsent)方法干的工作如下:1、检查key/value是否为空,如果为空,则抛异常,否则进行22、进入for死循环,进行33、检查table是否初始化了,如果没有,则调用initTable()进行初始化然后进行 2,否则进行44、根据key的hash值计算出其应该在table中储存的位置i,取出table[i]的...
2019-08-29 14:40:39 94
原创 Yarn知识点总结
1、Yarn1)描叙:Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应 用程序。2)依赖其它架构:3)架构组成:YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成。4)重要知识点:...
2019-08-27 15:49:24 483
原创 MapReduce 调优
一 MapReduce优化方法主要从六个方面考虑:数据输入、Map阶段、Reduce阶段、IO传输、数据倾斜问题和常用的调优参数。二 数据输入(1)合并小文件:在执行mr任务前将小文件进行合并,大量的小文件会产生大量的map任务,增大map任务装载次数,而任务的装载比较耗时,从而导致mr运行较慢。(2)采用CombineTextInputFormat来作为输入,解决输入端大量小文件场景...
2019-08-27 15:20:04 209
原创 MapReduce知识点总结
一。组件1)MrAppMaster:负责整个程序的过程调度及状态协调。2)MapTask:负责map阶段的整个数据处理流程。3)ReduceTask:负责reduce阶段的整个数据处理流程。二.map reduce过程流程详解上面的流程是整个mapreduce最全工作流程,但是shuffle过程只是从第7步开始到第16步结束,具体shuffle过程详解,如...
2019-08-27 14:40:07 215
原创 hdfs知识点总结
一.架构图二.写入流程三.读流程四.NN和2NN工作机制1)第一阶段:NameNode启动(1)第一次启动NameNode格式化后,创建fsimage和edits文件。如果不是第一次启动,直接加载编辑日志和镜像文件到内存。(2)客户端对元数据进行增删改的请求。(3)NameNode记录操作日志,更新滚动日志。(4)NameNode在内存中对数据进行增删改...
2019-08-27 14:29:28 227
原创 Map java集合知识三
一.Map接口的三个常用实现类 jdk1.8类名 底层数据结构 线程是否安全 效率 增量值 HashMap 链表加数组 线程不安全 效率都很快。 默认初始容量为0,第一次put后容量是16,每次扩容2倍。扩容因子是0.75 HashTable 动态的数组结构 线程不安全 无论增删还是查询都非常慢 默认初始容量...
2019-08-23 16:30:35 135
原创 Collection之Set java集合知识二
一.Set接口的三个常用实现类 jdk1.8类名 底层数据结构 线程是否安全 效率及特点 增量值 HashSet 低层是HashMap的key 线程不安全 存取速度快。唯一并无序,只能唯一null 默认初始容量为16,加载因子是0.75,扩容2倍 TreeSet 红黑数,低层是TreeMap 线程不安全 需要有一个比较 ...
2019-08-23 15:41:30 102
原创 Collection之List java集合知识一
一.List接口的三个常用实现类 jdk1.8类名 底层数据结构 线程是否安全 效率 增量值 ArrayList 动态的数组结构 线程不安全 增删的效率很慢(因为要移动数据),但是随机查询的效率很高。 默认初始容量为0,第一次add后容量是10,每次扩容1.5倍。(grow方法为扩容方法,利用数字位移) ,扩容因子1 Vector ...
2019-08-23 14:55:31 165
转载 1.springboot注解详解
一、注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让springBoot扫描到Configuration类并把它加入到程序上下文。@Configuration 等同于spring的XML配置文件;使用Ja...
2017-11-21 10:37:25 208
原创 2.消息中间件概述
什么是中间件非底层操作系统软件,非业务应用软件,不是直接给最终用户使用的,不能直接给客户带来价值的软件统称为中间件什么是消息中间件关注于数据的发送和接受,利用高效可靠的异步消息传递机制集成分布式系统示意图什么是JMSJava消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件的API,用于在两个应用程序
2017-11-20 15:56:04 240
转载 1.MQ的几种消息传递方式
发布订阅模式发布订阅模式有点类似于我们日常生活中订阅报纸。每年到年尾的时候,邮局就会发一本报纸集合让我们来选择订阅哪一个。在这个表里头列了所有出版发行的报纸,那么对于我们每一个订阅者来说,我们可以选择一份或者多份报纸。比如北京日报、潇湘晨报等。那么这些个我们订阅的报纸,就相当于发布订阅模式里的topic。有很多个人订阅报纸,也有人可能和我订阅了相同的报纸。那么,在这里,相当于我们在同一个topi
2017-11-20 15:40:24 15029 2
yarn任务邮件监控及linux进程邮件监控(python脚本)
2019-01-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人