在这里(一家拥有12人的Windows开发团队的数十亿美元的制造公司)在工作,我们将转到所有新应用程序的单个主数据库,并将其与通常用于数据库的架构分解在一起之前。还将出现一些带有员工目录和分支目录等内容的通用模式。
我仍然不确定我对这一举动有何看法,但是我们将在几个小时内召开一次 session ,讨论其优缺点,最佳实践,陷阱等...因此我正在寻找您对此的想法...好吗?不好吗从现在开始我们要遇到什么问题?
欢迎任何想法,技巧或建议。谢谢
编辑
为了回应对此问题的评论,我们正在使用SQL Server 2005,实际上是在谈论将同一实例上的单独数据库迁移到单个数据库中。驱动问题是整个数据库完全缺乏参照完整性,因为我们的大多数应用程序都需要访问公用数据,例如员工记录或分支机构信息。
更新
好几个人要求我用 session 的结果来更新这个问题,就在这里。我们来回讨论了这样做的利弊(我甚至使用投影仪向他们展示了这个问题),到我们完成时,我们已经大致涵盖了这里所讨论的利弊。我们中大约一半的人认为我们可以用正确的资源和 promise 来完成它,而大约一半的人认为我们不能做到这一点(或者说它做得不好)。我们决定花一些时间与Microsoft交流,以获得他们的想法和针对特定平台的建议。与他们交谈后,我将确保更新此问题和my blog。感谢您提供的所有帮助和有用的答案。
最佳答案
庞大的数据库由于规模庞大而难以维护:备份花费更长的时间,灾难恢复速度较慢,这反过来又需要更多的备份。您可以通过创建文件组并在维护计划中使用filegroup level backup来解决这些问题,并在崩溃恢复时使用'piecemeal restore'策略来加快处理速度。
正确使用文件组将使以前答复中引用的大多数“缺点”消失:它们可以分发I / O,清理您的维护计划和备份/还原策略,通过仅使损坏的部分脱机来提供可用性。在崩溃的情况下的数据库。因此,我想说,虽然这些“缺点”是合法的关注点,但可以通过适当的部署策略来缓解它们。这些缓解措施确实需要真正,经验丰富的dba掌控,这是事实,因为它们将超出需要的开发人员转变为dba的舒适范围。
我可以很快想到的一些专业人士:
在其他帖子中也没有看到一些缺点:
关于database - 使用单个数据库的利弊和最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/916295/