暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

DROP 子句的分享——GBASE南大通用

原创 三金先生 2023-12-12
78

当您想要取消一个分片表的分片时,请使用 ALTER FRAGMENT 语句的 INIT 子句或 DETACH 子句。而不是 DROP 子句。

如果 fragment 在被创建或添加时未命名,那么 sbspace 的名称同时也是该分片的名称。如果该分 片是系统生成的表或索引的范围区间分片,那么它的名称是 sys_pevalpos,evalpos 是系统目录中 分片的 sysfragments.evalpos 项。如果一个表或索引使用相同的范围区间分片策略,那么每个系统 生成的索引分片具有和该表系统生成分片的一样的标识。 

  当您删除一个分片时,数据库服务器尝试将被删除分片中的所有记录移到到另一个分片中。在此情 况下,目标分片可能没有足够的空间容纳这些添加的记录。如果发生这种情况,请遵循 ALTER FRAGMENT 和事务日志记录 中描述的过程,增加您的可用空间,并重试 ALTER FRAGMENT 操作。

当 DROP 子句指定一个或多个 dbspaces 从范围区间分片策略中移除时,这些 dbspace 不受影 响,但数据库服务器会将存储在该 dbspace 中表或索引的分片中的数据移动到其它可用 dbspace 中。(范围区间策略也将会受影响,因为它不再包含在新的系统生成分片的存储位置中的指定的 dbspace 。) 

  您无法使用 DROP 子句删除一个包含数据的范围区间分片。 

  您可以使用此子句删除包含数据的分片列表,只要余项分片接收这些数据。 如果此分片表由分片级别统计信息,那么 ALTER FRAGMENT DROP 操作也删除要被移除分片的 分片级别统计分布。然而,不会重新计算表级别的统计信息。表的下一个显式或自动的 UPDATE STATISTICS 操作将会重建旧的分片级分布并从表级别分布合并,再将结果存储在系统目录中。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论