- 博客(170)
- 收藏
- 关注
原创 Kafka官方提供的RoundRobinPartitioner出现奇偶数据不均匀
【代码】Kafka官方提供的RoundRobinPartitioner出现奇偶数据不均匀。
2024-06-26 14:20:56
432
原创 Apache Hudi Timeline Server介绍
Hudi 有一个中央时间线服务器,在驱动程序节点中运行并作为 Rest 服务。它有多种好处,第一个用例是提供 FileSystemView api。Hudi 的核心是维护一个 TableFileSystemView,它暴露 API 来获取给定数据集的文件状态,驱动程序和执行程序将在写入和表服务生命周期的不同时间点查询该状态。中央时间线服务器维护一个缓存的 FSView,每个 Spark 任务都可以轮询该 FSView,从而避免每个 Spark 任务自己加载 FSView,这些 API 响应延迟非常低。
2023-08-15 20:16:32
354
原创 Flink CheckPoint 与 SavePoint 区别
CheckPoint 与 SavePoint 区别概念1. checkpointcheckpoint主要目的是在意外作业失败的情况下提供一个恢复机制。checkpoint的生命周期由Flink管理,也就是说,checkpoint由Flink创建、拥有和释放–无需用户互动。由于checkpoint经常被触发,并被用于故障恢复,checkpoint实现的两个主要设计目标是:尽可能轻量级地创建和尽可能快速地恢复。对这些目标的优化可以利用某些属性,例如,工作代码在执行尝试之间不会改变。在flink任务故障
2023-06-29 19:12:18
873
原创 解决Maven:sun.security.validator.ValidatorException: PKIX path building failed
新增 -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true参数。
2023-05-06 17:27:38
333
原创 flink 开启非对齐checkpoint
从Flink 1.11开始,检查点可以是不对齐的。未对齐的检查点包含飞行中的数据(即存储在缓冲区的数据),作为检查点状态的一部分,这允许检查点障碍超越这些缓冲区。因此,检查点的持续时间变得与当前的吞吐量无关,因为检查点障碍实际上不再被嵌入到数据流中。
2023-01-29 15:16:15
750
原创 ExecutorService线程池
文章目录ExecutorService线程池1 ExecutorService API 介绍1.1 api1.1.1 awaitTermination 方法1.1.2 invokeAll 方法1.1.3 invokeAny方法1.1.4 shutdown 方法1.1.5 shutdownNow方法1.1.6 isShutdown方法1.1.7 submit方法1.1.8 isTerminated方法ExecutorService线程池1 ExecutorService API 介绍1.1 api1
2023-01-29 10:56:08
455
原创 flink任务管理yarn perJob模式代码实现
使用场景:flink云平台或者是公司内部flink任务管理平台,提交任务到yarn的流程代码代码来源:分析yarn submit job 流程整合功能:1. 支持动态提交flink任务到yarn2. 支持关闭flink任务3. 支持实时获取任务状态4. 支持实时获取任务jobId5. 支持实时获取flinkWel6. 支持回去yarn ClusterClient...
2022-07-14 15:02:20
842
原创 flink 继承connector源码二次开发思路
说明:其他连接器jdbc,kafka等等二次开发思路一致推荐:每个公司基于flink开发内部平台,一些内部的特殊场景与需求,经常需要修改源码。但是修改源码在版本更新的情况下会导致开发成本大,周期长。本方案通过继承源码的方式,通过加强,打包覆盖源码的类解决上述问题。elasticsearch6 为案例,部分pom参考官方提供的连接包,版本号对应,2.2 maven-shade-plugin作用:maven-shade-plugin打包拷贝flink-sql-connector-elasticsear
2022-06-27 14:42:35
1524
原创 kibana 创建es索引步骤
kibana 创建es索引步骤1. 创建indexPUT test_user{ "settings": { "index": { "number_of_shards": "3", "number_of_replicas": "0" } }}2. 定义mapperingPUT test_user/_doc/_mapping{ "properties": { "id": { "
2022-05-16 17:24:00
8186
原创 flink Sql自定义kafka连接器
文章目录flink sql自定义kafka连接器1. Overview2. 自定义kafka连接器2.2 maven相关依赖2.3 自定义Factory2.4 测试flink sql自定义kafka连接器在流式计算平台当中,为保证flink sql connector相关参数不暴露,官方提供的连接器不满足业务场景及产品本身的要求,通过可以改源码或者说自定义连接器解决。1. Overview源码架构源码查找:FactoryUtil.discoverFactory 获取所有的连接器Factory,包
2022-05-13 14:50:04
1707
原创 Maven 项目中常用的工具包
Maven 项目中常用的工具包后续不断更新1 时间相关1.1 依赖包 <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>2.9.4</version> &
2022-05-13 11:47:26
591
原创 flink job 提交模式
文章目录flink job 提交模式1 maven 依赖引用2 提交模式2.1 Standalone 模式2.1.1 页面手动提交2.1.2 指令提交2.1.3 指令取消job2.2 yarn-会话模式(推荐)2.2.1 准备flink job 提交模式flink版本:1.13.1scala版本:2.121 maven 依赖引用 <properties> <flink.version>1.13.1</flink.version>
2022-04-20 17:53:09
2526
原创 flink sql 自定义函数UDF
文章目录flink sql 自定义函数UDF1 maven 依赖引用2. 自定义UDF函数2.1 标量函数 (Scalar Function)2.1.1 example2.2 表函数(Table Function)2.2.1 example2.3 聚合函数(Aggregate Function)2.3.1 example2.4 表聚合函数(Table Aggregate Functions)flink sql 自定义函数UDFflink版本:1.13.1scala版本:2.121 maven 依赖引
2022-04-20 09:54:11
1050
原创 flink table & sql时间属性与窗口
文章目录flink table & sql 基本API使用1 maven 依赖引用flink table & sql 基本API使用flink版本:1.13.1scala版本:2.121 maven 依赖引用 <properties> <flink.version>1.13.1</flink.version> <scala.version>2.12</scala.version>
2022-04-15 11:43:31
2513
原创 flink table & sql 基本API使用
文章目录flink table & sql 基本API使用1 maven 依赖引用2 API2.1 创建表执行环境2.2 创建表2.3 表查询2.4 输出表2.5 表和流得相互转换2.5.1 将表(Table)转换成流(DataStream)2.5.2 将流(DataStream)转换成表(Table)2.4 SQL开窗滚动查询案例flink table & sql 基本API使用flink版本:1.13.1scala版本:2.121 maven 依赖引用 <prope
2022-04-14 14:03:35
486
原创 flink stateBackEnd
flink stateBackEndflink版本:1.13.1scala版本:2.121. 类型MemoryStateBackend内存级的状态后端,会将键控状态作为内存中的对象进行管理,将它们存储在 TaskManager 的 JVM 堆上;而将 checkpoint 存储在 JobManager 的内存中。FsStateBackend将 checkpoint 存到远程的持久化文件系统(FileSystem)上。而对于本地状态,跟 MemoryStateBackend 一样,也会存
2022-04-12 13:34:55
260
原创 大数据面试(java)题库汇总
文章目录大数据面试1. HDFS读写流程?1.1 HDFS写流程1.2 HDFS读流程2 HDFS HA 架构3 小文件给hadoop带来的瓶劲问题3.1 造成问题3.2 IO问题,性能问题如何解决?4 flink 组件,作业提交流程?4.1 组件?4.2 任务提交流程?4.2.1 standalone提交流程?4.2.1 YARN提交流程?java 篇1 反射概念1.1 如何获取反射?1.2 反射的应用,手写ORMMapper 框架2 多线程2.1 创建线程的方式?共同点异同点?2.2 主线程获取子线程的
2022-03-24 20:45:54
4680
原创 java 计算两个日期时间差
java 计算两个日期时间差引用包 <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>2.9.4</version> </dependency>
2022-03-18 13:38:31
1600
原创 Java 把一个字符串的第一个字母转大写、效率是最高
Java 把一个字符串的第一个字母转大写、效率是最高 // 把一个字符串的第一个字母大写、效率是最高的 private static String getMethodName(String fildeName) throws Exception { byte[] items = fildeName.getBytes(); items[0] = (byte) ((char) items[0] - 'a' + 'A'); return new St
2022-03-02 10:03:48
403
原创 SpringBoot aop + 反射 + MyBatis自定义生成id(雪花算法)
文章目录SpringBoot aop + 反射 + MyBatis自定义生成id(雪花算法)1 雪花算法2. aop + 反射3. 其他 AopTargetUtils 获取代理对象工具类SpringBoot aop + 反射 + MyBatis自定义生成id(雪花算法)1 雪花算法https://glory.blog.youkuaiyun.com/article/details/82054196import java.util.ArrayList;import java.util.List;/** *
2022-02-28 18:23:59
1151
原创 SpringBoot redis,MySql解决缓存雪崩,缓存穿透,缓存击穿的问题
SpringBoot redis,MySql解决缓存雪崩,缓存穿透,缓存击穿的问题介绍:缓存的相关概念介绍:https://blog.youkuaiyun.com/kongtiao5/article/details/82771694常规的缓存处理流程:前台请求,后台先从缓存中取数据,取到直接返回结果,取不到时从数据库中取,数据库取到更新缓存,并返回结果,数据库也没取到,那直接返回空结果。在高并发的情况,会出现缓存雪崩,缓存穿透,缓存击穿的问题,如何优雅的解决?SpringBoot 通过方案,复制继承直接使用po
2022-02-17 17:09:58
659
原创 flink 启动参数传递解析及单元测试
flink 启动参数传递解析启动 flink run -d -c class.main -p 3 xxx.jar xxx.propertiespublic static void main(String[] args) throws Exception { // 解析参数 org.apache.commons.configuration2.Configuration conf = ConfigInitialization.initConfig(args);
2022-02-07 13:21:54
1654
原创 Google的CacheBuilder
Google的CacheBuilder详细api参考:https://blog.youkuaiyun.com/luzhensmart/article/details/926357791. utilimport com.google.common.cache.CacheBuilder;import com.google.common.cache.CacheLoader;import com.google.common.cache.LoadingCache;import java.util.concurren
2022-01-28 10:29:26
811
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人