SQL Server 타사 파일 캐시 시스템을 평가할 때 고려해야 할 주요 요소

기술 자료 번역 기술 자료 번역
기술 자료: 917043 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

요약

이 문서에서는 일부 고객은 타사 파일 시스템 캐싱을 평가할 때 알아야 할 핵심 요인을 간략히 설명합니다.

타사 파일 캐시 구현을 제대로 구현될 때 Microsoft SQL Server 데이터베이스 성능을 향상시킬 수 있습니다. 그러나 SQL Server 데이터베이스를 특정, 구현과 구성을 이러한 제품의 높은 데이터 손실 위험이 남아 있을 수 있습니다. 고객은 적절한 데이터 무결성을 위해 구성을 완전히 테스트해야 합니다.

URL 및 기타 인터넷 웹 사이트 참조를 포함하여 이 설명서의 내용은 예고 없이 변경될 수 있습니다. 다른 설명이 없는 한 회사, 조직, 제품, 도메인 이름, 전자 메일 주소, 로고, 사람, 장소 및 사용된 이벤트 등은 실제 데이터가 아닙니다. 모든 실제 회사, 조직, 제품, 도메인 이름, 전자 메일 주소, 로고, 사람, 장소 또는 연결된 작성되었습니다 유추해서도 안됩니다. 모든 해당 저작권법을 준수하는 사용자의 책임입니다. 저작권의 권리와 이 설명서의 어떠한 부분도 있습니다 재현할 또는 도입된 검색 시스템에 저장하거나 모든 양식 또는 수단 (전자, 기계, photocopying, 기록, 또는 그렇지 않으면) 또는 목적으로도 부분도 Microsoft의 서면 않고 전송된.

Microsoft는 특허권, 특허 응용 프로그램, 상표, 저작권, 또는 이 문서 본안에 기타 지적 재산권을 보유할 수 있습니다. 모든 서면된 사용권 계약에 따라 Microsoft 로부터, 제공은 이 문서의 사용하면 모든 등에 이러한 특허권, 상표권, 저작권, 또는 기타 지적 재산권 사용권도 있지 않은 귀하에게 명시적으로 제공된 권리 이외에 허여하지.

ⓒ와 2006 Microsoft Corporation입니다. 1991-

Microsoft, Windows, Windows Server 및 SQL Server 미국 및/또는 기타 국가에서 Microsoft Corporation의 상표권 또는 등록된 상표일 수 있습니다.

이 문서에서는 SQL Server 특별히 작성된 있지만 일반적으로 Active Directory 및 Exchange Server 제품을 함께 사용하는 Jet 데이터베이스에 적용됩니다.

추가 정보

이 섹션에서는 요구 사항 및 모든 솔루션을 배포하기 전에 타사 공급업체에 완전히 설명하는 자세한 예제를 제공합니다. 고객은 또한 있는지 데이터 무결성을 올바르게 유지 관리하는 다양한 복구 시나리오를 테스트하려면 특히 주의해야 합니다.

SQL Server I/O (입/출력) 요구 사항

모든 SQL Server 데이터베이스 또는 백업 파일 저장 기본 사항을 미리 쓰기 로깅 (WAL) 프로토콜을 지원하는 필요합니다. 이러한 기본적인 다음 문서에 나와 있습니다.
SQL Server 2000 I/O 기본 사항
http://technet.microsoft.com/en-us/library/cc966500.aspx
참고 또한 이 문서에서는 SQL Server 2005 적용됩니다.
230785SQL Server 7.0, SQL Server 2000 및 SQL Server 2005 로깅과 데이터 저장소 알고리즘을 데이터 안정성을 확장하는합니다
다음 몇 가지 중요한 요구 사항 목록입니다.
  • 쓰기 순서를 유지해야 합니다.
  • 종속 쓰기 일관성을 유지해야 합니다.
  • 쓰기 또는 안정적인 미디어에 항상 보호해야 합니다.
  • 조각난된 I/O 방지 발생해야 합니다.

파트너 제품 인증 호환성 또는 안전을 보장할 수 없습니다.

타사 제품 또는 특정 공급업체를 Microsoft 로고 인증을 받을 수 있습니다. 그러나 파트너 인증 또는 특정 Microsoft 로고 호환성 또는 특정 목적에의 적합성에 대한 SQL Server, Exchange 서버 또는 Active Directory 인증할 수 없습니다.

FILE_FLAG_WRITETHROUGH 및 FILE_FLAG_NO_BUFFERING

데이터베이스 제품에서 특별히 쓰기-통해 및 버퍼링 플래그가 데이터베이스 파일을 열 때 데이터 손실을 막을 수 있습니다. 모든 쓰기 요청은 이러한 파일을 안정적인 미디어에 보호해야 합니다. 그렇지 않은 경우 데이터 손실이 발생할 수 있습니다. 아래 나열된 파일 시스템 캐시를 노출할 수 있는 특정 예는 다음과 같습니다.
  • 쓰기 조합 및 쓰기 순서 변경
    실제 I/O 요청을 줄이기 위해 비-배터리 기반된 캐시가 종종 결합하고 쓰기 작업을 즉시 WAL 프로토콜을 요구 사항을 주요 내용, 순서 바꾸기.
  • I/O 블록 크기
    비슷한 쓰기 I/O 블록 크기를 결합 및 순서를 바꿀 수 있습니다. 캐시를 I/O 경로를 블록 크기를 기반으로 I/O 완료 시도합니다. 다시 이 성능 향상을 제공할 수 있지만 데이터베이스를 손상시킬 수 열리고 WAL 프로토콜을 요구 사항을 즉시 끊어집니다.

talking 포인트 및 예제

다음 섹션에서는 키 예제 및 talking 데이터 무결성 및 안전성 관련된 지점을 제공합니다. 정전 실패 및 명확하게, 일반적인 지점으로 사용하고 있지만 이는 종종 비슷한 데이터베이스 무결성 문제를 선행 다양한 문제가 있는 대체할 수 있습니다.

예제 1: 데이터 손실 및 물리적 또는 논리적 손상

영문자와 숫자가 조합된 PIN 코드가 설정된 Bluetooth 장치가 있다면:
  1. 로그 레코드는 페이지의 100 데이터베이스에 기록됩니다.
  2. 로그 레코드를 비 배터리 기반 캐시에 보관되는 있지만 데이터베이스 엔진이 로그 쓰기 완료 "보안된 미디어 안정적인" 있습니다 말라고.
  3. 데이터베이스 엔진이 LSN 강화해야 간주하고 100 페이지 쓰기 발급합니다.
  4. 또한 페이지 100-배터리 기반된 캐시가 보관됩니다.
  5. 커밋 오류 없이 트랜잭션을 완료합니다.
데이터베이스 엔진은 처리 안정적인 미디어에 쓰기를 성공적으로 커밋된 계속합니다. 하지만 변경 내용을 밖에 없는 배터리 백업된 캐시 절대로 실제로 존재했던 때문에 정전이 시점에서 즉시 데이터 손실됩니다. 크래시 복구 손실된 로그 레코드에 대한 모를 작업을 다시 시도하지 않습니다 때문에 크래시 복구 오류를 나타내는 것은 아닙니다. 여러 개체 수정 시나리오 (예: 기본 키, 외래 키 삽입) 발생할 수 있는 데이터베이스 손상 다양한 유형의 확장합니다.

작은 변경을 I/O 캐시 처리하는 방법을 발생할 수 있는 여러 가지 다른 문제가 있습니다. 트랜잭션, 있지만 실제 위해 변경한 페이지를 100 미디어 롤백되었습니다 간단한 파생이 가정합니다. 크래시 복구를 다시 (절대 미디어 안정적인 변경된), 로그 레코드에 대한 실행 취소 작업을 논리적으로 및 가능한 물리적으로 손상된 데이터베이스 두고 크래시 복구 중에 나타날 페이지 100 하면 그렇게 알 수 없습니다.

예제 2: 주의 대상 데이터베이스

일부 공급업체는 "파일에서 선택 (opt" 허용 및 종종 캐시에서 선택한 데이터베이스 로그 파일 (.ldf SQL Server) 두는 것이 좋습니다. 관리자가 특별히 캐싱 소프트웨어에 의해 무시되는 파일을 표시하는 합니다 "거부할" 정책이 것입니다. 그렇지 않은 경우 파일을 자동으로 포함되어 있습니다.

다음 예제에서는 강조 좋지 가정 않습니다. 이러한 캐시 밖으로 모든 데이터베이스와 백업 파일을 선택한 수 좋습니다.
  1. 쓰기를 안정적인 미디어 가져오기 때문에 로그 파일, 선택한.
  2. 페이지 100이 수정됩니다.
  3. 데이터베이스 엔진이 검사점 작업을 실행합니다.
  4. 엔진이 모든 페이지를 데이터베이스 및 보안 로그 레코드가 말라고 (시간 고려해야 검사점 지점을 강화해야). 그러나 데이터 페이지를 안정적인 미디어 또는 저장된 모든 않습니다.
  5. SQL Server 데이터베이스에 "SIMPLE 복구 모드에서 않으므로 이제 검사점 로그 레코드를 자릅니다.
  6. 방금 확인란 가리키는 있던 페이지 100 다시 수정됩니다.
데이터베이스 데이터 손실에 노출되는 있습니다 상황과 의심되는 데이터베이스에서 일반적으로 발생합니다. 다시, 정전 이루어지는 경우, 잘라내기 때문에 더 이상 존재하지 않기 때문에 크래시 복구 로그 레코드가 없습니다. 데이터베이스 엔진이 데이터베이스 페이지가 누락된 검사점 동안 보안이 설정되어 있어야 합니다 데이터를 나타내는 정보가 있습니다. 크래시 복구 100 페이지에서 두 번째 수정을 분석하려면 시도하지만 안정적인 미디어에 검사점 시점에 보안되지 않는 제대로 페이지 100 때문에 실패합니다.

크래시 복구 복구 요구 사항을 결정할 때 페이지 헤더에 저장된 LSN 값을 사용합니다.
  • 페이지의 LSN 최신 로그 레코드의 이보다 크거나 있으면 페이지 일관된 LSN 비교 기준으로 로그 레코드가 이미 있으므로 복구 페이지에서 더 이상 작업이 않습니다.
  • 페이지의 LSN 로그 레코드가 오래된 경우 복구 페이지를 적절한 상태로 되돌리는 데 적절한 작업을 수행해야 합니다. 복구 누락된 데이터 조건을 발견했습니다 복구가 실패합니다 제대로 페이지 rightful 상태로 반환할 수 없습니다.
예를 들어, 두 번째 수정 페이지의 100 로그 레코드가 저장된 이전 LSN 페이지 머리글에서 존재하지 않는 및 현재 페이지를 다시 이전 로그 레코드가 없습니다. 따라서 복구 안전하게 계속 없습니다 데이터베이스는 주의 대상으로 표시되어 있습니다.

백업 예제 3: - 사용할 수 없는 자동 백업 체인이 중단

예제 2 분수를 바로 이러한 유형의 문제가 발생할 수 있습니다. 예를 들어, 복구 모드 대신 "단순" 다음에서는 데이터베이스를 "FULL RECOVERY" 모드로 있지만 정기적인 백업 로그 및 데이터베이스. 처음에는 그대로 로그 체인을 있고 문제를 해결하려면 복원 순서를 바로 실행할 수 있으므로 이 더 나은 것으로 나타납니다.

백업 파일 또는 일부를 예기치 않게 캐시할 수 있도록 몇 가지 캐시 구현을 "거부할" 정책을 사용할 때 올바른 가정 수 없습니다. SQL Server 백업 파일을 플러시합니다 때 SQL Server 백업 미디어에 모든 쓰기 FlushFileBuffers Win32 API 함수를 사용하여 안정된 미디어 또는 제대로 저장됩니다 있어야 합니다. 모든 쓰기를 제대로, FlushFileBuffers 함수를 호출하는 동안 플러시됩니다 캐시 공급업체에 확인해야 경우 따라서 작업이 성공적으로, 데이터베이스가 완료되기 전에 미디어 안정적인 엔진 로그 보안된 백업 없이 자를 수 있습니다. 다시 정전이 시점에서 올바른 로그 레코드가 누락된 및 크래시 복구의 장애를 일으킬 수 있는 조건이 발생합니다. 더 중요한 무엇입니까 크래시 복구를 이러한 데이터베이스 누락된 로그 레코드를 인해 감지할 수 없게 될 수도 있습니다 백업 체인이 자동으로 손상되었을 수 있습니다. 백업 복원 동안 데이터베이스 엔진이 백업이 손상된 나타내려면 수 있습니다.

예제 4: 잘못된 데이터베이스 상태

데이터베이스 파일이 서로 엄격한 쓰기-통해 필요 및 규정 준수 그룹으로 모두 적용하려면 주문 간의 종속성 포함되어 있습니다. 잘못된 가정을 경우에만 로그 파일을 체크 여부가 같은 정책을 만드는 몇 가지 쓰기 통해 필요한 데이터 파일에 대한 발생할 주요 데이터베이스 작업 중에는 검사점, 파일 크기 변경, 차등 백업, 기록되지 않은 작업 및 BULK 기록될 복구 모델이 있습니다.

예제 5: 스냅샷 데이터베이스를 데이터 손실을 ? 자동 수 있다

SQL Server 2005 스냅샷 데이터베이스를 지점에 시간 쿼리에 대해 소개합니다. 기본 데이터베이스의 데이터 페이지에 새 수정 설정되기 전에 스냅샷 데이터 데이터베이스에 있는 데이터 페이지의 복사본을 보호하기 위해 기록 중 복사 데이터베이스 기술을 사용합니다. 이 프로세스는 트랜잭션 계속하기 전에 페이지를 스냅샷 데이터베이스를 보호해야 합니다. 페이지 또는 안정된 미디어 보안이 설정되어 있으면 데이터 무결성 문제가 지속됩니다. 페이지 쓰기 중요한 있으므로 스냅샷 데이터베이스를 트랜잭션 로그가 포함되어 있지 않습니다. 정전 같은 발생한 경우 가능한 주 데이터베이스 페이지가 변경되었습니다 있지만 캐시된 쓰기 끊어져 스냅샷 이전 이미지 반영할 수 있습니다.

구성하는 방법

파일 캐시에서 무언가를 - 배터리 백업된 캐시 공급업체 구현 특정 같이 제공하는 제품을 구성하는 방법 그러나 몇 가지 규칙은 적용할 수 있습니다.
  • I/O 완료 운영 체제 캐시를 나타냅니다 모든 쓰기는 안정적인 미디어 또는 완료해야 합니다.
  • 캐시에서 서비스되는 읽기 요청 또는 안정적인 미디어에 있는 것처럼 동일한 이미지를 반환합니다 한 데이터는 캐시할 수 있습니다.
이러한 규칙은 기본적으로 비 배터리 백업된 캐시 읽기 작업에 효과적인 수 있지만 쓰기 요청에 사용되는 의미합니다. 적절한 구성을 사용하여 이 데이터베이스 엔진은 성능 향상을 제공할 수 있습니다. 그러나 합니다. 그리고 주의 깊게 따로 뭔가 SQL Server에서 사용할 수 있는 RAM을 전반적인 성능을 저하시킬 수 있습니다. 같은 설정을 테스트할 수 있습니다. SQL Server 제네릭 캐시 메커니즘 보다 자세한 정밀도로 추가 메모리를 사용할 수 있습니다.

읽기 전용 데이터베이스

읽기 전용 데이터베이스 위치를 이러한 유형의 제품 Excel 예로 수 있습니다. 데이터베이스를 처음 만들어지고 데이터 무결성과 데이터베이스 읽기 전용 표시하는 데 사용되는 ALTER DATABASE 문 이후에 캐싱 메커니즘이 할당된 데이터베이스 안정적인 미디어에 저장된 경우 성능 향상은 발생할 수 있습니다. 일부 구현에서는 압축된 이미지 데이터베이스 페이지의 실제 데이터를 캐시에서 검색할 수 있도록 및 실제 I/O 줄이는 캐시를 유지합니다.

주의 WAL 프로토콜을 운영하기 캐시에 할당할 때 읽기 쓰기 데이터베이스가 전혀 수 있어야 합니다.

보안

RAM 기반 파일 시스템 캐시 (예: 캐시 소개 데이터의 다른 "메모리" 위치를 소개합니다. 데이터베이스 엔진이 같은 제품을 중요한 데이터 또는 안정적인 미디어에 저장된 및 액세스 제어 목록 (ACL) 보호를 제대로 유지할 가정할 수 있습니다. RAM 기반 캐시 안정적인 미디어에 비해 고유한 보안 문제 집합에 데이터가 노출될 수 있습니다. 예를 들어, 응용 프로그램 서버가 중요한 정보를 사용하여 끝날 때마다 다음과 같은 SecureZeroMemory 기능을 사용하도록 디자인된 경우 응용 프로그램이 데이터를 RAM에 더 이상 존재하지 않음을 예상하고 없습니다. 그러나 응용 프로그램 또는 안정적인 미디어에 되도록 예상한 시기에 양식 데이터가 캐시된 상태로 유지될 수 있습니다. 있으면 보안 고려 사항을 변경할 수 있습니다.

데이터 무결성 검사

항상 강력한 및 일반 데이터 무결성 전략을 좋습니다. 이 포함되어야 합니다 있지만 백업 및 일반 DBCC CHECKDB 연산을 프로덕션 및 복원된 데이터베이스를 복원하기 위해 제한되지 않습니다.

또한 환경에 변경을 구현하는 평가할 때 또는 환경의 안정성에 관련된 모든 문제가 발생할 경우 이러한 안전 테스트의 빈도를 늘리면 좋습니다.

해당 SQLIOStress 사용하는 방법에 대한 자세한 내용은 유틸리티, Microsoft 기술 자료의 다음 문서를 참조하십시오.
231619SQL Server와 같은 디스크 하위 시스템 스트레스 SQLIOStress 유틸리티를 사용하는 방법

TEMPDB 데이터베이스

특정 캐싱 시스템에서 TEMPDB 데이터베이스를 찾을 수 있습니다. 여러 가지 요인은 합니다 신중하게 고려해야 하며 이 구성에서 TEMPDB 데이터베이스의 저장소 위치를 평가할 때 테스트한 합니다. Microsoft 기술 자료의 다음 문서를 I/O 요구 사항, 관련된 지원 경계 및 가능한 성능 향상을 간략히 설명합니다.
917047TEMPDB 데이터베이스에 대한 Microsoft SQL Server I/O 하위 시스템이 요구 사항

지원

Microsoft SQL Server 지원 표준 데이터 복구 기술을 사용하여 고객에게 도움이 됩니다. 이러한 시간까지 근본 원인 분석 제품을 제거할 수 있는 질문, Microsoft SQL Server, Active Directory 및 Exchange 지원에 데이터 무결성 묻는 컴퓨터 그리기 및 하면 설치된 제품 유치 없습니다 경우 없이 언급한 제품 문제를 재현할 수 있습니다.

있지 않은 인증할 Microsoft나 타사 제품을 사용하여 SQL Server 제대로 작동하는지 확인합니다. 또한 Microsoft는 모든 보증, 보장, 또는 SQL Server에서 사용할 모든 타사 제품 적합성에 문을 제공하지 않습니다.

참조

SQL Server 성능 개선 평가하려면 다음 참조를 통해 제공되는 추가 정보를 신중하게 고려하십시오.

826433보고되지 않은 I/O 문제를 발견하고 추가된 추가 SQL Server 진단
828339823 오류 메시지 하드웨어 문제나 SQL Server 에서 시스템 문제를 나타낼 수 있습니다.
234656SQL Server 디스크 드라이브의 캐싱 사용
110352Microsoft SQL Server 성능 최적화
304261설명 네트워크 데이터베이스 파일 SQL Server에 [NULL]에 대한 지원
910716SQL Server 2000 및 2005 사용자 데이터베이스를 사용할 타사 원격 미러링 솔루션에 대한 지원
913945Microsoft는 타사 제품이 Microsoft SQL Server와 함께 작동하도록 인증할
SQL Server 시스템을 지원하기 위해 필요한 ‘ 안정적인 미디어 전달이 보장되지 ’ Microsoft SQL Server Always-On 저장소 솔루션 검토 프로그램을 아래에 설명된 대로. FoSQL Server 데이터베이스 엔진에 대한 입력 및 출력 요구 사항에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
967576Microsoft SQL Server 데이터베이스 엔진 입출력 요구 사항

속성

기술 자료: 917043 - 마지막 검토: 2007년 11월 2일 금요일 - 수정: 1.5
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Standard
키워드:?
kbmt kbexpertiseadvanced kbinfo KB917043 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com