백업 내부와 관련하여 Paul이 작성한 기사는 훌륭하며 반드시 읽어야합니다. 다른 사람들이 말한 내용에 추가하고 질문의 특정 부분을 강조
또한 백업이 단일 스레드라는 것을 들었습니다. 단일 파일로 백업한다고 가정하면 하나의 코어 만 사용합니다. 또한 멀티 코어 머신 (예 : 16 코어 또는 적어도 하나보다 큰 숫자)이 있다고 가정합니다.
백업 작업 can use parallelism
이지만이 점을 기억하십시오 . SQL Server의 Optimizer가 병렬 처리 가 아니라 백업이 데이터 파일을 읽어야하는 위치와 백업이 데이터 파일 및 작성된 백업 파일의 양을 기록하는 위치와 관련된 디스크 수에 의해 구동됩니다.
MAXDOP
SQL Server 백업을 수행하는 동안 힌트를 사용할 수 없습니다
간단한 TSQL 백업 작업을 위해 SSMS에서 실행 계획을 생성 할 수 없습니다.
SQL Server의 쿼리 최적화 프로그램이 구동하는 병렬 처리는 기본적으로 관련 연산자에 대한 것입니다 (실제로는 복잡하지만 단순성을 위해이를 수행 할 수 있음). 백업 작업에는 연산자가 포함되지 않으므로 최적화 프로그램이 구동하는 병렬 처리를 사용할 수 없기 때문입니다.
Technet Wiki에서 백업 및 병렬 처리 에 대한 기사를 작성하여 SQL Server 백업 중 병렬 처리를 설명하는 간단한 예제를 사용했습니다. 다음은 결론입니다
데이터베이스 파일이 여러 디스크에있는 경우 데이터를 읽기 위해 장치 드라이브 당 스레드에서 백업 조작이 시작됩니다. 동일한 방식으로 여러 드라이브 / 마운트 포인트에서 복원을 수행하면 백업 작업이 드라이브 / 마운트 포인트 당 하나의 스레드를 시작합니다.
동일한 드라이브에 여러 백업 사본을 덤프하더라도 백업 파일 당 하나의 스레드가 덤프됩니다.
백업과 관련된 병렬 처리는 스트라이프와 관련이 있습니다. 각 스트라이프는 자체 작업자 스레드를 가져 오며 이는 실제로 병렬 작업으로 고려해야하는 백업 / 복원의 유일한 부분입니다.
최대 병렬 처리 수준은 백업 작업에 영향을 미치지 않습니다.
Paul과 Bob Dorr로부터 이에 대한 전문가 의견이 있습니다.
백업 작업이 실행되면 어떻게됩니까? 또한 버전마다 큰 차이가 있습니까? 예를 들어 2008,2012 및 2014 (라이센스가 아님).
Bob Dorr 의이 blog.msdn 기사 를 읽어 보시기 바랍니다 . 그가 강조한 몇 가지 중요한 점은
백업이 시작되면 버퍼 풀 외부의 메모리에서 할당 된 일련의 버퍼가 생성됩니다. 대상은 각 버퍼에 대해 일반적으로 4MB이며 약 4-8 개의 버퍼가됩니다. 계산에 대한 자세한 내용은 http://support.microsoft.com/kb/904804/en-us에 있습니다.
버퍼는 사용 가능 큐와 데이터 큐간에 전환됩니다. 판독기는 사용 가능한 버퍼를 가져 와서 데이터로 채우고 데이터 큐에 놓습니다. 기록기는 채워진 데이터 버퍼를 데이터 큐에서 가져 와서 버퍼를 처리 한 후 사용 가능 목록으로 리턴합니다.
각 데이터 큐에서 검색하는 백업 장치 당 라이터가 제공됩니다. 따라서 디스크 사양이 4 (4) 인 백업 명령에는 4 개의 기록기와 판독기가 있습니다. 판독기는 비동기 I / O를 사용하므로 기록기를 따라갈 수 있습니다.
당신은 사용할 수 있습니다 trace flags 3213 and 3605
, 모두 너무 문서화 테스트 환경에 사용하십시오, 그리고 흥미로운 메시지가 SQL Server 오류 로그에 버려진 무엇을 참조하십시오. 아래와 같은 것이 나타납니다
Memory limit: 249MB
BufferCount: 7
Sets Of Buffers: 1
MaxTransferSize: 1024 KB
Min MaxTransferSize: 64 KB
Total buffer space: 7 MB
Tabular data device count: 1
Fulltext data device count: 0
Filestream device count: 0
TXF device count: 0
Filesystem i/o alignment: 512
Media Buffer count: 7
Media Buffer size: 1024KB
다양한 버전의 백업 코드에서 중요한 변경 사항을 알지 못하며 그러한 사항은 설명되어 있지 않습니다. SQL Server 2012 SP1 Cumulative Update 2,
TSQL 또는 SMO를 사용하여 SQL Server의 Windows Azure Blob 저장소 서비스에서 백업 및 복원을 활성화하는 데 도입 된 개선 사항에 대해서만 알고 있습니다. 여기를 읽으 십시오