摘要: Compact主要涉及以下几个组件 CompactManager 管理Compact task CompactRewriter 用于compact过程中数据的重写实现, 比如compact过程中产生changelog等 CompactStrategy 决定哪些文件需要被compact Append 阅读全文
posted @ 2023-06-26 17:08 Aitozi 阅读(1655) 评论(2) 推荐(1) 编辑
摘要: # 查询模式 先来看看官网关于Paimon查询模式的说明 ![image.png](https://img2023.cnblogs.com/blog/697236/202306/697236-20230625192823219-2121282029.png) ![image.png](https:/ 阅读全文
posted @ 2023-06-25 19:29 Aitozi 阅读(1786) 评论(0) 推荐(1) 编辑
摘要: > 基于Paimon 0.5版本 写入流程的构建`org.apache.paimon.flink.sink.FlinkSinkBuilder#build` 算子的流向 BucketingStreamPartitioner 分区 -> RowDataStoreWriteOperator 写入 -> C 阅读全文
posted @ 2023-06-23 21:16 Aitozi 阅读(1588) 评论(0) 推荐(0) 编辑
摘要: sql2rel的过程是将SqlNode 转化成RelNode的过程 在 `SqlToRelConverterTest`中添加样例测试 ```java @Test void testScan() { String sql = "SELECT * FROM EMP WHERE empno When va 阅读全文
posted @ 2023-06-17 17:43 Aitozi 阅读(275) 评论(0) 推荐(1) 编辑
摘要: Rust很适合写命令行工具,特别是使用`clap` crate 更加方便,这篇文章介绍使用rust写一个jar包class冲突检测的工具。项目地址: [https://github.com/Aitozi/jar_conflict_detector](https://github.com/Aitozi 阅读全文
posted @ 2023-05-23 23:27 Aitozi 阅读(388) 评论(0) 推荐(1) 编辑
摘要: String String 类型的数据和基本类型不同,基本类型的长度是固定的,所以可以在栈上分配,而String类型是变长的,所以需要在堆上分配,所以String 类型实际上是一个指向堆的指针。他的结构和Vec很类似。从他的声明看也是一个u8的Vec pub struct String { vec: 阅读全文
posted @ 2023-05-16 21:34 Aitozi 阅读(711) 评论(0) 推荐(2) 编辑
摘要: 2023 第三本书,之前下决心每次读完书就要写一篇读后感,加深认识。结果下决心后的第一本 《乡土中国》就写不下来读后感,感觉读后感太多太密,还不如想起来的时候回头浏览一遍书。 但是最近听路障的视频,发现他也建议写读后感来增加对书的认识,这样能更好的帮助记忆,加上这本书好奇心里面的观点,创造力来源于知 阅读全文
posted @ 2023-05-07 22:23 Aitozi 阅读(79) 评论(0) 推荐(0) 编辑
摘要: Hudi 文中部分代码对应 0.14.0 版本 发展背景 初始的需求是Uber公司会有很多记录级别的更新场景,Hudi 在Uber 内部主要的一个场景,就是乘客打车下单和司机接单的匹配,乘客和司机分别是两条数据流,通过 Hudi 的 Upsert 能力和增量读取功能,可以分钟级地将这两条数据流进行拼 阅读全文
posted @ 2023-05-05 11:12 Aitozi 阅读(641) 评论(0) 推荐(1) 编辑
摘要: 一层嵌套,但是flatten的要求需要List内部类型都一样, 例如都为List scala> List(List(1), List(2), List(3)).flatten res4: List[Int] = List(1, 2, 3) scala> List(List(List(1)), Lis 阅读全文
posted @ 2023-03-10 23:10 Aitozi 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 设想以下这个计算 def eval(i: Int): Option[Int] = { println(s"invoke with $i") if (i % 2 == 0) { None } else { Some(i + 1) } } @Test def test(): Unit = { // 3 阅读全文
posted @ 2023-03-10 22:57 Aitozi 阅读(31) 评论(0) 推荐(0) 编辑