VM 크기: Azure VM의 SQL Server에 대한 성능 모범 사례
적용 대상: Azure VM 기반 SQL Server
이 문서에서는 Azure VMs(Virtual Machines)에서 SQL Server의 성능을 최적화하기 위한 일련의 VM 크기 지침 및 모범 사례를 제공합니다.
일반적으로 비용에 대한 최적화와 성능에 대한 최적화 간의 절충이 있습니다. 이 성능 모범 사례 시리즈는 Azure Virtual Machines에서 SQL Server에 대한 최상의 성능을 얻는 데 중점을 두었습니다. 워크로드가 적은 경우 모든 권장 최적화 사항이 필요하지 않을 수 있습니다. 이러한 권장 사항을 평가할 때 성능 요구 사항, 비용 및 작업 패턴을 고려하세요.
자세한 내용은 이 시리즈의 다른 문서(검사 목록, 스토리지, 보안, HADR 구성, 기준 수집)를 참조하세요.
검사 목록
이 문서의 나머지 부분에서 자세히 설명하는 VM 크기 모범 사례에 대한 간략한 개요를 보려면 다음 검사 목록을 검토하세요.
- 워크로드 성능 특성을 식별하여 비즈니스에 적합한 VM 크기를 결정합니다.
- Azure로 마이그레이션하는 경우 Data Migration Assistant 및 SKU 권장 사항과 같은 도구를 사용하여 기존 SQL Server 워크로드에 적합한 VM 크기를 찾은 다음 Azure Data Studio로 마이그레이션합니다.
- AZURE Marketplace 이미지를 사용하여 SQL Server 설정 및 스토리지 옵션이 최적의 성능을 위해 구성됨에 따라 SQL Server VM을 배포합니다.
- VCPU가 4개 이상인 VM 크기를 사용합니다.
- SQL Server 워크로드의 최고 성능을 위해 메모리가 최적화된 가상 머신 크기를 사용합니다.
- Edsv5 시리즈와 Msv3 및 Mdsv3 시리즈는 OLTP 워크로드에 권장되는 최적의 메모리 대 vCore 비율을 제공합니다.
- Mbdsv3 시리즈 VM은 Azure VM의 SQL Server 워크로드에 가장 적합한 성능을 제공합니다. 중요 업무용 OLTP 및 데이터 웨어하우스 SQL Server 워크로드에 대해 이 시리즈를 먼저 고려합니다.
- Ebdsv5 시리즈는 8:1의 메모리 대 vCore 비율과 함께 높은 I/O 처리량 대 vCore 비율을 제공합니다. 이 시리즈는 Azure VM의 SQL Server 워크로드에 대해 최고의 가격 대비 성능을 제공합니다. 대부분의 SQL Server 워크로드에 대해 이러한 VM을 먼저 고려합니다.
- M 시리즈 제품군은 Azure에서 메모리 할당이 가장 높은 VM을 제공합니다.
- Mbsv3 및 Mbdsv3 시리즈 VM은 M 시리즈 제품군 간에 높은 메모리 할당 및 가장 높은 I/O 처리량 대 vCore 비율을 제공하며, 8:1 이상의 일관된 메모리 대 vCore 비율을 제공합니다.
- 하위 계층 D 시리즈, B 시리즈 또는 Av2 시리즈로 개발 환경을 시작하고 시간이 지남에 따라 환경을 확장합니다.
VM 크기 검사 목록을 다른 목록과 비교하려면 포괄적인 성능 모범 사례 검사 목록을 참조하세요.
개요
Azure VM 기반 SQL Server를 만들 때 필요한 워크로드 유형을 신중하게 고려해야 합니다. 기존 환경을 마이그레이션하는 경우 Azure VM 기반 SQL Server 요구 사항을 확인하기 위해 성능 기준을 수집합니다. 현재 온-프레미스 SQL Server 데이터베이스를 Azure VM의 SQL Server로 마이그레이션하기 위한 기준으로 원본 머신의 vCPU 및 메모리 구성을 사용합니다. Software Assurance가 있는 경우 Azure 하이브리드 혜택 활용하여 라이선스를 Azure로 가져오고 SQL Server 라이선스 비용을 절감합니다.
새 VM인 경우 애플리케이션 요구 사항에 따라 새 SQL Server VM을 만듭니다. 클라우드용으로 빌드된 새 애플리케이션에 대한 새 SQL Server VM을 만드는 경우 데이터 및 사용 요구 사항이 진화함에 따라 SQL Server VM의 크기를 쉽게 조정할 수 있습니다. 하위 계층 D 시리즈, B 시리즈 또는 Av2 시리즈로 개발 환경을 시작하고 시간이 지남에 따라 환경을 확장합니다.
SQL Server 워크로드에 따라 다음 VM 시리즈를 고려합니다.
- 중요 업무용 워크로드에 대한 가장 높은 메모리 할당: Mbsv3 및 Mbdsv3 시리즈 VM 은 Azure에서 가장 높은 메모리 할당을 제공하며 최상의 스토리지 성능을 제공합니다.
- 높은 I/O 처리량 대 vCore 비율: Mbsv3 및 Mbdsv3 시리즈 VM은 모든 클라우드에서 모든 VM 시리즈의 가장 높은 처리량 대 vCore 비율을 제공합니다. Ebdsv5 시리즈 VM은 Azure에서 두 번째로 높은 처리량 대 vCore 비율을 제공합니다. SQL Server 워크로드 에 대한 I/O 요구 사항을 모르는 경우 Ebdsv5 시리즈 VM은 요구 사항을 충족할 가능성이 가장 높은 VM 입니다. 자세히 알아보려면 스토리지 문서를 참조하세요.
- 더 큰 머신에 대한 병렬 처리: Msv3 및 Mdsv3 시리즈 VM은 병렬 처리를 제공하여 더 큰 데이터 웨어하우스 환경에 적합한 옵션을 제공합니다.
SQL Server 데이터 웨어하우스 및 중요 업무용 환경은 종종 8:1 메모리 대 vCore 비율을 초과하여 확장해야 합니다. 중간 환경의 경우 더 큰 데이터 웨어하우스 환경에 대해 16:1 메모리 대 vCore 비율 및 32:1 메모리 대 vCore 비율을 선택할 수 있습니다.
포털의 스토리지 구성과 함께 SQL Server VM 마켓플레이스 이미지를 사용합니다. 이렇게 하면 워크로드에 필요한 크기, IOPS 및 처리량을 얻는 데 필요한 스토리지 풀을 보다 쉽게 만들 수 있습니다. Premium Storage 성능을 지원하는 SQL Server VM을 선택하는 것이 중요합니다. 자세히 알아보려면 스토리지 문서를 참조하세요.
메모리 최적화 M 시리즈 VM
M 시리즈는 가장 큰 SQL Server 워크로드 중 일부에 대한 vCore 개수와 메모리를 제공합니다.
다음은 M 시리즈 VM의 기능을 나열합니다.
- Premium Storage, Premium Storage 캐싱, 울트라 디스크, 쓰기 가속 및 가속 네트워킹을 지원합니다.
- 메모리 공간이 크고 스토리지 성능에 덜 중점을 둔 높은 컴퓨팅 기능이 필요한 SQL Server 워크로드에 적합합니다.
Mbsv3 및 Mbdsv3 시리즈
Mbsv3 및 Mbdsv3 시리즈는 메모리 대 CPU 비율이 높은 대규모 메모리 내 데이터베이스 및 워크로드용으로 설계된 메모리 최적화 VM입니다. 이 시리즈의 VM은 4세대 Intel® Xeon® Scalable을 기반으로 하며 SQL Server 워크로드의 요구 사항을 충족하기 위해 다양한 메모리 크기 및 vCPU 수를 제공합니다. 중요 업무용 및 데이터 웨어하우스 워크로드에는 Mbsv3 및 Mbdsv3 시리즈 VM이 권장됩니다.
Mbsv3 및 Mbdsv3 시리즈 VM은 관계형 데이터베이스 서버, 데이터 웨어하우징, 무거운 보고, 대용량 캐시 및 메모리 내 분석에 완벽한 높은 메모리 대 CPU 비율을 가진 대규모 메모리 내 데이터베이스 및 워크로드를 지원합니다.
다음은 이 시리즈의 VM 특성입니다.
- Mbsv3 시리즈는 최대 176개 vCore 및 1,536GiB의 메모리를 제공하며, 일관된 8:1 메모리 대 vCore 비율, 650,000 IOPS 및 6,000MBps의 스토리지 처리량을 제공합니다.
- Mbdsv3 시리즈는 최대 176개의 vCore와 4TiB의 메모리, 650,000 IOPS 및 10,000MBps의 스토리지 처리량을 제공합니다. 이 VM 시리즈는 최고 성능의 Ebdsv5 시리즈에 대한 IOPS 및 처리량을 50% 이상 개선하여 Mbdsv3을 모든 클라우드에서 사용할 수 있는 가장 높은 성능의 VM 옵션 중 하나로 만듭니다. Mbdsv3 VM 시리즈는 Mbsv3 VM 시리즈와 비슷한 성능 특성을 공유하지만 강력한 로컬 및 임시 스토리지를 포함하므로 tempdb 성능 최적화, 보고, 중요 업무용 OLAP 및 데이터 웨어하우징 워크로드에 적합합니다.
Msv3 및 Mdsv3 시리즈
Msv3 및 Mdsv3 가상 머신은 중간, 높음 및 매우 높은 메모리 수준에서 컴퓨팅 성능 및 메모리 기능으로 설계되었습니다. 이러한 VM은 이전 세대 Mv2 VM에 비해 오류에 대한 향상된 성능, 확장성 및 복원력을 제공합니다.
다음은 이 시리즈의 VM을 나열합니다.
- Msv3 및 Mdsv3 중간 메모리 VM: 4세대 Intel® Xeon® 확장 가능 프로세서로 구동되며, NVMe 인터페이스를 사용하여 최대 4TiB의 메모리, 416TiB의 vCPU, 130,000 IOPS 및 4,000MBps의 원격 스토리지 처리량을 제공합니다.
- Msv3 및 Mdsv3 High Memory VM: NVMe 인터페이스를 사용하여 6TiB에서 16TiB까지의 메모리, 최대 832개의 vCPU, 최대 260,000 IOPS 및 8,000MBps 처리량의 높은 메모리 워크로드를 위해 설계되었습니다.
- Mdsv3 매우 높은 메모리 시리즈: 4세대 Intel® Xeon® Platinum 8490H(Sapphire Rapids) 프로세서로 구동됨, 최대 32TiB의 메모리, 1,792개의 vCPU, 최대 200,000 IOPS 및 8,000MBps의 원격 스토리지 처리량을 제공하는 M 시리즈 기반 가상 머신 중 가장 큰 메모리 공간을 제공합니다.
주의
NUMA 노드당 64개 vCore를 초과하는 Azure VM에서 SQL Server를 사용하려면 SMT 를 사용하지 않도록 설정합니다.
메모리 최적화 E 시리즈 VM
E 시리즈 VM은 고성능을 유지하기 위해 상당한 양의 RAM이 필요한 대규모 데이터베이스, 빅 데이터 분석 및 엔터프라이즈 애플리케이션과 같은 메모리 집약적 워크로드를 위해 설계되었습니다.
Ebdsv5 시리즈
Ebdsv5 시리즈는 Azure에서 사용할 수 있는 가장 높은 원격 스토리지 처리량을 제공하는 메모리 최적화 VM 시리즈입니다. 이러한 VM의 메모리 대 vCore 비율은 8:1이며 높은 I/O 처리량과 함께 대부분의 SQL Server 워크로드에 적합합니다. Ebdsv5 시리즈 VM은 Azure 가상 머신에서 실행되는 SQL Server 워크로드에 가장 적합한 가격 성능을 제공하며 대부분의 프로덕션 SQL Server 워크로드에 매우 권장됩니다.
참고 항목
더 큰 Ebdsv5 시리즈 크기(vCPU 48개 이상)는 NVMe 사용 스토리지 액세스를 지원합니다. 이 높은 I/O 성능을 활용하려면 NVMe를 사용하여 가상 머신을 배포해야 합니다.
Edsv5 시리즈
Edsv5 시리즈는 메모리 집약적 애플리케이션용으로 설계되었으며 Ebdsv5 시리즈가 제공하는 것만큼의 높은 I/O 처리량이 필요하지 않은 SQL Server 워크로드에 이상적입니다. 이러한 VM은 대용량 로컬 스토리지 SSD 용량, 최대 672GiB RAM, 매우 높은 로컬 및 원격 스토리지 용량을 제공합니다. 대부분의 이러한 가상 머신에서 vCore당 8GiB 메모리를 거의 일관되게 사용할 수 있으며, 대부분의 SQL Server 워크로드에 적합합니다.
이 그룹의 가장 큰 가상 머신은 vCore 104개와 672GiB 메모리를 제공하는 Standard_E104ids_v5입니다. 이 가상 머신은 격리되어 있으므로 호스트에서 실행 되는 유일한 가상 머신으로 보장 되므로 다른 고객 워크 로드와 격리 되기 때문에 중요합니다. 이는 SQL Server에 권장되는 것 보다 낮은 메모리 대 vCore 비율을 사용하므로, 격리가 필요한 경우에만 사용해야 합니다.
Edsv5 시리즈 가상 머신은 프리미엄 스토리지 및 프리미엄 스토리지 캐싱을 지원합니다.
ECadsv5 시리즈
ECadsv5 시리즈 가상 머신 크기는 임시 디스크가 있는 메모리 최적화 Azure 기밀 VM입니다. Azure 기밀 VM의 보안 이점에 대한 정보는 기밀 VM을 검토합니다.
Azure 기밀 VM의 보안 기능으로 인해 성능 오버헤드가 발생할 수 있으므로 워크로드를 테스트하고 성능 요구 사항을 충족하는 VM 크기를 선택합니다.
범용
범용 가상 머신 크기는 개발 및 테스트, 웹 서버 및 더 작은 데이터베이스 서버와 같은 더 작은 입문 수준 워크로드에 대해 분산된 메모리 대 vCore 비율을 제공하도록 설계되었습니다.
범용 가상 머신을 사용하는 메모리 대 vCore 비율이 낮을수록 메모리 기반 성능 카운터를 신중하게 모니터링하여 SQL Server에서 필요한 버퍼 캐시 메모리를 사용할 수 있는지 확인하는 것이 중요합니다. 자세한 내용은 메모리 성능 기준을 참조하세요.
프로덕션 워크로드에 대한 시작 권장 사항은 메모리 대 vCore 비율 8이기 때문에 SQL Server를 실행하는 범용 VM에 대한 최소 권장 구성은 vCPU 4개와 32GiB 메모리입니다.
Ddsv5 시리즈
Ddsv5 시리즈는 vCPU, 메모리 및 임시 디스크의 고른 조합을 제공하지만 더 적은 메모리 대 vCore를 지원합니다.
Ddsv5 VM에는 짧은 대기 시간과 고속 로컬 스토리지가 포함됩니다.
이러한 머신은 임시 스토리지와 부서별 관계형 데이터베이스에 빠르게 액세스해야 하는 병렬 SQL과 앱 배포에 적합합니다. 이 시리즈의 모든 가상 머신에서 표준 메모리 대 vCore 비율 4가 있습니다.
이러한 이유로 이 시리즈에서는 8개의 vCore 및 32GiB의 메모리를 포함하는 스타터 가상 머신으로 D8ds_v5를 사용하는 것이 좋습니다. 가장 큰 머신은 vCore 96개와 256GiB 메모리를 제공하는 D96ds_v5입니다.
Ddsv5 시리즈 가상 머신은 프리미엄 스토리지 및 프리미엄 스토리지 캐싱을 지원합니다.
참고
Ddsv5 시리즈는 SQL Server 워크로드에 권장되는 8의 메모리 대 vCore 비율을 포함하지 않습니다. 따라서 이러한 가상 머신은 작은 애플리케이션과 개발 워크로드에만 사용해야 합니다.
DCadsv5 시리즈
ECadsv5 시리즈 가상 머신 크기는 임시 디스크가 있는 범용 Azure 기밀 VM입니다. Azure 기밀 VM의 보안 이점에 대한 정보는 기밀 VM을 검토합니다.
Azure 기밀 VM의 보안 기능으로 인해 성능 오버헤드가 발생할 수 있으므로 워크로드를 테스트하고 성능 요구 사항을 충족하는 VM 크기를 선택합니다.
B 시리즈
버스트 가능 B 시리즈 가상 머신 크기는 개념 증명 및 매우 작은 애플리케이션과 개발 서버와 같이 일관된 성능을 요구하지 않는 워크로드에 이상적입니다.
버스트 가능 B 시리즈 가상 머신 크기의 대부분은 메모리 대 vCore 비율이 4입니다. 가장 큰 버스트 가능한 B 시리즈는 20개의 vCore와 80GiB의 메모리가 있는 Standard_B20ms .
이 시리즈는 머신 크기에 따라 변화하는 버스트 가능 크레딧을 사용하여 업무 시간 동안 버스트하는 기능을 제공하는 기능이 있는 고유한 앱입니다.
크레딧을 모두 사용한 경우, VM은 기준 머신 성능으로 돌아옵니다.
B 시리즈의 장점은 다른 시리즈의 다른 VM 크기와 비교했을 때 계산을 절약할 수 있는 것이며 특히 하루 종일 처리 능력을 많이 필요로 하는 경우에 해당합니다.
이 시리즈는 프리미엄 스토리지를 지원하지만 프리미엄 스토리지 캐싱은 지원하지 않습니다.
참고 항목
버스트 가능 B 시리즈는 SQL Server 워크로드에 권장되는 8의 메모리 대 vCore 비율을 포함하지 않습니다. 따라서 이러한 가상 머신을 더 적은 애플리케이션과 웹 서버, 개발 워크로드에만 사용해야 합니다.
Av2 시리즈
Av2 시리즈 VM은 개발 및 테스트, 낮은 트래픽 웹 서버, 중소 규모의 앱 데이터베이스, 개념 증명 등의 입문 수준 워크로드에 가장 적합합니다.
Standard_A2m_v2(vCore 2개 및 16GiB 메모리), Standard_A4m_v2(vCore 4개 및 32GiB 메모리) 및 Standard_A8m_v2(vCore 8개 및 64GiB 메모리)는 이러한 상위 3개 가상 머신에 대한 메모리 대 vCore 비율 8의 양호한 비율이 있습니다.
이러한 가상 머신은 소규모 개발 및 테스트 SQL Server 머신에서 모두 좋은 옵션입니다.
또한 8 vCore Standard_A8m_v2 작은 애플리케이션 및 웹 서버에 대 한 좋은 옵션이 될 수 있습니다.
참고 항목
Av2 시리즈는 프리미엄 스토리지를 지원하지 않으므로, 메모리 대 vCore 비율이 8인 가상 머신을 사용하더라도 프로덕션 SQL Server 워크로드에는 권장되지 않습니다.
스토리지 최적화
VM 크기에 최적화된 스토리지는 특정 사용 사례를 위한 것입니다. 이러한 가상 머신은 최적화된 디스크 처리량 및 IO로 특별히 설계되었습니다.
Lsv2 시리즈
Lsv2 시리즈는 높은 처리량, 짧은 대기 시간 및 로컬 NVMe 스토리지 기능을 제공합니다. Lsv2 시리즈 VM은 지속형 데이터 디스크를 사용하는 대신 VM에 직접 연결된 노드의 로컬 디스크를 사용하도록 최적화되었습니다.
이러한 가상 머신은 빅 데이터, 데이터 웨어하우스, 보고 및 ETL 워크로드에 대한 강력한 옵션입니다. 로컬 NVMe 스토리지의 높은 처리량 및 IOPS는 데이터베이스에 로드되는 파일을 처리하는 데 적합한 사용 사례이며, 데이터를 원본 시스템이나 Azure Blob 스토리지 또는 Azure Data Lake 같은 다른 리포지토리에서 다시 만들 수 있는 기타 시나리오입니다. Lsv2 시리즈 VM은 한 번에 최대 30분 동안 디스크 성능을 버스트할 수도 있습니다.
이러한 가상 머신의 크기는 vCPU당 8GiB의 메모리가 있는 8~80개 vCPU이며, 8개 vCPU마다 1.92TiB의 NVMe SSD가 있습니다. 즉, 이 시리즈의 가장 큰 VM인 L80s_v2 10x1.92TiB의 NVMe 스토리지가 있는 80개의 vCPU 및 640 BiB의 메모리가 있습니다. 이러한 모든 가상 머신에서 메모리 대 vCore 비율은 일관되게 8입니다.
NVMe 스토리지는 가상 머신의 할당을 취소하거나 서비스 복구를 위해 다른 호스트로 이동하는 경우 이러한 디스크에서 데이터가 손실될 수 있다는 것을 의미합니다.
Lsv2 및 Ls 시리즈는 프리미엄 스토리지를 지원하지만 프리미엄 스토리지 캐싱은 지원하지 않습니다. IOP를 늘리기 위한 로컬 캐시 만들기는 지원되지 않습니다.
Warning
임시 NVMe 스토리지에 데이터 파일을 저장하면 VM 할당이 취소될 때 데이터 손실이 발생할 수 있습니다.
제한된 vCore
고성능 SQL Server 워크로드에는 vCore 수가 많지 않아도 더 높은 용량의 메모리, IOPS가 필요한 경우가 많습니다.
대부분의 OLTP 워크로드는 다수의 작은 트랜잭션으로 구동되는 애플리케이션 데이터베이스입니다. OLTP 워크로드를 사용하는 경우 소량의 데이터를 읽거나 수정하지만 사용자 수를 기반으로 하는 트랜잭션 볼륨이 훨씬 더 높습니다. SQL Server 메모리를 사용하여 계획을 캐시하고, 성능을 위해 최근에 액세스한 데이터를 저장하고, 실제 읽기를 메모리로 빠르게 읽을 수 있도록 하는 것이 중요합니다.
해당 OLTP 환경에는 더 많은 양의 메모리, 빠른 스토리지 및 최적으로 수행하는 데 필요한 I/O 대역폭이 필요합니다.
더 높은 SQL Server 라이선스 비용 없이 이 수준의 성능을 유지하기 위해 Azure는 제한된 vCPU 수를 포함하는 VM 크기를 제공합니다.
그러면 상위 가상 머신의 동일한 메모리, 스토리지 및 I/O 대역폭을 유지하면서 사용 가능한 vCore를 줄임으로써 라이선스 비용을 제어할 수 있습니다.
vCPU 수를 원래 VM 크기의 절반이나 1/4로 제한할 수 있습니다. 가상 머신에서 사용할 수 있는 vCore를 줄이면 메모리 대 vCore 비율을 높일 수 있지만 계산 비용은 동일하게 유지됩니다.
새 VM 크기에는 더 쉽게 구분할 수 있도록 활성 vCPU 수를 지정하는 접미사가 붙습니다.
예를 들어, M64-32ms는 M64ms의 메모리, I/O 및 처리량을 포함하는 32개 SQL Server vCore 라이선스만 필요하고, M64-16ms에는 vCore 16개만 사용하면 됩니다. M64-16ms는 M64ms의 SQL Server 라이선스 비용의 4분의 1이지만 가상 머신의 계산 비용은 동일합니다.
참고 항목
- 중대형 데이터 웨어하우스 워크로드는 제한된 vCore VM을 활용할 수 있지만, 데이터 웨어하우스 워크로드는 더 적은 사용자를 사용하고 병렬 실행되는 쿼리 계획을 통해 더 많은 양의 데이터를 처리하는 프로세스를 사용하는 특징이 있습니다.
- 운영 체제 라이선싱을 포함하는 계산 비용은 상위 가상 머신과 동일하게 유지됩니다.
다음 단계
자세한 내용은 이 모범 사례 시리즈의 다른 문서를 참조하세요.
보안 모범 사례는 Azure Virtual Machines의 SQL Server에 대한 보안 고려 사항을 참조하세요.
Azure Virtual Machines의 SQL Server 개요에서 다른 SQL Server 가상 머신 문서를 검토하세요. SQL Server 가상 머신에 대한 질문이 있으면 질문과 대답을 참조하세요.