- 博客(166)
- 资源 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Spark Client 配置
记录Spark Client 配置,这里的 Spark Client 和 HDFS、YARN 不在一个节点,只是一个单节点的 Spark Client,需要能连接其他节点的大数据集群的 Hive 和 能提交到Yarn。
2024-05-18 15:23:51
129
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 集群管理命令总结
clush和pssh,这俩命令都可以在多台服务器上并发执行相同命令,其中个人比较推荐clush,因为感觉clush比较好用,本文来总结一下clush和pssh的安装配置和使用。clush和pssh的安装和使用方式,给出部分使用示例,并记录了 Python2 和 Python3 分别遇到的问题以及解决过程。
2024-04-15 07:00:00
1462
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Spark Standalone 集群配置
平时工作中主要用 YARN 模式,最近进行TPC测试用到了 Standalone 模式,便记录总结一下 Standalone 集群相关的配置。
2024-02-07 16:35:51
489
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Flink源码分析 | 读取HBase配置
上面文章中总结了Flink 获取 HBase 配置的逻辑和优先级,但是并没有对源码进行分析,本文主要是补充这一部分的源码分析。
2023-12-18 19:51:32
1092
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Flink 读写 HBase 总结
总结 Flink 读写 HBase本文总结了Flink SQL 读写 HBase 的参数配置,解决了在kerberos环境下因 hudi 包 hbase-site.xml 配置冲突引起的异常,学习总结了 Flink SQL 读写 HBase 时加载 HBase 配置的优先级,但是没有详细的分析源码中的逻辑,可能会在后面的文章中补充相关的源码分析~
2023-12-09 09:45:56
1444
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Hudi Flink SQL源码调试学习(二)- Transformation/StreamOperator总结 - StreamGraph和JobGraph的生成过程
和上篇文章Hudi Flink SQL源码调试学习(一)一样:本着学习hudi-flink源码的目的,利用之前总结的文章中的代码进行调试,记录调试学习过程中主要的步骤及对应源码片段。本文主要总结 Flink 的, 写Hudi与的关系以及Hudi有哪些自定义的,还有Flink的四层执行图以及和JobGraph的生成构建过程。DummySink。
2023-08-29 09:10:53
198
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 记录几个Hudi Flink使用问题及解决方法
如题,记录几个Hudi Flink使用问题,学习和使用Hudi Flink有一段时间,虽然目前用的还不够深入,但是目前也遇到了几个问题,现在将遇到的这几个问题以及解决方式记录一下。
2023-08-21 16:52:59
757
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Hudi Flink SQL源码调试学习(一)
本着学习hudi-flink源码的目的,利用之前总结的文章Hudi Flink SQL代码示例及本地调试中的代码进行调试,记录调试学习过程中主要的步骤及对应源码片段。本文主要简单记录了自己调试 Hudi Flink SQL 源码的过程,并没有对源码进行深入的分析(自己水平也不够)。主要目的是为了弄清楚从Table API的入口到返回的主要代码步骤以及在哪里调用的的的方法体以进行后面的写Hudi逻辑,这样便于后面对Hudi源码的分析和学习。本文新学习知识点:函数式接口以及对应的 Lambda 表达式的实现。
2023-07-31 20:00:05
1045
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Hudi Flink SQL代码示例及本地调试
之前在Flink Hudi DataStream API代码示例中总结了Hudi Flink DataStream API的代码及本地调试,并且在文中提到其实大家用Table API更多一些,但是我感觉Table API调试源码可能会比较难一点,因为可能会涉及到SQL解析,不清楚Table API的入口在哪里。但是在我总结的上篇文章Flink用户自定义连接器(Table API Connectors)学习总结。
2023-05-30 08:47:29
1120
2
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Flink Hudi DataStream API代码示例
总结Flink通过DataStream API读写Hudi Demo示例,主要是自己备忘用。最开始学习Flink时都是使用Flink SQL,所以对于Flink SQL读写Hudi比较熟悉。但是对于写代码实现并不熟悉,而有些需求是基于Flink代码实现的,所以需要学习总结一下。仅为了实现用代码读写Hudi的需求,其实有两种方式,一种是在代码里通过Flink SQL API,也就是代码中执行Flink SQL,这种方式其实和通过SQL实现差不多,另一种方式是通过DataStream API实现。
2023-05-22 10:47:19
1418
5
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Flink MySQL CDC 使用总结
学习总结Flink MySQL CDC,主要目的是同步MySQL数据至其他数据源如Hudi、MySQL等,本文主要以 MySQL2Hudi、MySQL2MySQL两个场景进行示例验证。
2023-04-03 19:15:12
3566
4
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Flink SQL Checkpoint 学习总结
学习总结Flink SQL Checkpoint的使用,主要目的是为了验证Flink SQL流式任务挂掉后,重启时还可以继续从上次的运行状态恢复。对于flink sql读取mysql,设置checkpoint恢复不生效(不是flink cdc)checkpoint 一个时间间隔内只有一个批次,这样才能保证eos,时间间隔大小影响写入性能。
2023-03-03 14:31:16
5331
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Flink SQL增量查询Hudi表
前面总结了Spark SQL增量查询Hudi表和Hive增量查询Hudi表。最近项目上也有Flink SQL增量查询Hudi表的需求,正好学习总结一下。地址:https://hudi.apache.org/cn/docs/querying_data#incremental-query用show_commits看一下有哪些commits(这里查询用的是Hudi的master,因为show_commits是在0.11.0版本开始支持的,也可以通过使用hadoop命令查看.hoodie文件夹下的.commit文
2022-12-08 07:00:00
3262
41
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Spark SQL增量查询Hudi表
Hive增量查询Hudi表。最近可能会有Spark SQL增量查询Hudi表的需求,并且我发现目前用纯Spark SQL的形式还不能直接增量查询Hudi表,于是进行学习总结一下。本文总结了Spark SQL增量查询Hudi表的一些参数设置,并给出了示例,介绍了使用纯Spark SQL实现增量查询Hudi表的几种方式,不确定未来社区会采用哪种方式,大家目前如果有这种需求的话,可以先选择一种自己喜欢的方式,等未来社区版本支持后,再升级版本。
2022-12-01 08:07:23
5175
59
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Flink SQL操作Hudi并同步Hive使用总结
记录总结自己第一次如何使用Flink SQL读写Hudi并同步Hive,以及遇到的问题及解决过程。关于Flink SQL客户端如何使用可以参考:Flink SQL 客户端查询Hive配置及问题解决Flink 1.14.3Hudi 0.12.0/0.12.1本文采用Flink yarn-session模式,不会的可以参考之前的文章。下载地址:https://repo1.maven.org/maven2/org/apache/hudi/hudi-flink1.14-bundle/0.12.1/hudi-fli
2022-11-01 07:00:00
7318
129
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Hudi Spark SQL总结
前言总结Hudi Spark SQL的使用,本人仍然以Hudi0.9.0版本为例,也会稍微提及最新版的一些改动。Hudi 从0.9.0版本开始支持Spark SQL,是由阿里的pengzhiwei同学贡献的,pengzhiwei目前已不负责Hudi,改由同事YannByron负责,现在又有ForwardXu贡献了很多功能特性,目前好像主要由ForwardXu负责。三位都是大佬,都是Apache Hudi Committer,膜拜大佬,向大佬学习!!!大佬的github:彭志伟(阿里) pengzhi
2022-05-18 20:39:38
1485
32
原创 Hudi 源码 | 索引总结 - tag/tagLocation
接上篇文章和之前的总结的源码文章,本文总结源码 tag/tagLocation ,对应功能:根据索引信息判断记录是否存在,如果不存在,代表是新增数据,如果记录存在则代表是更新数据,需要找到并设置 currentLocation。tag/tagLocation :根据索引信息判断记录是否存在,如果不存在,代表是新增数据,如果记录存在则代表是更新数据,需要找到并设置 currentLocation。tagLocation 会利用上篇文章讲的写到 parquet 文件中的 最大值最小值和布隆索引。
2024-07-15 14:17:18
101
原创 Hudi 索引总结 - Parquet布隆过滤器写入过程
上篇文章提到 :索引的逻辑主要是根据 parquet 文件中保存的索引信息,判断记录是否存在,如果不存在,代表是新增数据,如果记录存在则代表是更新数据,需要找到并设置 currentLocation。对于布隆索引来说,这里的索引信息其实是布隆过滤器,本篇文章主要是先总结布隆过滤器是如何保存到 parquet 文件中的(主要是源码调用逻辑)。
2024-07-10 10:09:10
142
原创 Hudi extraMetadata 研究总结
研究总结 Hudi extraMetadata ,记录研究过程。主要目的是通过 extraMetadata 保存 source 表的 commitTime (checkpoint), 来实现增量读Hudi表写Hudi表时,保存增量读状态的事务性,实现类似于流任务中的 exactly-once。
2024-06-13 19:33:37
326
原创 Hudi CLI 安装配置总结
上篇文章总结了Spark SQL Rollback, Hudi CLI 也能实现 Rollback,本文总结下 Hudi CLI 安装配置以及遇到的问题。
2024-06-07 16:46:51
161
原创 Hudi Spark Sql Procedures 回滚 Hudi 表数据
因为有 Hudi Rollback 的需求,所以单独总结 Hudi Spark Sql Procedures Rollback。
2024-06-04 15:47:02
282
2
原创 Hive 表添加列(新增字段)
记录总结一下 Hive 表如何添加新的字段以及遇到的问题。最初是因为要验证 Hudi Schema Evolution 中的增加字段问题more对于某些文件类型,如ORC不存在该问题,而对于 Parquet、Text ,只有在已有分区下插入数据是,新增字段查询才为 NULL, 新增的分区正常。
2024-04-23 07:00:00
2371
原创 QQ 截图工具独立版安装使用
之前截图一直使用的QQ截图,相比于微信截图,QQ截图还支持长截图,总体来说,QQ截图是我使用过的最好的截图工具。但是现在公司不让用微信、QQ、钉钉等通讯软件,要求使用公司自研的通讯软件,这样就不能使用QQ截图了。尝试使用Windows10自带的截图(win+shift+s)和 公司自研通讯软件中的截图功能都不好使,于是网上查了一下,发现有 QQ 截图工具独立版,不需要安装和登录QQ,就可以使用QQ截图,功能和使用方式(快捷键)都一样。
2024-03-18 10:52:57
2134
6
原创 Linux 批量添加 known_hosts
我们在做完linux ssh 免密登录后,通常会执行一些自动化任务(比如启动Spark集群),也就是需要ssh到每台节点执行相同命令。但是有一个问题就是如果 known_hosts 文件中不存在这个ip的话,在第一次连接时会弹出确认公钥的提示,需要手动输入 yes,才能继续往下进行。输入yes 后会将公钥添加到 .ssh/known_hosts 中,下次连接时就不需要再次确认了。但是如果节点比较多的话,假如有100个节点,那么我们需要手动输入100次 yes 比较麻烦。
2024-01-17 09:05:35
1981
转载 Flink 源码阅读笔记(3)- Flink 底层RPC框架分析
对于Flink中各个组件(JobMaster、TaskManager、Dispatcher等),其底层RPC框架基于Akka实现,本文着重分析Flink中的Rpc框架实现机制及梳理其通信流程。由于Flink底层Rpc是基于Akka实现,我们先了解下Akka的基本使用。Akka是一个开发并发、容错和可伸缩应用的框架。它是的一个实现,和Erlang的并发模型很像。在Actor模型中,所有的实体被认为是独立的actors。actors和其他actors通过发送异步消息通信。Actor模型的强大来自于异步。
2023-12-09 09:40:57
76
转载 Flink 源码阅读笔记(1)- StreamGraph 的生成
Flink 源码阅读笔记(1)- StreamGraph 的生成StreamGraph 的生成
2023-08-25 15:41:58
150
原创 Flink用户自定义连接器(Table API Connectors)学习总结
结合官网文档和自定义实现一个,来学习总结Flink用户自定义连接器(Table API Connectors)。实心箭头展示了在转换过程中对象如何从一个阶段到下一个阶段转换为其他对象。需要实现 org.apache.flink.table.factories.DynamicTableSourceFactory 接口完成一个工厂类,来生产 DynamicTableSource 类。. . .
2023-05-24 11:36:44
2064
9
原创 Linux安装MongoDB数据库并内网穿透在外远程访问
MongoDB是一个基于分布式文件存储的数据库。由 C++ 语言编写,旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。它最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。本次教程我们将在Linux centos服务器上安装部署Mongodb数据库,同时使用cpolar进行内网穿透,实现即使在外也可以远程连接访问Mongodb数据库。
2023-05-23 12:48:14
1330
8
原创 Hudi Spark SQL Call Procedures学习总结(一)(查询统计表文件信息)
学习总结Hudi Spark SQL Call Procedures,Call Procedures在官网被称作存储过程(Stored Procedures),它是在Hudi 0.11.0版本由腾讯的ForwardXu大佬贡献的,它除了官网提到的几个Procedures外,还支持其他许多Procedures命令。本文先学习其中的几个我觉得比较常用的命令,主要是查询统计表路径下的各种文件信息。
2022-11-25 07:00:00
2089
38
原创 Hudi源码 | Insert源码分析总结(二)(WorkloadProfile)
Hudi源码 | Insert源码分析总结(一)(整体流程),继续进行Apache Hudi Insert源码分析总结,本文主要分析上文提到的关于的分析一共就这么多,主要是统计record中每个分区路径对应的insert/upsert数量以及upsert数据对应的fileId和,先持久化到.inflight文件中,然后给后面的使用。关于统计的这些信息是如何在中使用的,我们放在下篇文章中分析。
2022-11-17 07:00:00
3059
81
原创 Hudi源码|Insert源码分析总结(一)(整体流程)
Hudi Java Client总结|读取Hive写Hudi代码示例。以Java Client为例的原因:1、自己生产上用的Java Client,相比于Spark客户端更熟悉一点。2、Java Client和Spark、Flink客户端核心逻辑是一样的。不同的是比如Spark的入口是DF和SQL,多了一层API封装。3、Java Client更贴近源码,可以直接分析核心逻辑。不用剖析Spark、Flink源码。对Sprk、Flink源码不熟悉的更容易上手。
2022-11-11 07:00:00
3666
104
原创 Flink SQL通过Hudi HMS Catalog读写Hudi并同步Hive表(强烈推荐这种方式)
上篇文章Flink SQL操作Hudi并同步Hive使用总结总结了如何使用Flink SQL读写Hudi并同步Hive,介绍了创建表的各种方式,但是每一种方式都不太完美。本文介绍一种比较完美的方式,通过Hudi HMS Catalog读写Hudi并同步Hive表,这里的Hudi HMS Catalog实际上就是通过上篇文章最后提到的。
2022-11-03 07:00:00
3972
76
hudi-spark3.2-bundle-2.12-0.13.0.jar hudi sql 保存 extraMetadata
2024-06-13
QQ截图工具独立版-不需要安装QQ
2024-02-18
flink-sql-connector-hbase-2.2-1.15.4.jar
2023-12-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人