쓰기 캐시를 사용 하는 경우 느린 디스크 성능

증상

작업 보다 느릴 수 있습니다 특정 하드 디스크 쓰기 작업의 성능이 하드 디스크가 쓰기 캐싱을 구현 하 고 컴퓨터가 다음 운영 체제 중 하나를 사용 하 여 예상:
  • Windows 2000 서비스 팩 3 (SP3)
  • Windows 2000 서비스 팩 2 (SP2)를 설치한 설명 되어 있는 핫픽스는 다음 Microsoft 기술 자료 문서에서.
    "쓰기 캐시 사용" 기능을 사용 하면 281672 가능한 데이터 손실
  • Windows XP
특히, 하드 디스크 쓰기 성능이 보다 이전 버전의 Windows 2000 s p 3 보다 느려질 수 있습니다. 또한 클러스터 컴퓨터에서 공유 디스크에 하드 디스크 쓰기 작업에는 각 노드 간의 쓰기 성능의 차이가 크게 발생할 수 있습니다.

원인

SP3 이전의 Windows 2000 버전에는 특정 디스크 명령을 실행 하지 못하게 하는 버그가 포함 되어 있습니다. 이들이 명령은 쓰기 캐싱을 사용할 수 있는 디스크에만 실행 됩니다. 이러한 명령은 중요 한 데이터를 디스크의 write-behind 캐시에 임시로 보관 하는 대신 즉시 디스크 장치에 기록 하도록.

이 버그에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
"쓰기 캐시 사용" 기능을 사용 하면 281672 가능한 데이터 손실

기술 자료 문서 281672에에서 설명 되어 있는 핫픽스가이 버그를 수정 하면 이들이 명령이 디스크에 쓰기 캐시를 사용 하는 경우 예상 대로 발생. 이 수정 프로그램은 Windows 2000 s p 3에 포함 됩니다. 비슷한 수정 프로그램을 Windows XP에도 포함 됩니다.

기본적으로이 명령은 중요 한 데이터의 안전을 위해 일부 성능은 저하 되도록 합니다. 이러한 중요 한 데이터가 즉시 디스크에 기록 되어 있는지 확인 하십시오. 이들이 명령은 특정 디스크 장치의 쓰기 캐싱을 사용할 수 있고 표준 메커니즘을 사용 하 여 검색할 수 있는 경우에 실행 됩니다. 디스크 쓰기 캐싱을 구현 하는 이러한 안전 동작을 적용 하면 특정 디스크 작업 동안 성능이 저하를 발생 합니다. 자세한 내용은이 문서의 "추가 정보" 절을 참조 하십시오. 또한 클러스터 컴퓨터에서 리소스가 장애 조치 되는 클러스터 리소스를 받는 노드로 하드 디스크 정보를 배달할 수 있습니다. 따라서 각 노드 간에 하드 디스크 쓰기 작업이 성능에 차이가 발생 합니다.

해결 방법

Windows 2000을 실행 하는 컴퓨터에 대 한

경고: (업데이트 드라이버를 설치 하 고 Power Protected 쓰기 캐시 옵션을 설정)으로이 수정 프로그램을 구현 하는 경우 중요 한 데이터가 디스크의 기본 제공 캐시에서 나중에 디스크에 기록 되는 대신 즉시 디스크로 기록 되 있는지 확인 하는 Windows 2000 디스크 드라이버 기본 제공 되는 보호 기능이 제거 됩니다. 컴퓨터와 연결 된 모든 하드 디스크가 여분 배터리 지원 전원 공급 장치 등을 포함할 수 있는 하드웨어 설계를 통해 실수로 인 한 전원 손실 로부터 보호 되는 경우이 수정 프로그램을 구현 하지 마십시오. 하드웨어에서 제공 되는 보호 정도를 확인 하면 컴퓨터와 저장 장치의 공급 업체를 문의 하십시오. 이해 하 고 관련 될 수 있으며 이러한 위험이 적절 한 하드웨어 전원 보호 기능을 통해 완화 되었습니다 있음을 확신 하는 위험의 정도 동의 하지 않으면이 수정 프로그램을 구현 하지 마십시오. 또한 클러스터 컴퓨터에서 전원 보호 를 설정 하 여 노드 간에 공유 디스크에 대 한 작업을 해결할 수 있습니다 하드 디스크 쓰기 작업의 성능 차이도 각 노드에서 캐시 옵션을 작성 합니다.

자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료에서 해당 문서를 확인하십시오.
"쓰기 캐시 사용" 기능을 사용 하면 281672 가능한 데이터 손실

1 단계: 설치 Windows 2000 업데이트

제품의 기본 동작을 수정 하는 기능을 Microsoft에서 구할 수입니다. 그러나이 기능은이 문서에서 설명 하는 동작만 수정 하 것입니다. 이 기능이 특별히 필요한 시스템에만 적용 됩니다.

기능이 다운로드에 사용할 수 있는 경우에이 기술 자료 문서의 맨 "핫픽스 다운로드 가능" 섹션. 이 섹션이 표시 되지 않으면 Microsoft 고객 서비스 및 지원 기능을 얻으려면 문의 하십시오.

참고: 추가 문제가 발생하거나 문제 해결이 필요한 경우, 별도로 서비스를 요청해야 할 수도 있습니다. 추가 지원 질문과이 특정 기능이 필요 하지 않은 문제에는 일반 지원 비용이 적용 됩니다. 전체 목록은 Microsoft 고객 서비스 및 지원 전화 번호 또는 별도 서비스 요청을 만들려면, 다음 Microsoft 웹 사이트를 방문 하십시오.참고: "핫픽스 다운로드 가능" 양식 기능을 사용할 수 있는 언어를 표시 합니다. 사용자 언어가 표시 되지 않으면 기능은 해당 언어에 사용할 수 없습니다 때문입니다. 이 수정 프로그램의 영어 버전은 파일 특성을 가집니다 (이상)은 아래와 같거나 그. 이러한 파일의 시간과 날짜는 협정 세계시 (UTC)에 나열 됩니다. 파일 정보를 볼 때는 로컬 시간으로 변환됩니다. UTC와 로컬 시간의 차이 찾으려면 제어판의 날짜 및 시간 도구에서 표준 시간대 탭을 사용 합니다.
   Date         Time   Version        Size    File name
-------------------------------------------------------
15-Jan-2003 19:42 5.0.2195.6655 34,832 Classpnp.sys
15-Jan-2003 19:43 5.0.2195.6655 30,768 Disk.sys

참고: 이 핫픽스에 포함 된 파일을 SP3 버전 번호 있지만 Windows 2000 SP2 기반 컴퓨터와 Windows SP3 기반 컴퓨터 모두에서 사용할 수 있습니다. 핫픽스 패키지는 Windows 2000 SP2 기반 컴퓨터와 Windows 2000 SP3 기반 컴퓨터 모두에 설치 합니다.

2 부: "Power Protected" 쓰기 캐시 옵션을 구성 합니다.

Windows 2000 업데이트를 설치 하 고 컴퓨터를 다시 시작 하는 업데이트 된 드라이버 로드 또한 쓰기에 있는 각 디스크에 대해 Power Protected 쓰기 캐시 옵션을 설정 해야 캐싱을 사용 하 고 실수로 인 한 전원 손실 로부터 해당 쓰기 캐시를 보호 합니다. Power Protected 쓰기 캐시 옵션이 켜져 있지 않습니다 경우이 업데이트는 디스크 동작이 나 성능에 대 한 변경 내용이 구현 하지 않습니다.

구성 하는
Dskcache.exe 도구를 사용 하는 power Protected 쓰기 캐시 옵션은 선택 된 디스크에. Dskcache.exe는 별도로 제공 됩니다. Dskcache.exe 도구 "전원 보호"를 활성화 하는 방법에 대 한 자세한 내용은 쓰기 캐시 옵션을 Microsoft 기술 자료의 다음 문서 번호:
811392 "Power Protected" 쓰기 캐시 옵션을 구성 하려면 Dskcache.exe 도구를 다운로드 합니다.
참고: 만 현재 있는 디스크에 대해 Power Protected 쓰기 캐시 옵션을 사용할 수 있습니다. 기본적으로 Power Protected 쓰기 캐시 옵션은 사용할 수 없습니다. 따라서이 설정을 적용 한 후 추가할 수 있는 모든 디스크에 대해이 옵션이 비활성화 됩니다. 추가 디스크를 추가 하는 경우 Power Protected 쓰기 캐시 옵션 추가한 디스크에 대해 설정을 적용 하려면 사용 합니다.

Windows XP를 실행 하는 컴퓨터에 대 한

Windows 2000 및 Windows XP에서는 디자인 차이 때문에 현재이 문제에 대 한 지원 되는 업데이트를 Windows XP 용 릴리스 계획이 없습니다.

상태

이 동작은 의도된 것입니다.

자세한 내용

많은 디스크 장치가 디스크에는 디스크 및 write-behind 캐싱 (또는 지연 된 쓰기 또는 "지연식" 쓰기) 쓰고 있는 데이터를 읽고 있는 데이터에 대 한 미리 읽기 캐싱을 제공 하는 온보드 캐시를 사용 하 여 향상 된 성능을 제공 합니다. 이 경우에 따라 데이터를 실제 디스크에 즉시 기록 하 고 나중에 유휴 순간 동안 쓸 디스크의 온보드 쓰기 캐시에서 유지 되지 중요 합니다. 손실 또는 데이터 손상이 경우이 방지 하려면 디스크 또는 컨트롤러 (쓰기 캐시가 구현 되는 모든) 갑자기 전원이 예.

캐시 된 데이터를 실제 디스크에 즉시 쓸 것인지를 일반적으로 사용 되는 명령은 다음 두 가지가 있습니다.
  • SCSI 및 IDE/ATAPI 디스크 장치에 사용할 수 있는 버퍼를 flush 명령을 즉시 디스크에 캐시 된 모든 데이터를 쓸 수 디스크에 지시 합니다. SCSI 디스크는 디스크에 캐시 동기화 명령을 실행 하 여 구현 됩니다. IDE/ATAPI 디스크 디스크에 캐시 플러시 명령을 전송 됩니다. 일반적으로이 명령은 FlushFileBuffers API 호출 하는 Windows 프로그램으로 인해 발생. 레지스트리에 쓰기 디스크 FlushFileBuffers API 호출 되 고 캐시 동기화 명령을 보내는 작업의 예입니다.
  • 에서만 사용할 수 있는 SCSI 디스크 장치를 통해 쓰기 명령은 ForceUnitAccess (FUA) 비트가 설정 된 디스크에 쓰기 명령을 실행 하 여 구현 됩니다. 이러한 종류의 명령은 온보드 쓰기 캐시를 사용 하지 않고 현재 데이터 패킷을 디스크에 즉시 쓰기 위해 디스크에 지시 합니다. 일반적으로는 CreateFile API FILE_FLAG_WRITE_THROUGH 플래그 집합을 호출 하 여 열려 있는 파일에 쓸 수 WriteFile API 호출 하는 Windows 프로그램으로 인해 발생 합니다. 바이러스 검색 소프트웨어 일반적으로 FILE_FLAG_WRITE_THROUGH 플래그 집합을 사용 하 여 파일을 엽니다. FUA 비트는 선택 사항에 대해이 기능을 구현 하는 몇 가지 SCSI 및 파이버 채널 (FC) 장치, 일반적으로 개별 드라이브 (푸시하 RAID 배열)에 지원 합니다.
기본적으로이 명령은 저하 시킵니다 성능 (디스크의 온보드 쓰기 캐시에 의해 일반적으로 제공 되는) 디스크에 쓰고 있는 데이터의 안전을 유지 하기 위해. 이러한 데이터가 기록 되지 디스크에 즉시이 명령을 사용 하 여 및 디스크의 전원이 갑자기 끊긴 경우 데이터가 손실 되 고 쓰고 있는 파일이 손상 될 수 있습니다.

Windows 2000 버전에서는, SP3 이전 이러한 명령이 올바르게 실행 되지 않습니다 예상 될 때 디스크 장치에. 예를 들어, 해당 캐시 동기화 명령이 실행 되지 않습니다 디스크 프로그램 호출 FlushFileBuffersFILE_FLAG_WRITE_THROUGH를 사용 하 여 파일을 열 때 쓰기 명령에 FUA 비트가 설정 되지 않았습니다 때 설정 합니다. 이러한 명령은 정상적으로 발급 되 고, 결과적으로, 이러한 중요 한 데이터의 손실 방지 예상된 제공이 문제를 해결 하는 기술 자료 문서 281672에에서 설명 되어 있는 핫픽스.

Note
Microsoft SQL Server FILE_FLAG_WRITE_THROUGH 로컬 데이터베이스 데이터, 로그 파일 및 백업 파일에 광범위 하 게 사용 됩니다. 로컬 데이터베이스의 데이터에는 SCSI 드라이브 및 SAN 드라이브의 데이터가 있지만 NAS 드라이브의 데이터가 아닌 포함할 수 있습니다. 하드웨어 쓰기 캐시를 보호 하는 전원 보호 기능을 사용 하지 않으면, 큰 데이터베이스의 검사점 프로세스 동안 SQL Server 성능이 달라질 수 있습니다.

장치 관리자에서 디스크 장치에 대해 쓰기 캐시 사용 옵션 구성 되 면 두 가지 동작이 수행 됩니다.
  • 명령 또는 쓰기 캐싱 기능을 해제 하려면 디스크 장치에 전송 됩니다.
  • 디스크 드라이버가 디스크에 쓰기 캐시 관리 명령 (Flush, Write-through)을 실행할 것인지 여부를 결정 하는 사용 레지스트리 값이 저장 됩니다.
이 문서에 설명 되어 있는 핫픽스 Power Protected 쓰기 캐시 옵션 추가 구성 옵션을 제공 합니다. 둘 다 쓰기 캐싱전원 보호 옵션을 설정 하는 때, 디스크의 쓰기 캐시를 사용 하거나 디스크 드라이버에 의해 같은 방법으로 인식 되지만 디스크 드라이버가 디스크에 쓰기 캐시 관리 명령 (Flush, Write-through)을 발급 하지 않습니다. 그렇지 않으면 디스크 미디어에 쓰기 캐시에서 데이터를 플러시할 때 발생 되는 성능 손실을 피할 수 있지만 노출 정도의 손실이 나 손상이 있을 때 정전 된 디스크 데이터는 아직 기록 되지 않은 디스크의 쓰기 캐시의 데이터를 디스크에.

다음 표에서 쓰기 캐싱Power Protected 옵션의 효과 요약:
쓰기 캐싱전원 보호
효과
사용 안 함N/A디스크 쓰기를 캐시 하지 않습니다.

드라이버는 Flush/Write-through 명령을 실행 하지 않습니다.
(만 수 없는 드라이브에 대 한 쓰기 캐싱 동작 하드웨어에서 사용할 수 있습니다.)
사용 가능사용 안 함디스크가 쓰기를 캐시 합니다.

드라이버가는 Flush/Write-through 명령을 발급합니다.
(기본 sp3, 이 업데이트를 적용 하는 쓰기 캐싱 사용 하드웨어 드라이브를 사용 하 여 동작 합니다.)
사용 가능사용 가능디스크가 쓰기를 캐시 합니다.

드라이버는 Flush/Write-through 명령을 실행 하지 않습니다.
(드라이브는 SP3 이전 버그로에서 나타나는 동작 쓰기 캐싱 하드웨어에서 사용할 수 있습니다.)
속성

문서 ID: 332023 - 마지막 검토: 2017. 2. 7. - 수정: 2

피드백