Sql server 2008 包含varbinary条目的大型sql server数据库

Sql server 2008 包含varbinary条目的大型sql server数据库,sql-server-2008,backup,varbinary,Sql Server 2008,Backup,Varbinary,我们必须设计一个SQL Server 2008 R2数据库来存储许多varbinary blob 每个blob将有大约4万个,每天将有大约70万个额外条目。 估计数据库的最大大小为25 TB(30个月)。 这些斑点永远不会改变。它们将仅被存储和检索。 BLOB将在添加当天删除,或者仅在30个月后的清理过程中删除。中间不会有变化 当然,我们需要表划分,但一般的问题是,在执行一个有效的备份(磁带)和恢复策略时,我们需要考虑什么? 谢谢你的推荐 看一看“逐段备份和恢复”——您会发现它对您的场景非常有用

我们必须设计一个SQL Server 2008 R2数据库来存储许多varbinary blob

每个blob将有大约4万个,每天将有大约70万个额外条目。 估计数据库的最大大小为25 TB(30个月)。 这些斑点永远不会改变。它们将仅被存储和检索。 BLOB将在添加当天删除,或者仅在30个月后的清理过程中删除。中间不会有变化

当然,我们需要表划分,但一般的问题是,在执行一个有效的备份(磁带)和恢复策略时,我们需要考虑什么? 谢谢你的推荐

看一看“逐段备份和恢复”——您会发现它对您的场景非常有用,这将受益于不同文件组/分区的不同备份计划。以下是几篇文章,让您开始学习:

过去,我有幸使用过几个非常大的数据库,我使用过的最大环境是5 TB以上的容量。更重要的是,我相信你们会遇到一些我可能从未面对过的独特挑战

我可以肯定的是,您将要实施的任何备份策略都需要一段时间,因此您应该计划每周至少有一天专门用于备份和维护,而数据库在可用时不应在相同的级别上运行

其次,我发现下面的MVP文章在规划通过本机MSSQL备份操作执行的备份时非常有用。备份命令有一些大型数据库特定选项,可以帮助缩短备份持续时间。虽然这些增加了吞吐量,但您可以预期性能影响。具体来说,在我的测试中影响最大的选项是buffercount、blocksize和maxtransfersize

此外,假设您的数据存储在SAN上,您可能希望在备份策略中调查SAN级别工具的使用情况。一些SAN供应商提供的软件与SQL Server集成以执行SAN风格的快照备份,同时仍与引擎集成以处理诸如标记备份日期和转发LSN值之类的事情

根据您所说的大部分数据不会随时间而改变的说法,包含差异备份似乎是一个非常有用的选项,它允许您减少恢复场景中必须恢复的事务日志的数量


如果您想进一步讨论,请随时与我直接联系。

您确定SQL Server是存储25 TB二进制文件的最佳解决方案吗?就我个人而言,遇到这种情况时,我倾向于将它们保存为文件对象,并编写指向数据库的路径和指针,而不是尝试将其存储在数据库中它本身。@EkoostikMartin:不,但我们必须这样做。在这个系统上,已经有一个包含700 GB结构化数据的数据库。在那里,除了已经可用的数据之外,我们还将通过一个存储过程从一个单独的系统接收这些对象,我们希望将其存储到一个单独存储上的单独数据库中。我们还需要通过存储过程导出这些数据。因此,如果没有强有力的理由反对它,我们将不胜感激。@David:对于较小的文件,我肯定会这样做,但由于文件实际上非常小,而且数量很多,我倾向于将其存储为varbinary。我们在过去有过不好的经验,系统存储大量较小文件的可管理性。此外,我还阅读了一些建议,如(已接受的答案)@user1633911有趣的观点,谢谢你分享这篇文章。谢谢!看起来很有希望,我会深入研究。