- 博客(4)
- 收藏
- 关注
原创 PostgreSQL_checkpoint浅析
postgresql 的 checkpoint 是数据库中非常重要的部分,它涉及到数据库的缓存,持久化与数据恢复各个方面。它在执行时会涉及到大量磁盘 IO,所以对于它的优化和监控是不可缺少的。此篇文章讲述了 checkpoint 的原理及其监控,这对调优会有很大的帮助。postgresql 会将数据持久化到磁盘里,不过因为磁盘的读写性能比较差,所以又添加了一层缓存。这样每次的数据读写都会优先在缓存中处理,如果数据不存在缓存中,才会从磁盘查找。
2024-08-06 11:26:54
777
1
原创 PostgreSQL_page结构
postgresql 保存数据的基本单位是 page,一个 page 里包含多条数据。postgresql 同磁盘的读写单位也是 page,一个 page 对应于磁盘的一个 block。block 的格式和 page 是相同的,本篇文章详细得介绍了 page 的数据存储格式和相关的增删改查操作。
2024-08-06 11:12:07
732
原创 PostgreSQL_流复制
postgresql 提供了主从复制功能,有基于文件的拷贝和基于 tcp 流的数据传输两种方式。两种方式都是传输 wal 数据,前者是等待生成一个完整的wal文件后,才会触发传输,后者是实时传输的。可以看出来基于文件方式的延迟会比较高,而且wal文件有可能没来得及传输就被损坏了,造成了这块的数据丢失。基于 tcp 流的方式,延迟非常低,是现在最常见的方式,本篇文章也主要讲述这种方式。
2024-08-06 11:04:47
1040
原创 PostgreSQL_autovacuum调优
注意:对ANALYZE的负面影响更严重一些,因为虽然VACUUM的成本主要与死行数量成正比(当表中死行很少时相当低,使不必要的清理变得便宜),但ANALYZE实际上必须在每次执行时重新构建统计信息(包括收集随机样本,这可能需要相当多的I/O)。它会获取表上的独占锁,阻止所有操作(包括只读查询),并创建表的新副本,这可能会使使用的磁盘空间量增加一倍(因此,当您的磁盘空间已经用完时,它特别不切实际)。此 MVCC 实现的缺点是,它会留下已删除的行,即使在可能看到这些版本的所有事务完成后也是如此。
2024-08-06 09:48:29
829
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人