代码之家  ›  专栏  ›  技术社区  ›  Mauro

用于SharePoint的SQL 2005数据库分区

  •  3
  • Mauro  · 技术社区  · 17 年前

    背景

    我有一个巨大的数据库为一个SharePoint网站集。它是130GB,以每月10GB的速度增长。130GB中的100GB位于一个网站集中。30GB是版本表。只有一个网站集-按设计。

    问题

    我是否能够使用SQL 2005S数据分区功能(创建多个数据文件)对数据库(SharePoint)进行分区? 是否可以对已创建的数据库进行分区? 是否有人分区了SharePoint数据库?我会遇到什么问题吗?

    2 回复  |  直到 17 年前
        1
  •  1
  •   ConcernedOfTunbridgeWells    17 年前

    您必须创建一个分区集并在该分区集上重建表。sql2005只能对单个列进行分区,因此在数据库中必须有一列

    • 行为相当可预测,因此每个分区中的数据量不会有很大的偏差。
    • IIRC列必须是数值或日期时间值
    • 在实践中,如果它是单调递增的,那么它是最简单的——您可以创建一系列分区(自动或手动),系统将在到达范围定义时填充它们。

    日期(可能是输入文档的日期)是理想的。但是,在大表上可能有有用的列,也可能没有有用的列。M.S.技术支持将是最好的建议来源。

    分区 应该 对应用程序透明(同样,您需要一个具有适当行为的列来用作分区键)。

    除非您足够幸运地拥有一个分区键列,该列在最常见的查询中也用作搜索谓词,否则您可能不会从分区中获得太多的查询性能优势。一个工作良好的列的例子是数据仓库中的日期列。但是,您的SharePoint应用程序可能无法广泛使用这种类型的FO查询。

        2
  •  0
  •   J B    17 年前

    毛罗

    是否无法在SharePoint级别上细分数据?

    也就是说,您可能有多个“站点”使用一个(SQL)内容数据库。 您可以将站点数据迁移到新的内容数据库,这将允许您减少该大内容站点中的数据,然后收缩数据文件。

    它还将帮助您管理明显的持续增长。

    詹姆斯。