메모리 액세스에 최적화된 개체에 대한 내구성 정의

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

메모리 최적화 테이블에는 두 가지 내구성 옵션이 있습니다.

SCHEMA_AND_DATA(기본값)
이 옵션은 스키마와 데이터 모두의 내구성을 제공합니다. 데이터 내구성 수준은 트랜잭션을 완전 내구성으로 커밋하는지 또는 지연된 내구성으로 커밋하는지에 따라 달라집니다. 완전 내구성 트랜잭션은 디스크 기반 테이블과 유사하게 데이터 및 스키마에 대해 동일한 내구성을 보장합니다. 지연된 내구성은 성능을 향상시키지만 서버 충돌이나 장애 조치(Failover)의 경우 데이터 손실을 발생시킬 수도 있습니다. 지연된 내구성에 대한 자세한 내용은 를 참조하세요 .트랜잭션 내구성을 제어합니다.)

SCHEMA_ONLY
이 옵션은 테이블 스키마의 내구성을 보장합니다. SQL Server가 다시 시작되거나 Azure SQL Database에서 재구성이 발생하면 테이블 스키마가 유지되지만 테이블의 데이터는 손실됩니다. (다시 시작할 때 테이블과 해당 데이터가 모두 손실되는 tempdb의 테이블과는 다릅니다.) 비지속성 테이블을 만드는 일반적인 시나리오는 ETL 프로세스에 대한 준비 테이블과 같은 일시적인 데이터를 저장하는 것입니다. SCHEMA_ONLY 내구성은 트랜잭션 로깅을 방지하여 I/O 작업을 크게 줄일 수 있지만 여전히 검사점 작업에 참여하여 테이블 스키마만 유지합니다.

기본 SCHEMA_AND_DATA 테이블을 사용하는 경우 SQL Server는 디스크 기반 테이블과 동일한 내구성을 보장합니다.

트랜잭션 내구성
메모리 최적화 테이블에 변경된 완전 내구성 트랜잭션(DDL 또는 DML)을 커밋하는 경우 지속성 메모리 최적화 테이블에 대한 변경 내용은 영구적입니다.

지연된 지속성 트랜잭션을 메모리 최적화 테이블에 커밋하면 메모리 내 트랜잭션 로그가 디스크에 저장된 후에만 트랜잭션이 지속됩니다. 지연된 내구성에 대한 자세한 내용은 를 참조하세요 .트랜잭션 내구성을 제어합니다.)

내구성 다시 시작
크래시 또는 계획된 종료 후 SQL Server가 다시 시작되면 메모리 최적화 지속성 테이블이 다시 검증되어 종료 또는 충돌 전에 상태로 복원됩니다.

미디어 오류 내구성
실패하거나 손상된 디스크에 지속성 메모리 최적화 개체의 지속형 복사본이 하나 이상 포함된 경우 SQL Server 백업 및 복원 기능은 새 미디어에서 메모리 최적화 테이블을 복원합니다.

참고 항목

메모리 최적화 개체에 대한 스토리지 만들기 및 관리