- 博客(209)
- 资源 (6)
- 收藏
- 关注

原创 大数据重要操作
经纬度计算GeoHash,相同区域内根据lng,lat和GeoHash方法得出的结果相同<dependency><groupId>ch.hsr</groupId><artifactId>geohash</artifactId><version>1.3.0</version></dependency>GeoHash.geoHashStringWithCharacterPrecision(l
2021-03-09 22:16:56
977
原创 linux磁盘挂载
Command (m for help): 以下是使用 fdisk 对 /dev/vdb 进行分区的专业操作指南,我们将创建一个标准 Linux 数据存储方案:分步操作指引创建新分区表(可选) text Copy Code Command (m for help): o # 清除现有分区表(危险!确认磁盘无数据后再操作)
2025-05-23 16:44:30
478
原创 paimon中的Tag
在传统数仓场景中,从传统数据库中导入的事实表数据一般是全量导入,按天分区每天都存储一份全量数据,paimon对此提供了Tag机制,创建TAG时,会对当前数据做一份全量快照,在之后对表的数据进行更新也不会影响已经打完TAG的数据。其实就是对当前的数据做镜像,或者说做备份。
2024-12-20 15:05:31
356
原创 paimon中的Branch
paimon借鉴了git的管理机制,在我们开发代码的时候,为了不影响主分支的功能,我们一般会新建一个分支进行迭代,待新分支完善后,合并回主分支,在新的分支做任何数据操作都不会影响主分支。在paimon中,我们也可以对表创建分支,相当于在当前数据状态下复制出来了一张新的表,我习惯称 新建的表叫做分支表,原表称为主表,两表互不影响,而且能够从分支表上进行合并,将分支表的数据覆盖到主表。
2024-12-20 10:56:21
299
原创 paimon的四种changelog模式(4)-full-compaction模式
# 结论- changelog=full-compaction模式相比于lookup模式区别在于changelog的生成时间 - lookup模式:一次checkpoint产生一次changelog,数据延迟小,资源消耗大 - full-compaction模式:n次checkpoint产生一次changelog,数据延迟大,资源消耗小# 应用场景- 非cdc采集的表(不能完整的提供数据变化流)- and- 后期要进行流式处理的表- and- 不在乎数据延迟的场景
2024-11-28 10:47:16
965
原创 paimon的四种changelog模式(3)-lookup模式
# 结论- changelog=lookup的情况下,一次操作产生两个个data文件的同时(第一次只会产生一个),也会产生一个changelog文件- changelog文件内容,会查询变化前的数据,并对比变化后数据,自动生成一份chagelog。`相比input模式,这就是lookup的最大区别,他会自己产生正确的changelog,而不管你的输入数据是否符合规范`- lookup模式针对于不是cdc采集的表,而且要用于流式处理的表# 应用场景- 非cdc采集的表- and- 后期要进行流式
2024-11-27 17:14:12
1229
2
原创 paimon的四种changelog模式(2)-none模式
# 结论- changelog=node的情况下,一次操作产生一个data文件的,不会产生一个changelog文件- changelog=node的情况下,流式读取结果是正确的,虽然不像input模式有changelog,但是paimon会记录每次操作产生的快照,根据不同版本的快照数据,经过汇总能够推断出changelog,这个changelog是每次流式处理该表时,加载到flink状态中的(内存)- 因此这个none模式的changelog实际上是不够稳定的,而且比较耗费运算资源,但是非常省存储资
2024-11-27 16:12:07
670
原创 paimon的四种changelog模式(1)-input模式
# 结论- changelog=input的情况下,一次操作产生一个data文件的同时,也会产生一个changelog文件- changelog文件内容和data文件内容完全一致- input 情况下,如果你的操作不完整,那么流式读取的结果也是不对的 - 上述操作insert2次相同主键,按照主键表的逻辑,应该是会出现-D +I 或者 -U +U 的场景,但是由于input模式,不会额外的处理changelog,你insert两次,我的changelog就写两次insert,你流式读取,那我就重
2024-11-27 14:42:35
929
原创 hadoop+wsl 10.255.255.254,BlockMissingException: Could not obtain block: 踩坑
我在我的wsl中启动一个hadoop用java客户端连接hadoop,读取某个文件的内容异常,但是读取文件名,文件路径好用。
2024-11-18 14:59:36
1344
原创 hive session 超时
后来查看hiveserver2管理页面(默认10002端口)发现存在很多没有释放掉的session,发现代码中很多地方都没有释放连接,如果不手动释放默认7天才会释放,最大连接数默认500。sql执行完成后30秒,如果没有进行任何操作,待检查任务执行时,会自动释放掉session。开启ide超时检查,会检查已经执行完成的任务,30秒后自动释放session。具体多少秒后自动释放,根据访问频次来修正,如果访问的很少可以时间长一点。可以配置hive-site.xml,让hive手动释放连接。
2024-10-25 17:46:11
268
原创 flink将窗口增量聚合算子和窗口全量聚合算子连用
将滚动聚合窗口和全量聚合窗口连用,即利用了滚动聚合性能好,资源占用率低的优点,又能拥有全量窗口函数中的窗口信息,此时的迭代器中只有1条:当所有的数据reduce完成后在经过一次窗口函数,因此窗口全量聚合算子中只有一条reduce聚合后的数据。
2024-09-25 09:32:45
542
原创 flink checkpoint barrier对齐机制
一个subtask的数据如果只来自于上游的一个subtask,此时遇到barrier后直接备份当前状态,并且向jobmanager发送ack响应。如果一个subtask来自上游多个subtask,因为上有subtask的barrier到达有早有晚,上游最早的barrier到达之后,收到其他上游数据后被缓存到内存中,不会进行处理,直到上游最晚的barrier到达后,这个subtask会进行一次状态备份,并且向jobmanager发送ack响应。jobmanager 收到所有的ack响应后。
2024-08-27 10:16:37
459
原创 flink 使用RocksDB作为状态后端
flink在生产环境中常用RocksDB作为状态后端1、subtask在taskmanager中作为一个线程运行,如果设置了RocksDB状态后端,RocksDB也会启动一个独立的线程,供subtask来使用。2、RocksDB是一个kv数据库,因此只能存储flink的键控状态,算子状态还是会放到subtask中。3、RocksDB会单独占据一块flink内存,它不受JVM GC管控4、RocksDB会把数据存储到taskmanager所在磁盘上。
2024-08-22 16:57:52
1083
原创 flink任务提交、内存、并行度设置
standalone:包括 standalone-session standalone-application。但是 per-job被官网废弃了,用application替代per-job!flink任务提交方式有3种 session、per-job、application三种。flink任务运行底座也有三种,Standalone、yarn、k8s。原则上一个flink任务运行的方式由3*3=9种,但是有些是没法搭配的。yarn:包括yarn-session 、k8s: 包括 k8s-session、
2024-08-14 14:14:01
679
原创 doris 数据导入、数据权限、资源管理
/ skip_lines: 整数类型, 默认值为0, 含义为跳过csv文件的前几行. 当设置format设置为 csv_with_names 或、csv_with_names_and_types 时, 该参数会失效.// strict_mode 严格模式,由于数据库设置了字段类型,在由文本中的字符串数据转换到数据库字段类型失败时,严格模式会认为该条数据是错误数据。// 如hive文件的分隔符\x01,需要指定为-H "column_separator:\x01"。# FE(65服务器)
2024-06-20 16:12:47
977
原创 Doris建表注意事项
KEY想要做key的字段必须是非空字段(NOT NULL) key字段必须从表的第一个字段开始选择,并且需要连续选择,不可跳跃选择 eg: 表的字段为 a,b,c,d 四个字段,那么key只能选择a、ab、abc、abcd 四种VALUE分组聚合模型中,value列必须设置聚合方式 字符串类型无法进行sum分区 KEYRange 分区支持的列类型:[DATE,DATETIME,TINYINT,SMALLINT,INT,BIGINT,LARGEINT] List 分区支持的列类型: [
2024-04-08 14:39:40
404
原创 Flink on Kubernetes (flink-operator) 部署Flink
部署cluster完成,配置svcType 后即可访问,flink web ui,此时jobManager是启动着的 taskmanager随着flink jar进行启动和停止。3、使用initContainers和 containers使用相同的挂载路径,然后使用远程文件下载放到挂载路径中,containers就能获取到该jar包。此处jarURL只得是docker内部路径,且不支持远程路径(http/s3/hdfs),因此需要将jar包放到docker内部。2、可以使用pvc挂载进去。
2024-03-27 15:01:53
1545
原创 k8s运维命令小工具
clusterrolebinding 为一个指定的 ClusterRole 创建一个 ClusterRoleBinding。rolebinding 为一个指定的 Role 或者 ClusterRole创建一个 RoleBinding。service 使用指定的 subcommand 创建一个 service.serviceaccount 创建一个指定名称的 service account。
2024-03-13 13:47:32
694
原创 dolphinscheduler k8s部署
我是两节点的虚拟机,环境资源如果不够在启动的时候会有很多异常,测试的时候其实只需要修改一个资源需求就行。按照他官网的指示 我的操作不生效,因此,手动指定scv暴露方式为 NodePort。由apache/dolphinscheduler 改成apache。有可能是我修改了bitnami的仓库地址导致此处才需要修改。配置了采用本地文件系统,不使用s3,hdfs。原bitnami仓库地址会有问题改成这个。
2024-03-07 14:28:45
450
原创 sqoop事务如何实现
场景1:如Sqoop在导出hdfs数据到Mysql时,某个字段过长导致任务失败,该错误记录之前的数据正常导入,之后的数据无法导入。如何保证错误发生后数据回滚?场景2:如Sqoop在导出hdfs数据到Mysql时,某个字段重复导致主键冲突,该错误记录之前的数据正常导入,之后的数据无法导入。如何保证错误发生后数据回滚?
2024-01-17 15:45:10
644
原创 kafka topic分区数设定
测试结果:31.89 34.10 前后对比可以得知,每次发送70000条记录时效率最高,此时吞吐量 70000*1KB/s 70MB/s。--producer-props bootstrap.servers=localhost:9092 # 指定服务。kafka-producer-perf-test.sh # 生产者测试。--num-records 300000 # 总共300000条数据。kafka-consumer-perf-test.sh # 消费者测试。# 消费者吞吐量测试工具。
2024-01-11 10:22:36
1443
原创 Easycode模板,基于官方提供的Mybatis-plus模板改造
Easycode模板,逆向工程,单表增删改查,从前端到后端不需要任何一点代码
2024-01-05 16:16:10
1566
原创 Flink中jobmanager、taskmanager、slot、task、subtask、Parallelism的概念
一个工厂有三个车间每个车间两条生产线生产流程如下原料->加工->过滤->分类->美化->包装->下线。
2023-10-10 15:32:35
845
原创 关于flink重新提交任务,重复消费kafka的坑
1、savepoint的数据要比checkpoint更加稳定,比如你可以通过移动(拷贝)savepoint 目录到任意地方,然后再进行恢复。checkpoint就不可以,因为他有很多相对路径配置。2、savepoint和checkpoint一般都能作为恢复点使用,例外情况是使用 RocksDB 状态后端的增量 Checkpoint。他们使用了一些 RocksDB 内部格式,而不是 Flink 的本机 Savepoint 格式。
2023-10-08 14:30:33
2713
原创 vue-webpack代码混淆、代码压缩设置
压缩为gz包后,是否删除源js文件,如果设置为true nginx需要额外配置资源文件目录。只需要第一个插件即可,后边两个可以有可以没有。可以在这个网站测试自己需要的混淆方式。
2023-08-03 14:40:42
1479
apache-dolphinscheduler-3.1.9-bin.tar.gz
2024-05-30
easycode模板,包含前端代码生成
2024-05-20
转换office为pdf时 jodconverter-2.2.2 之前的jar包都是不支持高版本office的
2019-01-08
mysql 5.6 yum版 一键安装
2018-11-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人