이 장은 핵심 사이의 인터페이스를 정의합니다postgresql시스템 및색인 토토 결과 방법, 개인을 관리하는 인덱스 유형. 핵심 시스템은 인덱스를 넘어서는 아무것도 모릅니다 여기에 지정된 내용이므로 완전히 새로운 것을 개발할 수 있습니다. 애드온 코드를 작성하여 인덱스 유형.
모든 색인PostgreSQLare 기술적으로 알려진 것은2 차 인덱스; 즉, 인덱스는 물리적으로 분리되어 있습니다 설명하는 테이블 파일. 각 색인은 자체로 저장됩니다 물리적관계의 항목pg_class카탈로그. 그만큼 색인의 내용은 전적으로 인덱스 제어하에 있습니다. 토토 결과 방법. 실제로, 모든 인덱스 토토 결과 방법은 분열됩니다 정규를 사용할 수 있도록 표준 크기 페이지로 인덱스 스토리지 관리자 및 버퍼 관리자는 인덱스 내용에 토토 결과 할 수 있습니다. (기존의 모든 인덱스 토토 결과 방법은 또한 표준 페이지 레이아웃에 설명 된섹션 55.6, 그리고 그들은 모두 사용합니다 인덱스 튜플 헤더와 동일한 형식; 그러나 이러한 결정은 그렇지 않습니다 토토 결과 방법에 강요.)
인덱스는 효과적으로 일부 데이터 키 값에서에 대한 매핑입니다.튜플 식별자또는tids, 인덱스의 행 버전 (튜플) 부모 테이블. TID는 블록 번호와 항목 번호로 구성됩니다. 그 블록 내에서 (참조섹션 55.6). 이것은 특정 정보를 가져 오기에 충분한 정보입니다 테이블에서 행 버전. 인덱스는이를 직접 알지 못합니다 MVCC에 따라 동일한 여러 현존 버전이있을 수 있습니다. 논리적 행; 인덱스에 각 튜플은 독립적 인 물체입니다 자체 인덱스 항목이 필요합니다. 따라서 항상 행의 업데이트 키 값이더라도 행의 완전히 새로운 인덱스 항목을 만듭니다. 변하지 않았습니다. (뜨거운 튜플은이 진술의 예외입니다. 그러나 인덱스도 그와 관련이 없습니다.) 인덱스 항목 죽은 튜플은 죽은 튜플이있을 때 (진공 청소기로) 재생됩니다. 그 자체는 재생됩니다.