当前位置: 首页 > news >正文

有关网站升级建设的申请书建设多语言网站

有关网站升级建设的申请书,建设多语言网站,泰安建材网站建设电话,seo一般包括哪些内容事务日志是数据库的重要组成部分#xff0c;记录了数据库系统中所有更改和操作的历史信息。 WAL log(Write Ahead Logging)也被称为xlog#xff0c;是事务日志的一种#xff0c;也是关系数据库系统中用于保证数据一致性和事务完整性的一系列技术#xff0c;在数据库恢复、高…事务日志是数据库的重要组成部分记录了数据库系统中所有更改和操作的历史信息。 WAL log(Write Ahead Logging)也被称为xlog是事务日志的一种也是关系数据库系统中用于保证数据一致性和事务完整性的一系列技术在数据库恢复、高可用、流复制、逻辑复制等模块中扮演着极其重要的角色。 在这次直播中我们为大家介绍了WAL log模块的基本原理、构成和特性。以下内容根据直播文字实录整理而成。 WAL log简介 数据库在写入或更新资料时要确保事务始终保持ACID的特性。当系统发生故障时数据库通过事务日志回放来保证故障恢复后数据不丢失。 图1单机WAL log流程示意图 如图1所示在单机场景下如果每一次写入或更新都直接去写表文件单次更新表文件的代价相对高昂对于硬盘来说随机写的性能也会非常差。此时可以通过引入缓冲池Buffer Pool将数据写入内存中。相比直接写表文件这种方式的性能更高。 同时为了保证数据的持久化需要引入WAL log在内存更新前先写入WAL log再更新内存。在这种情况下即使出现了断电或故障等情况也能准确地恢复数据保证了数据库的ACID。 相比直接去更新表文件WAL log代价更小执行路径更短。在PostgreSQL中WAL log的写入也属于随机写。 图2联机WAL log流程示意图 除此之外WAL log在联机场景下还可以支持主从同步以及热备份等功能。 以Greenplum为例如果没有引入WAL log 主从之间需要约定好一份同步/备份的协议或者是在从节点执行同样的SQL语句这样不仅操作复杂而且很难做到热切换。 在引入WAL log之后主从节点之间直接同步WAL log就能够保证数据的一致性。当主节点发生故障时从节点也能快速地通过相应的WAL log重放让数据恢复到可使用的状态整个过程操作更为简便。 WAL log实现方式 不同的数据库对WAL log实现的需求点也有所区别主要体现在四个方面 首先是格式一般由metadata两个部分组成。meta部分记录了关联资源的元信息data是资源自定的裸数据。meta和data可以分开存储也可以统一存储。分开存储时单条WAL log需要先读取完整的meta再按需求解data统一存储时可以一条条解。举个例子在分开存储时数据组成往往是meta1meta2.. metaNdata1data2...dataN而在统一存储时数据组成往往是meta1data1meta2data2...metaNdataN。其次在修改数据时有undo log和redo log两种方式。undo log从后往前写redo log从前往后写。PostgreSQL采用的是redo log。此外循环校验码信息CRC分为完整数据和分段数据两种。分段CRC的优点是当出现错误时能够快速定位到坏的块数据且损坏的范围很小但代价是速度较慢相比之下完整数据的CRC读写速度更快但如果单个meta损坏则可能导致整个WAL log都损坏恢复成本较高。最后是否需要落盘这主要取决于具体场景如果只做同步和备份可以考虑不落盘。 WAL log的组成 在PostgreSQL中WAL log由头部、块头部、块私有数据块、自定义资源数据块四部分组成。 图3PostgreSQL中WAL log构成图 头部和块头部相当于上面提到的meta主要用于数据块的快速定位、数据块的描述以及对数据块CRC操作等。其中块头部是私有的需要和page绑定。而块私有数据和WAL log本身数据属于data部分用于存储具体的数据。 在WAL log本身数据中初始化资源管理器rmgr(Resource managers definition)是自定义资源的主要载体也是WAL log数据块内容的生产与消费者。 WAL log checkpoint WAL log在执行过程中数据量会不断地累积当达到一定数量后会对系统性能产生影响因此需要定时清理WAL log数据。 清理页缓存和xlog文件需要借助checkpoint检查点机制。执行checkpoint 之后页缓存可以被清空这样可以保证不会因为页缓存太大而导致性能下降。 checkpoint的主要作用包括脏数据块回写、xlog回收非archive xlog 且已同步的 xlog和checkpoint redo。 通常触发checkpoint的时机主要有包括按时定期清理、数据最大长度限制、checkpoint语句、数据库关闭在内的四种场景。当然在其他场景下也可能会触发checkpoint这里不再一一列举。 自动checkpoint指的是按照一定的时间间隔执行checkpoint命令时间间隔在PostgreSQL.conf文件中可以配置默认是5分钟。 WAL log recovery与replay 如图4所示在GPDB中数据恢复的过程包含了数据重放。数据库启动时会有startup进程打开checkpoint redo文件开始按顺序读取xlog进行恢复操作。 图4recovery流程示意图 在联机场景下primary/master集群完成数据恢复后会退出recovery这时WAL sender进程仍会不断会向从节点发送xlog信息。 此时在mirror/standby集群中 startup进程则不会退出而是会通过WAL receiver不断地接收xlog信息并在startup进程中进行replay操作。 图5replay操作流程示意图 如图5所示备库不断地从主库同步相应的日志数据并在备库应用每个WAL record流复制每次传输WAL日志的record主库启动WAL sender进程主要负责将主服务器产生的WAL日志记录发送给从库。 相应地从库启动WAL receiver进程与对应的WAL sender进程通讯负责接收主库发送的WAL日志记录同时从库启动startup进程负责将WAL receiver进程接收到WAL日志记录在从库上replay从而达成主从的数据同步。在GPDB中默认支持同步复制同时也支持异步复制。 示例insert场景下WAL log的变化 图6为在insert(单条数据)场景下WAL log的变化感兴趣的读者可以对应着图中标注的函数名来调试代码。 图6insert场景下WAL log的变化 Custom WAL Resource Managers特性 在此前的PostgreSQL版本中rmgr是一个静态的enum。如果要增加新的Resource Managers需要在内核里去定义。 在PostgreSQL 15中xlog模块支持了Custom WAL Resource Managers 的新改动支持动态注册的结构且新加了一些回调函数。 Custom WAL Resource Managers支持外部extension动态添加自定义的资源类型比如在extension中实现的 table access method 或index access method。 目前HashData的企业级产品系列已经全面支持PostgreSQL 15的新特性后续HashData会不断完善相关功能进一步提升产品可用性。 总结 PostgreSQL中的WAL机制的核心思想是先日志落盘后数据落盘。在写数据到磁盘里成为固定数据之前先写入到日志里。
http://www.pierceye.com/news/608191/

相关文章:

  • 浦江网站建设微信开发手机html编辑器
  • 做网站的个人总结论坛内网站怎么建设
  • 那里有个人做网站的如何建设网页制作的网站
  • 佛山网站建设玲念建站会议管理系统
  • 网站开发需要什么资质天马行空网站建设
  • 猎聘网网站建设目标怎么做网站上的模拟动画
  • 南通制作企业网站福州做网站设计
  • 上什么网站做会计教育wordpress cookies
  • 山东网站备案号四川省建筑信息网
  • 网站开发可以用哪些语言中国十二冶金建设有限公司网站
  • 中药网站模板襄阳seo优化服务
  • 做爰片免费观看网站会展企业网站建设方案
  • 国内空间没备案可以打开网站吗dw做网站 怎么做背景图片
  • host绑定网站国外网站风格
  • 安顺建设局网站wordpress 分页
  • 重庆做网站个人外网登录不了WordPress
  • 医药平台网站建设网站排名做不上去
  • 网站关键词优化培训怎样使用wordpress
  • wordpress多站做网站空间百度云和阿里云区别
  • 衡水企业网站制作公司3000块钱在朋友圈投放广告
  • 做网站没有公网北京网页制作教程
  • 运城哪家做网站的公司好小商铺装修
  • 如何访问win7下做的网站时间轴网站模板
  • html5网站制作软件做app找哪个网站吗
  • 网站名称怎么备案外贸商城网站模板
  • 网页设计网站网站建设课程设计客户关系管理流程图
  • 网站开发遇到的难题品牌策划公司有哪些
  • 网站如何做视频链接网络服务器可提供的常见服务
  • 做二手钢结构网站有哪些网站建设开发ppt
  • 做网站分什么软件免费备案网站空间