메모리 내 데이터베이스 시스템 및 기술

적용 대상:SQL Server

이 페이지는 SQL Server 내의 메모리 내 기능 및 기술에 대한 참조 페이지로 사용할 수 있습니다. 메모리 내 데이터베이스 시스템의 개념은 최신 데이터베이스 시스템에서 사용할 수 있는 더 큰 메모리 용량을 활용하도록 설계된 데이터베이스 시스템을 의미합니다. 메모리 내 데이터베이스는 본질적으로 관계형 또는 비관계형일 수 있습니다.

메모리 내 데이터베이스 시스템의 성능 이점은 주로 사용 가능한 가장 빠른 디스크 하위 시스템에 있는 데이터보다 메모리에 상주하는 데이터에 더 빠르게 액세스하기 때문에(몇 가지 크기로) 가정합니다. 그러나 많은 SQL Server 워크로드가 사용 가능한 메모리의 전체 작업 집합에 맞을 수 있습니다. 많은 메모리 내 데이터베이스 시스템은 디스크에 데이터를 유지할 수 있으며 항상 사용 가능한 메모리에 전체 데이터 집합을 맞추지 못할 수 있습니다.

상당히 느리지만 내구성이 뛰어난 미디어를 앞세는 빠른 휘발성 캐시는 관계형 데이터베이스 워크로드에 주로 적용되었습니다. 워크로드 관리에 대한 특정 접근 방식이 필요합니다. 더 빠른 메모리 전송 속도, 더 큰 용량 또는 영구 메모리를 통해 제공되는 기회는 관계형 데이터베이스 워크로드 관리에 대한 새로운 접근 방식을 촉진할 수 있는 새로운 기능과 기술의 개발을 용이하게 합니다.

하이브리드 버퍼 풀

적용 대상:SQL Server

하이브리드 버퍼 풀 은 SQL Server 2019(15.x)를 사용하는 Windows 및 Linux 플랫폼 모두에 대해 바이트 주소 지정이 가능한 영구 메모리 스토리지 디바이스에 있는 데이터베이스 파일의 버퍼 풀을 확장합니다.

메모리 최적화 tempdb 메타데이터

적용 대상:SQL Server

SQL Server 2019(15.x)에는 메모리 최적화 tempdb 메타데이터인 새로운 기능이 도입되어 경합 병목 현상이 효과적으로 제거되고 워크로드가 많은 워크로드에 대한 tempdb새로운 수준의 확장성이 잠금 해제됩니다.

SQL Server 2019(15.x)의 메모리 최적화 메타데이터 및 최신 기능을 비롯한 최근 tempdb 개선 사항에 대한 자세한 내용은 SQL Server 2022 의 시스템 페이지 래치 동시성 향상으로 확장성 향상 및 시스템 페이지 래치 동시성 향상(Ep. 6) 시청 | 노출된 데이터입니다.

메모리 내 OLTP

적용 대상:SQL Server

메모리 내 OLTP 는 트랜잭션 처리, 데이터 수집, 데이터 로드 및 일시적인 데이터 시나리오의 성능을 최적화하기 위해 SQL Server 및 SQL Database에서 사용할 수 있는 데이터베이스 기술입니다.

Linux에 대한 영구 메모리 지원 구성

적용 대상:SQL Server - Linux

SQL Server 2019(15.x)는 유틸리티 영구 메모리를 사용하여 PMEM(영구 메모리)을 ndctl 구성하는 방법을 설명합니다.

지속형 로그 버퍼

SQL Server 2016(13.x)의 서비스 팩 1에는 WRITELOG 대기에 의해 바인딩된 쓰기 집약적 워크로드에 대한 성능 최적화가 도입되었습니다. 영구 메모리를 사용하여 로그 버퍼를 저장합니다. 이 버퍼는 작기 때문에(사용자 데이터베이스당 20MB), 트랜잭션 로그에 기록된 트랜잭션을 확정하기 위해 버퍼를 디스크로 플러시해야 합니다. 쓰기 집약적인 OLTP 워크로드의 경우 이 플러시 메커니즘은 병목 상태가 될 수 있습니다. 영구 메모리의 로그 버퍼를 사용하면 로그를 강화하는 데 필요한 작업 수가 줄어들어 전체 트랜잭션 시간이 향상되고 워크로드 성능이 향상됩니다. 이 프로세스는 비상 로그 캐싱으로 도입되었습니다. 그러나 Tail Log Backup과 충돌하는 것으로 인식되었으며, 로그의 꼬리가 트랜잭션 로그의 일부가 강화되었지만 아직 백업되지 않았다는 기존의 이해가 있었습니다. 공식 기능 이름은 지속형 로그 버퍼이므로 여기서 사용되는 이름입니다.

데이터베이스에 지속형 로그 버퍼 추가를 참조하세요.