我最近开始了解 MSSQL Server 中拆分备份的概念,而我一直在 Sybase ASE 中进行条带备份。
Sybase ASE 中的条带备份比正常备份更快,如果我们使用三个条带,那么 Sybase 将使用 3 个 CPU 核心(取决于核心数量),因为它将被分成那么多线程,无论存储位置如何都并行执行。
我想了解 MSSQL 拆分备份是否也是如此,我读到如果我们使用不同的位置进行拆分备份,那么备份将并行执行并且会更快:
但是,如果存储位置相同(在同一驱动器和文件夹中),则不会涉及额外的 IO,因此对性能影响不大。
条带备份中的任何加速都将来自使用多个 IO 通道。如果所有文件都在同一个存储位置,它不会更快。
使用多个 CPU 内核来处理备份可能无济于事,因为备份非常简单。并且单个 CPU 内核可以使存储子系统充满备份页面。
通过将备份写入
nul
设备,您可以在任何大型数据库中亲眼看到这一点:产出