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

校园云网站建设房产备案信息查询系统官网

校园云网站建设,房产备案信息查询系统官网,建设一个小说网站,wordpress程序员主题本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 本作品 (李兆龙 博文, 由 李兆龙 创作)#xff0c;由 李兆龙 确认#xff0c;转载请注明版权。 文章目录 引言解决方案FAST FINE-GRAINED PITRLog FilterInter-Record Dependency ResolutionL…本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 本作品 (李兆龙 博文, 由 李兆龙 创作)由 李兆龙 确认转载请注明版权。 文章目录 引言解决方案FAST FINE-GRAINED PITRLog FilterInter-Record Dependency ResolutionLog Merger FAST IMPORT OF REMOTE TABLES 总结 引言 由组内大佬爽哥推荐的论文sigmod2024的《TimeCloth: Fast Point-in-Time Database Recovery in The Cloud》阐述了一种在恢复表所在实例中基于PITR Point-in-Time的快速恢复方案。 先不讨论论文内容但从这个功能来看存在哪些问题和哪些优化点。 PITR一般我们也称之为流水备份其基本思路非常清晰 定期对数据库做全量冷备并记录冷备的最后一个LSN。一周三份两周五份一个月七份等冷备策略值得一提的是冷备是对每个分片去做的所以全局来看不能做到备份到某个时间点保存数据的WAL写删修改元数据操作每条WAL记录LSN和混合时间时钟冷备和流水备份上传对象存储恢复时指定实例先导入恢复时间前的一个冷备然后再恢复冷备中每个分片最后一个LSN到指定时间的LSN 事实上这个过程有这么几个优化点 恢复的表不是用户的表用户要通过Join从新恢复的表去修正原始表其实我认为有办法做到用户无感知直接恢复源表数据针对表级别数据恢复用户误操作单分片中可能存在不同Collection的数据Collection级别的恢复会扫描无用的数据可以在流水备份文件中添加摘要信息扫描的时候可以规避掉部分不需要的数据针对于实例级别的数据恢复灰色错误导致数据损坏。之前遇到一例在写入存储引擎前内存跳变导致写坏一个字节存储引擎的CRC已经算错了最后是用户发现的错误这种错误不做全局CRC是无法避免的两副本硬盘损坏目前的导入过程是分片并发的但是每个分片内部是重放全量的WAL这个过程显然基于不同的数据模型有更快的恢复方案比如合并部分修改结果只保留最终结果并行导入单分片中没有依赖关系的数据项单分片也可以做到并发 好了回到论文的内容。 计算机工程领域提出问题其实在很多情况下比其解决的过程更为重要我们来看看本篇文章抽象出来的问题是什么。 论文提到 1w 个数据库实例中就有大约 700 次由用户发起的恢复。在这种由用户触发的恢复中客户有两个基本需求 希望将受影响的表回滚到某个历史时间点的一致状态保持原始数据库实例正常运行以满足写入查询 在这个过程中观察到客户经常对恢复的表进行频繁读取如 SELECT 和 JOIN以纠正原始表数据。在服务受到严重影响或纠正过程耗时过长的情况下客户会优先考虑服务可用性完全切换到已恢复的表 RENAME。因此论文确定了云中高效用户触发恢复的两个理想目标 Recovered data in situ恢复后的后续用户操作通常涉及对恢复表的频繁读写。如果恢复的表位于当前实例之外的其他地方则所有表访问都会因跨实例或跨节点通信而产生额外开销。因此恢复表应位于同一数据库实例下以实现良好的查询性能。Lower recovery time objective (RTO)在恢复期间原始表和数据库实例都是实时的因为可能会有新的事务到达。因此较高的 RTO 可能会导致用户执行的恢复后数据校正任务量增加从而提高操作复杂性。所以较低的 RTO 可以大大减少和简化恢复后的用户工作量。 所以可以看到论文其实就是要在恢复表所在实例比传统方案更快速的恢复数据。 解决方案 TimeCloth的解决方案分为两个方面 在恢复实例外快速细粒度恢复数据基于lazy loading的快速导入 FAST FINE-GRAINED PITR Log Filter 使用 Dictionary 将表名和数据库字典化为较短的字符日志索引中的每个 entry 对应于原始事务日志中的一条日志。包含四项 数据库名对应字典值表名对应字典值日志中的位置时间戳 在恢复过程中基于摘要可以快速识别相关日志记录。当然一般整个WAL文件还是要从对象存储拉下来的一般这是一个对象。 Inter-Record Dependency Resolution 介绍了一种检测依赖关系的轻量级算法可以识别出不同主键之间的依赖关系判断哪些数据可以并行恢复。 总体思路不难有兴趣的可以看看原文。 Log Merger 对于每一批不冲突的日志事件可以通过合并主键相同的日志事件来进一步加快日志重放速度。原因是恢复方案只关注最终状态因此只要不违反记录间的依赖关系我们就可以安全地跳过中间状态合并对同一行的操作。 基本规则如下图所示 FAST IMPORT OF REMOTE TABLES 基本思路认为物理导入速度太慢在完全导入实例前用户无法使用恢复表所以使用 Lazy Loading。 步骤如下 在一台远程主机上基于上一节提到的快速恢复方案恢复一个数据库实例待恢复实例中创建一个 New Table file此时用户可以认为恢复任务完成但是实际数据还是在远程创建一个临时表使用FUSE文件系统接口对上层数据库保持透明拦截用户对于 New Table file的读取先从本地检索是否存在如果不存在则读取远程实例并实时填充临时表后台预取远程实例的页面一旦复制了全部的页面则用临时表替换New Table file远程读取表交换对用户来说的都是透明的 总结 在不同的数据模型下PITR拥有不同的目标在这个基础上有不同的预期从而诞生不同的解决方案 话说回来都是锦上添花不过这也是软实力的体现要是团队都快养不起了自然都是扑杀在前线业务的功能和性能上只有运营稳定营收稳定且愿意投入才能有这样的收获。 不过基于hook的方式真的是很多小创新的高发地域以下提到的东西我都至少见过一篇论文或者一篇专利23333 用户函数的hook文件系统的hook用户态系统调用的hookebpf的函数级别hook…
http://www.w-s-a.com/news/566063/

相关文章:

  • 旅游门户网站模板下载做策划网站推广怎么写简历
  • 建设隔离变压器移动网站wordpress动态导航
  • 平潭建设局网站中国免费素材网
  • 虚拟主机可以做视频视频网站吗做爰全过程免费的视频网站有声音
  • 专业做家电经销的网站网络管理系统有哪几部分组成
  • 自学网站编程网站名称需要注册吗
  • 网站后台管理系统怎么添加框安徽省工程建设协会网站
  • 雨花台网站建设wordpress找回
  • 四川哪家网站推广做的好网站开发人才需求
  • 什么网站可以找手工活做一站式服务平台官网
  • 做购物网站的步骤网站核心词如何做
  • 做品牌设计网站公司网站没做301怎么做301
  • 服务流程企业网站wordpress文章的使用
  • 网站开发组合淘宝网站开发选什么类目
  • 广东手机网站建设个人电脑做网站主机
  • 健身俱乐部网站开发文档建一个网站需要什么条件
  • 买的网站模板怎么做建设行政管理部门网站
  • 怎么让百度多收录网站关键词seo深圳
  • 陕西交通建设集团网站体检个人网站设计模板田田田田田田田田
  • ae模板网站推荐安徽建筑信息平台
  • 新网站建设代理商wordpress模板商店
  • 中国十大设计素材网站wordpress发布失败
  • 江西省建设监理网站网页制作与设计是什么
  • 在招聘网站做销售怎么样网址你懂我意思正能量不用下载ios
  • 高端企业网站定制公司企业网站2000元
  • 成都网站建设:河北省建设工程质量监督网站
  • 四川省建设厅官网信息查询平台北京seo关键词优化外包
  • 网站建设响应式是什么意思wordpress弹窗打开网页
  • 做美工需要参考的网站漳州做网站的公司
  • 用源码建设网站关于网站开发的自我评价