当前位置: 首页 > 面试题库 >

在现有表上将newid()更改为newsequentialid()

孟鸿德
2023-03-14
问题内容

目前,我们有许多在主键上使用newid()的表。这导致大量碎片。因此,我想更改该列以使用newsequentialid()代替。

我想现有的数据将保持零散的状态,而新的数据将减少零碎的状态。这意味着我也许应该等待一段时间才能将PK索引从非群集更改为群集。

我的问题是,有没有人有这样做的经验?有什么我应该忽略的地方吗?


问题答案:

如果您切换到顺序向导 并同时 重新组织索引一次,则将消除碎片。我不明白为什么您只想等到碎片化的页面链接连续不断地重新排列自己。

话虽这么说,您是否做过任何测量来表明碎片实际上正在影响您的系统?只是在寻找一个索引,看到“被分段75%”并 不能
意味着存取时间受到影响。还有更多因素在起作用(缓冲池页面的预期寿命,读写速率,顺序操作的局部性,操作的并发性等)。从向导切换到顺序向导通常是安全的,但您仍然可能会遇到问题。例如,您可以看到针对插入密集型OLTP系统的页面闩锁争用,因为它会创建一个热点页面,在该页面上积累了插入内容。



 类似资料:
  • 我创建了一个单链表函数,我的教授说,为了获得额外的学分,我们可以将其更改为双链表。我读了一些东西,比如添加一个prev_节点函数,比如这样。 然而,我不知道从那里去哪里。我知道我需要像这里一样加上一个尾巴和一个脑袋。 谁能告诉我,(不要为我做这件事),我必须做什么才能把我的链接列表变成一个双重链接列表?我知道我现在必须参考尾巴和头部,但我对如何做到这一点很困惑。

  • 任何帮助都将成为徒弟

  • 在本期续篇中 主代码: 然后我需要得到一个最接近给定日期的值列表: 然后弄一张这样的桌子: 但如何才能得到这种格式的结果: 我在此上下文中使用pivot的所有尝试都没有成功。 更新 根据@Gordon Linoff和@xxx的建议,尝试重做使用Dinamic SQL的代码,现在开始: ‘op为(选择op.id_object,op.id_param,name,op.cdate,op.value,RO

  • 问题内容: 新手有问题,请保持温柔: 结果是: 我不明白为什么列表改变时,我只是在做,没有。我什至不知道要用什么搜索词来弄清楚。 问题答案: 这是因为在进行分配后,和都引用相同的列表。 尝试执行以下操作以查看它们是指相同的对象还是不同的对象: 一个例子: 如果您确实要创建这样的重复副本,而不是引用原始列表,而是引用列表的副本,请使用slice运算符: 一个例子: 另外,请勿将其用作变量名,因为最初

  • 我目前正在上Java课,教授告诉我们,理解链接的一个好方法是制作双向链表。我做了一个单链表,但是我很难把它转换成双向链表。所以我想知道是否有人能给我任何建议,以确保我的最后一个号码与前一个号码相连?如果前面的数字和最后一个数字连接到null。这是代码的一部分,如果你想得到更多,只要问,我会发布。 用于添加元素等的代码。这是我试图让尾部连接到最后一个数字的尝试。 下面的代码是insert函数,我需要

  • 问题内容: 我有以下代码: 如何更改此代码: 使其可以像JSONP一样工作…这完全不同吗? 问题答案: 实际上,您只需要添加,剩下的就由jQuery完成。