AD DS Physical Structure AD DS 데이터는 기본적으로 Single Database 파일에 저장됩니다. 기본적으로 각 Domain Controller는 동일한 서비스를 제공하지만, 5개의 특정 롤은 하나의 DC만이 관리할 수 있습 니다. 이러한 role을 flexible single-master operation roles 로 알려져 있습니다. 물론 그외에도 Global catalog server 및 read-only domain controller 기능 역시 활성화 할 수 있습니다. The Directory Data Store AD DS Database의 모든 데이터는 %SystemRoot%\NTDS 폴더의 Ntds.dit 와 transcation log 파일에 저장 됩니다. 이 파일에는 directory information (DC간에 공유되는) 와 Global catalog 데이터가 저장됩니다. Interface Client computer, administrators, 및 다른 DC들은 AD DS Database와 직접 통신을 할 수 없습니다. 대신에 아래와 같은 4개의 인터페이스를 제공 합니다.
Directory server Agent (DSA / Ntdsa.dll) 각 도메인 컨트롤러에서 동작하는 DSA는 데이터 저장소에 대한 접근 인터페이스를 제공합니다. 추가적으로 Directory semantics 을 강제하고, 스키마를 관리하며, 오브젝트의 아이덴티티를 guarantee 및 어트리뷰트의 데이터 타입을 강제 합니다. (DBMS로써의 기본 조건들을 강제합니다.) 클라이언트 및 다른 도메인 컨트롤러가 디렉토리 저장소에 접근이 필요할 경우 이들은 위의 4개 중 하나의 인터페이스를 이용하여 DSA에 연결 (바인드) 한 후 AD DS 오브젝트와 그 속성값에 대한 검색, 읽기, 쓰기를 합니다. Database layer Ntdsa의 모듈로써, DSA와 Directory database 간의 인터페이스를 제공합니다. DSA는 Directory Database에 직접 접근이 불가능하며, 어플리케이션은 데이터베이스 레이어를 통해서 접근이 가능합니다. 또한 데이터베이스 레이어는 디렉토리 데이터베이스에 대한 오브젝트 뷰를 제공하며, DSA가 디렉토리 데이터베이스를 Hierarchical container의 집합의 형태로 접근할 수 있도록 합니다. 데이버베이스 레이어는 각각의 레코드(Object) 및 어트리뷰트에 대한 생성, 검색 삭제를 책임집니다. ESE (Esent.dll) Extensible Storage Engine 은 다른 여타의 컴포넌트와 함께 AD DS에서 사용하는 윈도우즈의 컴포넌트로서 데이터베이스와의 인터페이스 역활을 합니다. ESE는 데이터베이스 파일내의 데이터에 대한 인덱싱과 데이터 입출력을 책임 집니다. 또한 데이터베이스의 열과 행을 관리합니다. 주 목적은 어플리케이션들이 데이터를 저장하고 검색을 가능케 하는 것입니다. 또한 트렌젝션관리를 책임 집니다. Database files 데이터 저장소를 디렉토리의 정보를 단일 데이터베이스 파일에 저장합니다. 추가적으로 데이터 저장소는 트렌젝션 로그 파일을 이용하여 데이터베이스에 대한 트렌젝션을 관리할 수 있게끔 합니다. |