섀도 페이징
Shadow paging![]() |
컴퓨터 과학에서 섀도 페이징은 데이터베이스 시스템에서 원자성과 내구성(ACID 속성 중 2개)을 제공하기 위한 기술입니다.이 컨텍스트의 페이지는 물리 스토리지 유닛(아마도 하드 디스크상의)을 나타냅니다.일반적으로 1 ~64KiB입니다.
섀도 페이징은 페이지의 인플레이스 업데이트를 방지하기 위한 쓰기 복사 기술입니다.대신 페이지를 수정해야 할 경우 섀도 페이지가 할당됩니다.섀도 페이지에는 (디스크상의 다른 페이지로부터) 참조가 없기 때문에, 일관성의 제약 등에 관계없이 자유롭게 변경할 수 있습니다.페이지가 내구성이 확보되면 원래 페이지를 참조하던 모든 페이지가 새 대체 페이지를 참조하도록 업데이트됩니다.페이지는 준비되었을 때만 "활성화"되기 때문에 원자성이 됩니다.
참조 페이지도 섀도 페이징을 통해 업데이트해야 하는 경우 이 절차가 여러 번 반복되어 비용이 많이 들 수 있습니다.WAFL(Write Anywhere File Layout) 파일 시스템에 채용된 솔루션 중 하나는 페이지 내구성을 유지하는 데 시간을 낭비하는 것입니다(즉, 뒷부분 쓰기 캐싱).이것에 의해, 높은 [1]커밋 레이텐시를 희생하면서, 참조 계층(예를 들면 파일 시스템 슈퍼 블록)의 상위에 있는 핫 스팟에의 기입이 많아지지 않게 되어, 퍼포먼스가 큰폭으로 향상됩니다.
미리 쓰기 로그는 인플레이스 [citation needed]업데이트를 사용하는 더 일반적인 솔루션입니다.
섀도 페이징은 메인프레임 데이터베이스 시스템에서 사용되는 오래된 마스터-새로운 마스터 배치 처리 기술과 유사합니다.이러한 시스템에서는, 각 배치 실행의 출력(아마도 하루의 작업)이 2개의 개별 디스크 또는 다른 형태의 저장 매체에 기록되었습니다.하나는 예비용으로 보관되었고, 다른 하나는 다음날 작업의 시작점으로 사용되었습니다.
섀도 페이징은 인플레이스 업데이트를 피할 수 있다는 점에서 순수하게 기능적인 데이터 구조와 유사합니다.
레퍼런스
- ^ "File System Design for an NFS File Server Appliance" (PDF). 1994. Retrieved 1 November 2019.
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말)