- 博客(451)
- 资源 (6)
- 收藏
- 关注
原创 neon源码分析(8)Pageserver内存、文件格式与 Compaction
- 第一部分:Pageserver 的职责,以及贯穿全文的数据模型。- 第二部分:一次页面读取怎样找到 image 和 WAL,并重建页面。- 第三部分:内存索引、临时文件、冻结刷盘、磁盘格式、compaction、S3 和恢复边界。- 最后:本地 LTAP 扩展、常见误解、源码导航及验证范围。
2026-09-23 09:58:11
172
原创 TypeDB示例
本文使用 TypeDB 3.12.1 / TypeQL 3,完整演示以下业务:在 TypeDB 中,、、 和 是实体类型,三条连接是关系类型。关系中的端点不是“起点/终点”,而是带名称的角色:TypeDB 的关系是可以独立扩展的实例。例如以后可以让 自己拥有“核销金额”“核销日期”等属性。SQL 中如果关系本身需要属性,通常要把外键改成独立的中间表。为了方便比较,本文 SQL 使用最简单的一对多外键模型:这套 SQL Schema 将三个 TypeDB 关系压缩成了三个外键。如果需要与 TypeDB
2026-07-16 19:44:00
279
原创 neon源码分析(7)SLRU WAL转KV
1. PG 的SLRU以CLOG为例,一个文件256KB作为一个SEG,一个SEG内有32个8KB页面,在REDO时,根据xid/32786定位SEG,xid%32定位PAGE,就可以进行REDO了。2. NEON 的核心工作就是把WAL转换写到KV存储,这里的KEY是SEGNO+PAGENO,V是XID、事务状态等信息。
2026-05-23 12:08:54
373
原创 Postgresql热迁移pgbench持续读写零中断
在两台真实机器上演示 QEMU Live Migration,VM 内运行 PostgreSQL,外部 pgbench 2 并发持续读写,迁移全程 **零失败事务**。证明 Neon 热迁移对 Postgres 连接完全透明。
2026-04-17 11:33:46
339
原创 hermes与hindsight
hermes终端里运行的AI Agent,用你配置的LLM作为大脑,通过工具跑命令、读写文件、操作浏览器、委派子 Agent,类似claw、claudecode等agent工具。
2026-04-15 12:20:23
2211
1
原创 Postgresql源码(158)pg_filenode.map文件作用relmap和redo流程(RM_RELMAP_ID = 7)
pg_filenode.map文件的作用和redo流程分析。
2026-03-10 23:06:26
724
原创 Postgresql源码(157)Redo系列MultiXact Redo (RM_MULTIXACT_ID = 6)
MultiXact Redo机制分析。
2026-03-10 21:15:00
667
原创 Postgresql源码(155)Redo系列CLOG Redo (RM_CLOG_ID = 3)
RM_CLOG_ID处理的是PG提交日志的修改。CLOG记录每个事务的最终状态(in_progress/committed/aborted/sub_committed),存储在 `pg_xact/` 目录下的 SLRU 文件中。
2026-03-09 21:30:00
694
原创 Postgresql源码(154)Redo系列Storage Redo (RM_SMGR_ID = 2)
RM_SMGR_ID处理的是PG的文件层修改,调用smgr提供的接口干活。只做创建 和 truncate,不做文件删除。不做删除的原因是:**只有在事务成功提交才能物理删除文件;如果事务回滚,文件必须保留。** redo机制需要旧的基础页面+新的日志,如果是页面比日志新,就玩不转了。
2026-03-09 15:11:20
578
原创 Postgresql源码(153)Redo系列XLOG (RM_XLOG_ID = 0)
postgresql备库调试RM_XLOG_ID的redo流程
2026-03-08 11:26:01
559
oracle core essential internals for dbas and developers
2024-05-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅