自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(93)
  • 资源 (5)
  • 收藏
  • 关注

原创 postgres源码解析56 Brin Index--3(update/delete/insert流程)

仅回收索引元组,而ItenidData设置为UNUSED转态。

2023-09-11 12:47:27 804

原创 postgres源码解析55 Brin Index--2(brinbuild流程)

上一篇讲解了brin index的基本概念以及页布局,后续会从源码角度对索引的构建、维护等方面进行深入讲解。

2023-09-05 12:40:43 835

原创 postgres源码解析54 Brin Index--1

brin index是Block range Index的缩写,顾名思义该索引是指块范围索引,该索引适合在超大表中进行过滤性扫描。基本的思路是追踪heap页域的最大值与最小值,用于过滤不符合条件的数据块。以下图为例,右边的堆表包含三个block,第一个block中有4个tuple,字段上的值分别是1、3、5、7。因此,与这个block相对应的Brin的元组就记录了 block的最小值1,最大值7。同理,2、4、6、8的最小值是2,最大值是8;12、11、10、12的最小值是10,最大值是14。

2023-09-02 15:09:06 935

原创 greenplum gpfdist外部表(只读)的实现---理论

经过项目的验证测试以及初步商用化,本篇将进一步讲解greenplum外部表的实现原理,包括设计原则、交互协议与实现流程。gpfdist工具的简介与使用见回顾。

2023-08-21 20:34:30 907

原创 linux 环境收集core文件步骤

Linux环境下进程发生异常而挂掉,通常很难查找原因,但是一般Linux内核给我们提供的核心文件,记录了进程在崩溃时候的信息,在C语言类的大型项目中,有助于深入定位。2 ulimit -c [kbytes]可以设置系统允许生成的core文件大小;执行# vim /etc/sysctl.conf,进入编辑模式,加入下面两行。3 执行sysctl -p /etc/sysctl.conf,使其修生效。上述方式不是永久生效的,要使其永久生效,可以进行如下设置。2 指定core文件的名字与生成路径。

2023-08-19 18:32:03 902

原创 数据库磁盘文件格式的设计原理内幕

数据库磁盘文件格式的设计原理内幕

2023-06-02 19:27:35 1589

原创 C语言 字符串解析strchr/strrchr/strtok//strtok_r函数使用

在程序中,解析用户输入的参数(命令行参数)是很常见的操作,本文将讲解C语言中常见的一些解析字符串函数机器使用方法。

2023-04-15 12:36:33 4735 1

原创 greenplum gpfdist工具

gpfdist 是 Greenplum 数据库并行文件分发程序。它可以被外部表和 gpload 用来并行地将外部表文件分发给 Greenplum 数据库 Segment节点<greenplum架构介绍它也可以被可写外部表使用,将Segment节点上的数据写入目标文件中。gpfdist 可以看成是一个http服务,因其是单进程模式,所以为实现服务端的并行,需要启动多个 gpfdist 服务。

2023-04-07 21:05:22 2167 1

原创 数据库中并发事务下的读写异常与隔离界别技术

事务T1在t0时刻对row进行更新操作,T2事务在t1时刻读取到的是事务T1修改后该row的值,但是事务T1在t2时刻终止此事务使得其对之前的修改操作失效。按照时间顺序,事务T1在t0时刻对row进行了修改,事务T2在t1时刻页也对row进行修改,如果没有并发控制,T2的修改会生成新值,但是T1在t3时刻回滚使得T2对row修改失效,对于T1而言:回滚掉的不是自己修改数据,事务具有ACID特性。):从一开始,每一项操作都允许进行,但在事务提交的时候,会进行隔离性与完整性约束的检查,如果有违反则终止事务。

2023-04-02 16:30:49 1495

原创 postgres源码解析53 磁盘管理器--2

上文介绍了磁盘管理器中VFD的实现原理,本篇将从上层角度讲解磁盘管理器的工作细节。

2023-03-24 18:56:17 1569

原创 Opengauss CLOG模块分区优化--2(具体实现)

Opengauss CLOG模块分区优化--2(具体实现)

2023-03-18 14:18:52 1578

原创 Opengauss CLOG模块分区优化--1(原理)

与Postgres 数据库类似,Opengauss在事务模块也引入CLOG日志即事务提交日志,基础知识见postgres 源码解析9 CLOG管理器–1。在Opengauss 中每个事务存在四种状态:CLOG_XID_STATUS_IN_PROGRESS、 CLOG_XID_STATUS_COMMITTED、 CLOG_XID_STATUS_ABORTED 和 CLOG_XID_STATUS_SUB_COMMITTED。

2023-03-14 21:14:46 1305

原创 postgres源码解析52 磁盘管理器--1

postgres源码解析52 磁盘管理器--1

2023-03-09 19:05:43 1439

原创 PolarDB数据库的CSN机制

PolarDB数据库的CSN机制

2023-02-25 20:13:26 2124

原创 postgres 源码解析51 LWLock轻量锁--2

postgres 源码解析51 LWLock轻量锁--2

2023-02-24 19:07:41 1540

原创 postgres 源码解析50 LWLock轻量锁--1

postgres 源码解析50 LWLock轻量锁--1

2023-02-22 20:47:42 1763

原创 postgres 源码解析49 Btree节点分裂点确认流程--2

postgres 源码解析49 Btree节点分裂点确认流程--2

2023-02-14 20:24:58 1345

原创 postgres源码解析48 Btree节点分裂点确认流程--1

postgres源码解析48 Btree节点分裂点确认流程--1

2023-02-02 16:21:43 1439

原创 postgres 源码解析47 元组的删除流程 heap_delete

postgres 源码解析48 元组的删除流程 heap_delete

2023-01-10 12:59:55 1470

原创 TiDB分布式数据库部署与安装详解

TiDB分布式数据库部署与安装详解

2023-01-05 16:40:52 2516

原创 TiDB分布式数据库架构介绍

TiDB分布式数据库架构介绍

2023-01-04 20:38:46 1968

原创 双向循环链表详解及C语言简单实现

双向循环链表详解及C语言简单实现

2022-12-27 14:24:47 732

原创 postgres 源码解析46 可见性映射表VM

postgres 源码解析46 可见性映射表VM

2022-12-22 20:33:45 1710

原创 postgres 源码解析 45 btree分裂流程_bt_split

postgres 源码解析 45 源码解析 btree分裂流程_bt_split

2022-12-19 17:24:22 1220

原创 postgres 源码解析 44 btree插入流程 btinsert

postgres 源码解析 btree插入流程 btinsert

2022-12-15 15:06:49 1107

原创 postgres 源码解析43 元组的插入流程详解 heap_insert

postgres 源码解析43 元组的插入流程详解 heap_insert

2022-12-13 10:15:37 796

原创 postgres源码解析42 btree索引文件的创建--2

postgres源码解析41 btree索引文件的创建--2

2022-12-08 23:08:52 566

原创 postgres源码解析41 btree索引文件的创建--1

postgres源码解析41 btree索引文件的创建--1

2022-12-04 12:44:34 1087

原创 postgres源码解析40 表创建执行全流程梳理--4

postgres源码解析38 表创建执行全流程梳理--4

2022-12-02 16:49:25 908

原创 postgres源码解析39 表创建执行全流程梳理--3

postgres源码解析38 表创建执行全流程梳理--3

2022-11-30 19:28:51 955

原创 postgres源码解析38 表创建执行全流程梳理--2

postgres源码解析38 表创建执行全流程梳理--2

2022-11-29 22:13:47 635

原创 分布式解决方案 Percolator--详解

分布式解决方案 Percolator--详解

2022-11-27 18:50:18 987

原创 postgres源码解析37 表创建执行全流程梳理--1

postgres源码解析37 表创建执行全流程梳理--1

2022-11-26 13:22:14 963

原创 pgbench 性能测试工具的使用

pgbench 性能测试工具的使用

2022-11-19 19:58:05 2199

原创 postgres 源码解析 35 -- 可见性判断加速heapgetpage

postgres 源码解析 35 -- 可见性判断加速heapgetpage

2022-11-19 18:31:11 602

原创 postgres 源码解析34 进程间通信--2

postgres 源码解析 进程间通信

2022-11-12 10:08:44 617

原创 postgres 源码解析33 进程间通信--1

postgres 源码解析 进程间通信

2022-11-09 19:33:49 736

原创 二叉排序树详解及其C语言简单实现

二叉排序树详解及其C语言简单实现

2022-10-29 19:49:55 2091

原创 greenplum 源码解析 FTS辅助进程工作主流程

greenplum 源码解析 FTS进程

2022-10-24 07:33:56 447

原创 greenplum 源码解析 FTS辅助进程--ReadMe

greenplum 源码解析 容错服务

2022-10-22 23:38:51 424

SLRU cache学习指导

12

2022-09-13

pgcopydb源码学习

123

2022-09-09

data_structure-of-C

data_structure-of-C

2022-07-19

data_structure-of-C

data_structure-of-C

2022-07-19

postgres 快照可扩展性研究

postgres 快照可扩展性研究

2022-05-16

Linux IO模型/epoll

Linux IO模型/epoll

2022-04-24

FOSDEM2013-Timelines.pdf

FOSDEM2013-Timelines.pdf

2022-03-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除