首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在sql server HA副本上重放事务日志的成本

在sql server HA副本上重放事务日志的成本
EN

Database Administration用户
提问于 2018-05-08 04:37:23
回答 1查看 46关注 0票数 2

我一直在读关于sql天蓝色扩展的文章。

我认为利用副本硬件进行只读工作负载是合理的。

但这让我想知道,到底哪一个工作更多?原版还是复制品?

特别是,我不清楚副本从主服务器上“追赶”事务日志的代价有多大。

如果我正确地理解了,如果主服务器执行类似于UPDATE dbo.LargeTable SET [SomeColumn] = 10的查询,那么它可能会执行索引扫描来更新所有行,但是事务日志实际上每一行包含一个条目吗?这意味着副本将需要对每一行进行键查找,而不是索引扫描,这将花费更多。

我肯定我的逻辑是错误的,但我想了解更多关于这一点。

这是否假定追赶主要业务是低成本的(相对于主体实际运行事务所产生的成本)?

另外,副本的物理页面在字节级别与主副本完全相同吗?(也就是说,碎片也是一样的)还是在逻辑上是一样的?

EN

回答 1

Database Administration用户

回答已采纳

发布于 2018-05-08 18:09:11

但这让我想知道,到底哪一个工作更多?原版还是复制品?

小学。辅助程序不必为正在修改数据库的会话运行SELECT、INSERT、UPDATE和DELETE语句。这些操作产生的日志记录被发送到二级,后者将它们复制到日志文件中,然后使用重做过程将它们应用到数据库中。

当主程序写入日志文件并让检查点/Lazywriter写入数据库时,备用程序有时可以执行更多的IO操作。但总的来说,小学做的工作更多。

这意味着副本将需要对每一行进行键查找,而不是索引扫描,这将花费更多。

辅助程序不应用逻辑操作。日志记录准确地指示对数据库页所做的修改。

另外,副本的物理页面在字节级别与主副本完全相同吗?

是。实际上,如果主服务器发现一个损坏的页面,它将通过从辅助服务器获取该页的未损坏副本来修复损坏。这叫做自动页面修复

票数 2
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/206102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档