我是一名热心的开发人员 - 但是时不时地,客户没有一个像样的DBA来处理这些问题,所以我被要求决定....
在处理合理大小的SQL Server数据库(比Northwind或AdventureWorks更大的数据库)时,您的策略/最佳实践是什么? - 您使用多个文件组吗?如果是这样:多少?为什么?
您决定何时摆脱"一个文件组的一切"方法的标准是什么:
数据库大小?
数据库复杂?
可用性/可靠性要求?
还有什么?
如果您使用多个文件组,您使用了多少个?一个用于数据,一个用于索引,一个用于日志?数据的数量(多少)?您选择的原因是什么 - 为什么要使用确切数量的文件组:-)
Microsoft培训和最佳实践方法如下:
日志文件放在单独的物理驱动器上
数据文件放在单独的物理驱动器上
多个文件组:当特定表格非常大时.通常在事务数据库中的情况(独立物理驱动器)
多个文件组:使用范围或想要将查找数据拆分为只读数据库文件时(单独的物理驱动器)
请记住,在存储数据时,MDF在技术上与硬盘驱动器分区的工作方式类似.MDF是随机读取的文件,而LDF是顺序读取的文件.因此,将它们拆分为单独的驱动器会导致巨大的性能提升,除非运行固态驱动器,在这种情况下增益仍然存在.