벤더 애플리케이션 데이터베이스는 매우 TempDB를 많이 사용합니다.
서버는 40 개의 코어와 768GB RAM의 가상 (VMWare)이며 SQL 2012 Enterprise SP3을 실행합니다.
TempDB를 포함한 모든 데이터베이스는 SAN의 Tier 1 SSD에 있습니다. 10 개의 tempdb 데이터 파일이 있으며 각 파일은 1GB로 미리 자라지 않으며 자동으로 자라지 않습니다. 70GB 로그 파일과 동일합니다. 추적 플래그 1117 및 1118이 이미 설정되어 있습니다.
sys.dm_io_virtual_file_stats는 지난 달 tempdb 데이터 및 로그 파일에서 50 테라 바이트 이상의 읽기 / 쓰기를 보여 주며 누적 io_stall은 250 시간 또는 10 일입니다.
우리는 이미 2 년 동안 공급 업체의 코드와 SP를 조정했습니다.
이제 우리는 많은 메모리를 가지고 있기 때문에 tempdb 파일을 RAM 드라이브에 배치하려고합니다. 서버가 재부팅 될 때 tempdb가 소멸 / 재 작성되므로 서버가 재부팅 될 때 플러시되는 휘발성 메모리에 배치하는 것이 이상적입니다.
나는 이것을 더 낮은 환경에서 테스트했으며 CPU가 느린 tempdb 드라이브를 기다리는 대신 더 많은 작업을 수행하기 때문에 쿼리 시간은 빨라지지만 CPU 사용량은 증가했습니다.
다른 사람이 높은 oltp 프로덕션 시스템에서 tempdb를 RAM에 넣었습니까? 큰 단점이 있습니까? 구체적으로 선택하거나 피해야 할 공급 업체가 있습니까?