数据库星球-mytecdb.com

  • 最新文章
  • 全部分类
  • 文章搜索
  • 关于本站

当前分类:【PostgreSQL源码分析】

PostgreSQL local buffer 分析

源码版本:pg 11.3源码文件:src/backend/storage/buffer/localbuf.clocal buffer 主要用于临时表的快速缓存管理,减少磁盘 IO 操作,提升性能。对 local buffer 的操作不需要写...继续阅读

  • 发表于:2022-04-27 10:59:58
  • 分类:PostgreSQL源码分析
  • 浏览(94)

PostgreSQL 并行表扫描分析 Gather Parallel Seq Scan

PostgreSQL 在很多场景下会启用并行执行计划,创建多个并行工作子进程,提升查询效率。一个常用的并行表扫描的例子:从下面的执行计划可以看出,Parallel Seq Scan 并行表扫描,并发工作进程数为 2,最上层的执行计划节点名称...继续阅读

  • 发表于:2022-03-18 15:46:26
  • 分类:PostgreSQL源码分析
  • 浏览(519)

PostgreSQL shm_toc 共享内存管理

1. shm_toc 描述shm_toc 是共享内存段表内容管理(shared memory segment table of contents),通俗点说,就是对一块内存区域的管理,能够像表格一样,按照 key-value 的形式管理内存...继续阅读

  • 发表于:2022-03-09 19:05:24
  • 分类:PostgreSQL源码分析
  • 浏览(167)

PostgreSQL pg_rewind 执行过程分析

1. pg_rewind 功能描述pg_rewind 是 PostgreSQL 提供的一个工具,在主库故障切换后,用于修复旧主的流复制。PG 主备切换后,流复制的时间线会发生变化,在异步复制场景下,旧主产生的 WAL 日志可能有部分未同步到...继续阅读

  • 发表于:2021-11-23 10:16:09
  • 分类:PostgreSQL源码分析
  • 浏览(208)

PostgreSQL full_page_writes 机制分析

对于 PG 的 full page write 和 MySQL 的 double write 机制一直有些困惑,如果没有这些机制,是不是在页断裂的情况下数据一定就有问题?如果应用 redo log 或者 wal 是幂等设计的,在刷脏页的过程...继续阅读

  • 发表于:2021-10-28 19:24:08
  • 分类:PostgreSQL源码分析
  • 浏览(247)

PostgreSQL HOT(Heap Only Tuple) 技术

1. PostgreSQL HOT 技术PG 对一条数据进行更新时,并不直接在原数据上直接更新,而是采用创建一条新记录的方式间接进行更新。由于数据的行号(ctid) 发生了变化,如果字段上有索引,这种更新机制就必须要对索引也同步进行更新。在...继续阅读

  • 发表于:2021-10-11 14:36:41
  • 分类:PostgreSQL源码分析
  • 浏览(291)

PostgreSQL toast 存储技术

1. 为什么需要 toast 技术PostgreSQL 表数据的存储以页作为基本单位,默认情况下,一个页面 8kb 大小,pg 不允许一条记录跨多个页面,那么当一条记录的大小超过 8kb 时怎么处理?这就需要引入 toast 技术,英文全称...继续阅读

  • 发表于:2021-09-18 14:14:12
  • 分类:PostgreSQL源码分析
  • 浏览(326)

PostgreSQL checkpoint 逻辑分析

源码版本:PostgreSQL 13.31. checkpoint 触发条件参数 checkpoint_timeout 控制,默认 5 分钟,范围 30s ~ 1 daywal 日志间隔,当最新的 wal 日志与上次 checkpoint ...继续阅读

  • 发表于:2021-08-31 10:25:47
  • 分类:PostgreSQL源码分析
  • 浏览(323)

PostgreSQL 内存上下文 MemoryContext

MemoryContext 是 PG 内存上下文管理模块,内核代码可以在指定的 MemoryContext 上动态分配内存,扩容内存以及释放内存,使用 MemoryContext 便于内存管理,内存使用统计以及防止内存泄露。PG 内核代码中...继续阅读

  • 发表于:2021-07-16 14:37:10
  • 分类:PostgreSQL源码分析
  • 浏览(439)

PostgreSQL Background Worker 解析

1. Background Worker 简介PostgreSQL 提供了一种叫作后台工作进程(Background Worker)的特性,用来在独立的进程中执行用户提供的代码,入口函数可以是 pg 内核源码中的函数,也可以是动态库中的函数...继续阅读

  • 发表于:2021-06-02 16:30:43
  • 分类:PostgreSQL源码分析
  • 浏览(393)

分页

上一页123下一页
搜索:

Copyright © 2020-2023 

www.mytecdb.com All Rights Reserved.