PG 全页写

1.什么是全页写

修改一个块的时候,把块读到内存中,commit后,WAL写进程会触发写,把修改的写到WAL日志文件,如果再往这个块中插入一条数据,数据缓冲区里面的块有两条数据了,再次commit后,PG会把这个事务写到事务缓冲区,再把事务缓冲区的事务写到WAL 文件中。

第一个commit就是全页写

所以全页写的概念就是:把数据块写到WAL日志中。
目的:解决块不一致问题,保护数据的完整性。
缺点:会导致WAL日志膨胀,增加额外的I/O

控制参数:

2.全页写的模式

1.非强制模式:

最近一次检查点之后,第一次修改的数据块会进行全页写,后续再修改时不会进行全页写。

2.强制模式:

进行备份的时候,会自动执行强制模式,在备份期间修改的数据块会全部写入WAL当中。

当执行pg_start_backup函数时,系统也会进入全页写模式,执行pg_stop_backup 时,退出全页写模式。

3.什么是块不一致?

1.操作系统进行I/O操作时,总是以块为单位,比如512字节,1kb,4kb(xfs)。

2.数据块进行I/O操作也是以块为单位,数据库块一般是操作系统块的整数倍,Oracle buffer cache就可以指定不同的块大小。

3.当数据库写一个数据块的时候,比如说操作系统的块是1k,数据库的块是8k,那么这个时候就要写8次,进行8次I/O,如果在I/O过程中系统断电,这个时候就导致了块不一致。

就比如这8次I/O  如果进行了4次I/O,这时候断电了,就导致了 要写进磁盘的这8块,前四次是新的,后四次由于断电导致了没有写入,是旧的,就导致了块不一致。

4.PG如何解决的?

其实刚开始也讲了,因为bgwr 进程写进程触发需要一定的条件,具有时间间隔,所以为了预防块不一致,就先把修改过数据的整个块放进WAL日志中,这和MySQL的两次写其实很像,MySQL 为了预防块不一致,会先把buffer pool 里面修改的块完全copy到内存的另外一个区域-doublewrite buffer,之后从两次写缓冲区中分两次 ,第一次写入磁盘共享表空间中(顺序写,速度很快)。第二次再将doublewrite buffer中的脏页数据写入实际的各个表空间文件(离散写);

5.全页写是否关闭?

1.如果数据库有完整的备份,可以禁用全页写。

2.如果优先考虑数据库整体性能,可以禁用全页写。

3.选择能够组织部分页面写入的文件系统(ZFS)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3029352.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

车载测试系列:自动驾驶中间件SOME/IP

一、以太网引入汽车 2004年,宝马汽车的OBD诊断口采用的是高速CAN总线,速率为500kbit/s,除去CAN协议本身的开销,通过OBD口升级控制器的净升级速度降到200kbit/s。预计到2008年,软件更新的数据量会达到1GB,按…

2024年化学材料、清洁能源与生物技术国际学术会议(ICCMCEB2024)

2024年化学材料、清洁能源与生物技术国际学术会议(ICCMCEB2024) 会议简介 2024国际化学材料、清洁能源和生物技术大会(ICCMCEB2024)将在长沙隆重举行。本次会议旨在汇聚来自世界各地的化学材料、清洁能源和生物技术领域的专家学者,共同探…

【计算机毕业设计】springboot合庆镇停车场车位预约系统

本系统为用户而设计制作合庆镇停车场车位预约系统,旨在实现合庆镇停车场车位预约智能化、现代化管理。本合庆镇停车场车位预约管理自动化系统的开发和研制的最终目的是将合庆镇停车场车位预约的运作模式从手工记录数据转变为网络信息查询管理,从而为现代…

vue----- watch监听$attrs 的注意事项

目录 前言 原因分析 解决方案 总结 前言 在 Vue 开发过程中,如遇到祖先组件需要传值到孙子组件时,需要在儿子组件接收 props ,然后再传递给孙子组件,通过使用 v-bind"$attrs" 则会带来极大的便利,但同时…

【进程替换】多进程程序替换原理 | 进程程序替换函数 | execlexecv | execlpexecvp

目录 多进程程序替换 多进程程序替换原理 进程程序替换函数详解 execl&execv execlp&execvp execle&execvpe execve 多进程程序替换 我们想要进程替换的同时不影响旧的进程(使用多进程版)fork创建子进程,让子进程去替换执…

大模型在智能客服领域的应用思考

前言 随着大模型技术的飞速发展,其在商业化应用的落地实践上仍面临着挑战,不论是面向C端用户的付费服务模式,还是面向B端企业的业务赋能策略,目前都尚未形成成熟且清晰的商业模式。 在我所专注的智能客服领域,作为人工智能落地应用的前沿阵地,我深刻感受到大模型的生成…

面试集中营—Redis面试题

一、Redis的线程模型 Redis是基于非阻塞的IO复用模型,内部使用文件事件处理器(file event handler),这个文件事件处理器是单线程的,所以Redis才叫做单线程的模型,它采用IO多路复用机制同时监听多个socket&a…

gorm-sharding分表插件升级版

代码地址: GitHub - 137/gorm-sharding: Sharding 是一个高性能的 Gorm 分表中间件。它基于 Conn 层做 SQL 拦截、AST 解析、分表路由、自增主键填充,带来的额外开销极小。对开发者友好、透明,使用上与普通 SQL、Gorm 查询无差别.解决了原生s…

爬虫学习--5.xpath数据解析

xpath是XML路径语言,它可以用来确定xml文档中的元素位置,通过元素路径来完成对元素的查找。HTML就是XML的一种实现方式,所以xpath是一种非常强大的定位方式。 基本概念 XPath(XML Path Language)是一种XML的查询语言…

03.进程

并发 进程是运行起来的程序,是OS(操作系统)进行资源分配和调度的基本单位。 当只有一个cpu,进程遇到阻塞事件的时候(可能是要去磁盘中读取数据),我们知道cpu的执行速度和磁盘的IO速度相差特别大…

传感器—超声波雷达

声波技术 在讲述超声波雷达之前,先了解一下声波的概念以及超声波和声波之间的关系 什么是声波? 声波是物体机械振动状态(或能量)的传播形式。所谓振动是指物质的质点在其平衡位置附近进行的往返运动形式,这种振动状…

2023盘古石晋级赛 移动终端取证 WP

9. 根据容恨寒的安卓手机分析,MAC的开机密码是[答案:asdcz] 到这里火眼就寄了,盘古石 启动! 10. 根据容恨寒的安卓手机分析,苹果手机的备份密码前4位是[答案:1234] 11. 根据魏文茵苹果手机分析&#xff0c…

找不到vcruntime140_1.dll怎么办,介绍5种简单有效的解决方法

当您的电脑系统提示找不到vcruntime140_1.dll文件时,这通常意味着系统在尝试运行某个应用程序或游戏时,无法定位到这个至关重要的动态链接库(DLL)文件。此情况可能源于几个不同的原因,包括但不限于:文件被误…

电信网关配置管理系统 rewrite.php 文件上传致RCE漏洞复现

0x01 产品简介 中国电信集团有限公司(英文名称“China Telecom”、简称“中国电信”)成立于2000年9月,是中国特大型国有通信企业、上海世博会全球合作伙伴。电信网关配置管理系统是一个用于管理和配置电信网络中网关设备的软件系统。它可以帮助网络管理员实现对网关设备的远…

三分钟上手安全渗透系统Kali Linux

kali linux系统集成了常用的安全渗透工具,省去了安装工具的时间,做安全相关的工作是非常推荐使用的。 安装Kalii Linux 安装系统 一般使用虚拟机进行安装,Kali Linux基于Debian内核,虚拟机的操作系统选择Debian 7.x 64 选择系统…

C++入门 string类(第二章):string类对象的容量操作

文章目录 🚀1. string类对象的容量操作⚡️1.1 size⚡️1.2 capacity⚡️1.3 max_size⚡️1.4 resize⚡️1.5 reserve⚡️1.6 clear⚡️1.7 empty 🚀2. string类对象访问元素⚡️2.1 at⚡️2.2 back 与 front 🚀3. string类对象的字符串操作&…

嵌入式学习<1>:建立工程、GPIO和keil仿真

嵌入式学习_part1 本部分笔记用于学习记录,笔记源头 >>b站江科大_STM32入门教程_新建工程 建立工程、GPIO 开发环境:keil MDK、STM32F103C8T6 1 )建立工程 (1)基于寄存器开发、基于标准库 或者 基于HAL库开…

海睿思受邀参加 “走进中节能”研习交流,探索新能源数据治理的创新路径

近日,OceanMind海睿思参加由江苏省企业信息化协会(以下简称“苏信会”)主办的“走进中节能太阳能科技(镇江)有限公司”研习交流活动。 海睿思与苏美达、远东控股、隆基乐叶、固德威、上能电气等40多位来自制造业领域的…

VMware Workstation 17 Player 创建虚拟机教程

本教程是以windows server 2012物理机服务器安装好的VMware Workstation 17 Player为例进行演示,安装VMware Workstation 17 Player大家可以自行网上搜索安装。 1、新建虚拟机 双击安装好的VMvare图标,点击创建虚拟机。 2、选择是否安装系统 本步骤选…

socks5代理的工作原理是什么?

SOCKS5代理是一种采用SOCKS协议的代理服务器,是一种通用的代理服务器。SOCKS5代理服务器可以在前端机器和服务器机器之间扮演一个中介角色,使得内部网中的前端机器能够访问Internet网中的服务器,同时提供更加安全的通讯方式。那么&#xff0c…