이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다사설 토토 PostgreSQL : 문서 : 17 : 색인 생성버전 또는 위에 나열된 다른 지원되는 버전 중 하나입니다.

색인 생성

색인 생성 - 새 인덱스 정의

시놉시스

[고유 한] 색인 생성 [동시에] [[존재하지 않으면]이름] on [Only]table_name[사용메소드]
    (column_name| (표현) [CollateCollation] [opclass] [asc | desc] [nulls 첫 번째 | 마지막  ] [, ...] )
    [ 포함하다 (column_name[, ...])]
    [ 와 함께 (Storage_Parameter[=value] [, ...])]
    [테이블 스페이스TableSpace_name]
    [ 어디술어]

설명

색인 생성지정된 관계의 지정된 열에 와이즈 토토를 구성하며, 이는 테이블 또는 구체화 된보기 일 수 있습니다. 와이즈 토토는 주로 데이터베이스 성능을 향상시키는 데 사용됩니다 (부적절한 사용은 성능이 느려질 수 있지만).

인덱스의 키 필드는 열 이름으로 지정되거나 괄호로 작성된 표현식으로 지정됩니다. 인덱스 메소드가 멀티 컬럼 인덱스를 지원하는 경우 여러 필드를 지정할 수 있습니다.

인덱스 필드는 테이블 행의 하나 이상의 열 값에서 계산 된 표현식 일 수 있습니다. 이 기능은 기본 데이터의 일부 변환에 따라 데이터에 대한 빠른 액세스를 얻는 데 사용될 수 있습니다. 예를 들어, 계산 된 색인어퍼 (col)조항을 허용합니다여기서 상단 (col) = 'Jim'색인을 사용하려면

PostgreSQL와이즈 토토 방법 B-Tree, HASH, GIST, SP-GIST, GIN 및 BRIN을 제공합니다. 사용자는 또한 자체 색인 방법을 정의 할 수 있지만 상당히 복잡합니다.

시기여기서조항이 있습니다.부분 색인생성됩니다. 부분 색인은 테이블의 일부에 대한 항목을 포함하는 색인이며, 일반적으로 나머지 테이블보다 인덱싱에 더 유용한 부분입니다. 예를 들어, 청구되지 않은 주문이 포함 된 청구되지 않은 명령과 채워지지 않은 주문이 모두 포함 된 테이블이있는 경우, 전체 테이블의 작은 부분을 차지하지만 종종 사용되는 섹션 인 경우 해당 부분에 대한 인덱스를 만들어 성능을 향상시킬 수 있습니다. 또 다른 가능한 응용 프로그램은 사용하는 것입니다여기서with고유 한테이블의 하위 집합에 대한 고유성을 시행합니다. 보다PostgreSQL : 문서 : 12 : 11.8. 스포츠 토토 사이트 색인더 많은 토론을 위해.

여기서절은 기본 테이블의 열만 참조 할 수 있지만 색인화 된 열뿐만 아니라 모든 열을 사용할 수 있습니다. 현재 하위 쿼리 및 집계 표현은 또한 금지되어 있습니다.여기서. 표현식 인 색인 필드에는 동일한 제한이 적용됩니다.

와이즈 토토 정의에 사용되는 모든 함수 및 연산자는불변성, 즉, 결과는 그들의 주장에만 의존해야하며 외부 영향 (예 : 다른 테이블의 내용 또는 현재 시간)에 의존해서는 안됩니다. 이 제한은 지수의 동작이 잘 정의되어 있는지 확인합니다. 인덱스 표현식에서 사용자 정의 함수를 사용하거나여기서조항, 만들 때 불변 할 수없는 기능을 표시하십시오.

매개 변수

고유 한

와이즈 토토가 생성 될 때 (데이터가 이미 존재하는 경우) 데이터가 추가 될 때 시스템이 테이블의 중복 값을 확인하게합니다. 중복 항목을 초래할 데이터를 삽입하거나 업데이트하려는 시도는 오류가 발생합니다.

분할 된 테이블에 고유 와이즈 토토가 적용될 때 추가 제한이 적용됩니다. 보다테이블 생성.

동시에

이 옵션을 사용하는 경우PostgreSQL테이블에서 동시 인서트, 업데이트 또는 삭제를 방지하는 잠금 장치를 사용하지 않고 와이즈 토토를 구축합니다. 표준 와이즈 토토 빌드는 끝날 때까지 테이블에 쓴 (읽지 않음)가 잠금됩니다. 이 옵션을 사용할 때 알아야 할 몇 가지 경고가 있습니다. 참조동시에 빌드 인덱스.

임시 테이블의 경우색인 생성| 다른 세션에 액세스 할 수없고, 비 일치하는 와이즈 토토 생성은 저렴합니다.

존재하지 않으면

같은 이름과의 관계가 이미 존재하는 경우 오류를 던지지 마십시오. 이 경우 통지가 발행됩니다. 기존 인덱스가 생성 된 인덱스와 비슷하다는 보장은 없습니다. 인덱스 이름이 필요합니다존재하지 않는 경우지정되어 있습니다.

포함

선택 사항포함clause index에 포함될 열 목록을 지정합니다.비 키열. 비 키 열은 인덱스 스캔 검색 자격에 사용될 수 없으며 인덱스에 의해 시행되는 독창성 또는 배제 제약 조건을 위해 무시됩니다. 그러나 인덱스 전용 스캔은 인덱스 테이블을 방문하지 않고도 비 키 열의 내용을 반환 할 수 있습니다. 인덱스 항목에서 직접 사용할 수 있기 때문입니다. 따라서 비 키 열을 추가하면 인덱스 전용 스캔이 사용될 수없는 쿼리에 사용할 수 있습니다.

비키 열을 인덱스, 특히 넓은 열에 추가하는 것이 보수적 인 것이 좋습니다. 인덱스 튜플이 인덱스 유형에 허용되는 최대 크기를 초과하면 데이터 삽입이 실패합니다. 어쨌든, 비 키 열은 인덱스 테이블에서 데이터를 복제하고 인덱스 크기를 부풀려서 검색이 느려질 수 있습니다..

열에 나열된 열포함조항은 적절한 운영자 클래스가 필요하지 않습니다. 이 조항에는 데이터 유형이 주어진 액세스 방법에 대해 정의 된 운영자 클래스가없는 열이 포함될 수 있습니다.

표현식은 인덱스 전용 스캔으로 사용할 수 없으므로 포함 된 열로 지원되지 않습니다.

현재 B- 트리 및 GIST 와이즈 토토 액세스 방법은이 기능을 지원합니다. B-Tree 및 GIST 와이즈 토토에서에 나열된 열의 값포함조항은 힙 튜플에 해당하는 잎 튜플에 포함되어 있지만 트리 탐색에 사용되는 상위 레벨 인덱스 항목에는 포함되지 않습니다.

이름

생성 될 인덱스의 이름. 여기에는 스키마 이름이 포함될 수 없습니다. 인덱스는 항상 상위 테이블과 동일한 스키마에서 생성됩니다. 이름이 생략되면PostgreSQL상위 테이블의 이름과 색인 된 열 이름을 기준으로 적합한 이름을 선택합니다.

전용

테이블이 분할 된 경우 파티션에서 와이즈 토토 생성을 다시 말하지 않음을 나타냅니다. 기본값은 재발하는 것입니다.

table_name

색인화 할 테이블의 이름 (schema-qualified).

메소드

사용할 인덱스 메소드의 이름. 선택은btree, Hash, gist, Spgist, , 브린또는 사용자가 설치 한 액세스 방법과 같은젠 토토 PostgreSQL : 문서 : 12 : F.5. 꽃. 기본 메소드는입니다.btree.

column_name

테이블 열의 이름.

표현

테이블의 하나 이상의 열을 기반으로 한 표현. 표현식은 일반적으로 구문에 표시된 것처럼 주변 괄호로 작성되어야합니다. 그러나 표현식에 함수 호출 형태가 있으면 괄호를 생략 할 수 있습니다.

Collation

인덱스에 사용할 수있는 콜레이션 이름. 기본적으로 인덱스는 열이 색인화 될 수 있도록 선언 된 Collation을 사용하거나 표현식의 결과가 인덱싱 될 수 있습니다. 비 디폴트 콜라주가있는 인덱스는 비 디폴트 콜라주를 사용하는 표현식이 포함 된 쿼리에 유용 할 수 있습니다.

opclass

운영자 클래스의 이름. 자세한 내용은 아래를 참조하십시오.

ASC

오름차순 정렬 순서 (기본값)를 지정합니다.

desc

내림차순 정렬 순서를 지정합니다.

Nulls First

nulls 전에 널 정렬을 지정합니다. 이것은 기본값입니다desc지정되어 있습니다.

널 마지막

널이 아닌 후에 널이 정렬되도록 지정합니다. 이것은 기본값입니다desc지정되지 않았습니다.

Storage_Parameter

인덱스 메드-특정 스토리지 매개 변수의 이름. 보다인덱스 스토리지 매개 변수자세한 내용.

TableSpace_name

와이즈 토토를 생성하는 테이블 스페이스. 지정되지 않은 경우default_tablespace상담 또는temp_tablespaces임시 테이블의 와이즈 토토 용

술어

부분 색인에 대한 제약 조건 표현.

인덱스 스토리지 매개 변수

선택 사항with조항을 지정합니다스토리지 매개 변수인덱스. 각 인덱스 방법에는 자체 허용 스토리지 매개 변수 세트가 있습니다. B-Tree, Hash, Gist 및 SP-Gist Index 메소드는 모두이 매개 변수를 받아들입니다.

FillFactor

인덱스의 필수는 인덱스 메소드가 색인 페이지를 포장하려고하는 방법을 결정하는 백분율입니다. B- 트리의 경우 초기 인덱스 빌드 중에 잎 페이지 가이 비율로 채워지고 오른쪽에서 인덱스를 확장 할 때 (새로운 가장 큰 핵심 값 추가). 그 후 페이지가 완전히 가득 차면 분리되어 인덱스의 효율성이 점진적으로 저하됩니다. B- 트리는 90의 기본 FillFactor를 사용하지만 10에서 100까지의 정수 값을 선택할 수 있습니다. 테이블이 정적 인 경우 FillFactor 100은 인덱스의 물리적 크기를 최소화하는 데 가장 적합하지만 심하게 업데이트 된 테이블의 경우 더 작은 FillFactor가 페이지 분할 필요성을 최소화하는 것이 좋습니다. 다른 인덱스 방법은 채우기를 다르지만 대략적으로 유사한 방식으로 사용합니다. 기본 FillFactor는 메소드마다 다릅니다.

B- 트리 색인이 추가 로이 매개 변수를 수락합니다.

VACUUM_CLEANUP_INDEX_SCALE_FACTOR

안개당 값VACUUM_CLEANUP_INDEX_SCALE_FACTOR.

GIST 인덱스 추가 로이 매개 변수를 추가로 받아들입니다.

버퍼링

에 설명 된 버퍼링 빌드 기술이섹션 64.4.1지수를 구축하는 데 사용됩니다. 와 함께off|on활성화되어 있고auto처음에는 비활성화되었지만 와이즈 토토 크기에 도달하면 날개를 켜십시오explud_cache_size. 기본값은auto.

진 인덱스는 다른 매개 변수를 허용합니다 :

Fastupdate

이 설정은에 설명 된 빠른 업데이트 기술의 사용법을 제어합니다섹션 66.4.1. 부울 매개 변수입니다 :on빠른 업데이트 활성화,OFF비활성화합니다. (대체 철자onandoff설명대로 허용PostgreSQL : 문서 : 12 : 19.1. 매개 범퍼카 토토 설정.) 기본값은입니다.on.

Note

회전FastupdateviaAlter Index향후 삽입이 보류중인 와이즈 토토 항목 목록으로 들어가는 것을 방지하지만 그 자체로는 이전 항목을 플러시하지 않습니다. 당신은 원할 수도 있습니다진공테이블 또는 전화gin_clean_pending_list나중에 보류중인 목록이 비워 지도록 기능합니다.

gin_pending_list_limit

Customgin_pending_list_limit매개 변수. 이 값은 킬로 바이트로 지정되어 있습니다.

브린인덱스는 다른 매개 변수를 허용합니다 :

pages_per_range

a 각 항목에 대해 하나의 블록 범위를 구성하는 테이블 블록의 수를 정의합니다브린색인 (참조섹션 67.1자세한 내용은). 기본값은128.

AutosumMarize

다음 페이지에서 삽입이 감지 될 때마다 요약 실행이 이전 페이지 범위에 대해 대기되는지 여부를 정의합니다. 보다섹션 67.1.1자세한 내용은. 기본값은OFF.

동시에 빌드 인덱스

와이즈 토토 생성은 데이터베이스의 정기적 인 작동을 방해 할 수 있습니다. 보통PostgreSQL쓰기에 대해 색인화 할 테이블을 잠그고 테이블의 단일 스캔으로 전체 와이즈 토토 빌드를 수행합니다. 다른 트랜잭션은 여전히 ​​테이블을 읽을 수 있지만 테이블에 행을 삽입, 업데이트 또는 삭제하려고하면 와이즈 토토 빌드가 완료 될 때까지 차단됩니다. 시스템이 라이브 프로덕션 데이터베이스 인 경우 심각한 영향을 줄 수 있습니다. 매우 큰 테이블을 색인화하는 데 많은 시간이 걸릴 수 있으며, 작은 테이블의 경우, 와이즈 토토 빌드는 제작 시스템에 대해 용납 할 수없는 기간 동안 작가를 잠글 수 있습니다..

postgresql쓰기를 잠그지 않고 빌드 와이즈 토토를 지원합니다. 이 방법은를 지정하여 호출됩니다.동시에옵션색인 생성30378_30408PostgreSQL테이블의 두 가지 스캔을 수행해야하며, 또한 와이즈 토토를 수정하거나 종료 할 수있는 모든 기존 트랜잭션을 기다려야합니다. 따라서이 방법은 표준 색인 빌드보다 더 많은 총 작업이 필요하며 완료하는 데 훨씬 더 오래 걸립니다. 그러나 와이즈 토토가 구축되는 동안 일반 작업이 계속 될 수 있으므로이 방법은 생산 환경에서 새로운 와이즈 토토를 추가하는 데 유용합니다. 물론 와이즈 토토 생성에 의해 부과 된 추가 CPU 및 I/O 부하는 다른 작업 속도를 늦출 수 있습니다.

동시 와이즈 토토 빌드에서 와이즈 토토는 실제로 한 번의 트랜잭션에서 시스템 카탈로그에 입력 한 다음 두 개의 트랜잭션에서 두 개의 테이블 스캔이 발생합니다. 각 테이블 스캔 전에 와이즈 토토 빌드는 테이블이 종료 될 기존 트랜잭션을 기다려야합니다. 두 번째 스캔 후 와이즈 토토 빌드는 스냅 샷이있는 트랜잭션을 기다려야합니다 (참조사설 토토 : 문서 : 12 : 13 장. 동시성 제어) 다른 테이블에 동시 인덱스를 구축하는 모든 단계에서 사용되는 트랜잭션을 포함하여 두 번째 스캔을 종료 할 때. 마지막으로 인덱스를 사용할 준비가 될 수 있으며색인 생성명령이 종료됩니다. 그러나 그럼에도 불구하고 와이즈 토토는 쿼리에 대해 즉시 사용할 수 없을 수 있습니다. 최악의 경우 와이즈 토토 빌드의 시작을 미리 발행하는 트랜잭션이 존재하는 한 사용할 수 없습니다..

고유 한 지수의 교착 상태 또는 고유성 위반과 같은 테이블을 스캔하는 동안 문제가 발생하면색인 생성명령은 실패하지만 뒤에 남겨 둡니다.Invalid색인. 이 색인은 불완전 할 수 있으므로 쿼리 목적으로 무시됩니다. 그러나 여전히 업데이트 오버 헤드를 소비합니다. 그만큼PSQL \ d명령은 그러한 색인을로보고합니다.Invalid:

postgres =# \ d 탭
       "public.tab"테이블
 열 |  유형 | Collation | 무효 | 기본 
--------+--------+-------------------------------
 col | 정수 |           |          | 
인덱스 :
    "idx"btree (col) 잘못된

그러한 경우 권장되는 복구 방법은 와이즈 토토를 삭제하고 다시 수행하는 것입니다동시에 색인 생성. (또 다른 가능성은로 색인을 재건하는 것입니다.Reindex index 동시에).

고유 한 색인을 동시에 구축 할 때의 또 다른 경고는 두 번째 테이블 스캔이 시작될 때 독창성 제약이 이미 다른 트랜잭션에 대해 시행되고 있다는 것입니다. 이는 인덱스를 사용할 수있게되기 전에 또는 인덱스 빌드가 결국 실패한 경우 조건 위반이 다른 쿼리에서보고 될 수 있음을 의미합니다. 또한 두 번째 스캔에서 실패가 발생하면Invalid와이즈 토토는 계속해서 고유성 제약을 시행하고 있습니다.

동시 표현식 인덱스 및 부분 인덱스의 동시 빌드가 지원됩니다. 이러한 표현식의 평가에서 발생하는 오류는 고유 한 제약 위반에 대해 위에서 설명한 것과 유사한 행동을 유발할 수 있습니다.

일반 색인 빌드는 동일한 테이블의 다른 일반 색인 빌드가 동시에 발생할 수 있지만 한 번에 테이블에서 하나의 동시 인덱스 빌드 만 발생할 수 있습니다. 두 경우 모두 인덱스가 구축되는 동안 테이블의 스키마 수정이 허용되지 않습니다. 또 다른 차이점은 정기적 인 것입니다색인 생성명령은 트랜잭션 블록 내에서 수행 할 수 있지만동시에 색인 생성할 수 없습니다.

분할 된 테이블의 인덱스에 대한 동시 빌드는 현재 지원되지 않습니다. 그러나 각 파티션에서 개별적으로 인덱스를 동시에 빌드 한 다음 파티가 된 테이블에 쓰기가 잠겨있는 시간을 줄이기 위해 파티션 된 인덱스를 비공식적으로 만들 수 있습니다. 이 경우, 분할 된 인덱스를 구축하는 것은 메타 데이터 전용 작업입니다.

노트

참조스포츠 토토 결과 : 문서 : 12 : 11 장 색인인덱스를 사용할 수있는시기, 사용하지 않을 때, 어떤 특정 상황에서 유용 할 수 있는지에 대한 정보는

현재 B-Tree, Gist, Gin 및 Brin Index 메서드만이 다중 색 와이즈 토토를 지원합니다. 기본적으로 최대 32 개의 필드를 지정할 수 있습니다. (이 한도는 빌드시 변경 될 수 있습니다PostgreSQL.) B-Tree 만 현재 고유 와이즈 토토를 지원합니다.

an운영자 클래스와이즈 토토의 각 열에 대해 지정할 수 있습니다. 연산자 클래스는 해당 열의 와이즈 토토에서 사용하도록 연산자를 식별합니다. 예를 들어, 4 바이트 정수의 B-Tree 지수는를 사용합니다.int4_ops클래스; 이 연산자 클래스에는 4 바이트 정수에 대한 비교 기능이 포함되어 있습니다. 실제로 열 데이터 유형의 기본 연산자 클래스로는 일반적으로 충분합니다. 운영자 클래스를 갖는 주요 요점은 일부 데이터 유형의 경우 둘 이상의 의미있는 순서가있을 수 있다는 것입니다. 예를 들어, 복잡한 수 데이터 유형을 절대 값 또는 실제 부분별로 정렬 할 수 있습니다. 데이터 유형에 대한 두 개의 운영자 클래스를 정의한 다음 인덱스를 만들 때 적절한 클래스를 선택하여이를 수행 할 수 있습니다. 운영자 클래스에 대한 자세한 정보는입니다.PostgreSQL : 문서 : 12 : 11.10. 토토 꽁 머니 수업 및 토토 꽁 머니 가족and inPostgreSQL : 문서 : 12 : 37.16. 토토 커뮤니티에 대한 확장.

언제색인 생성파티션 된 테이블에서 호출되며, 기본 동작은 모든 파티션으로 재구성하여 모두 일치하는 인덱스를 갖도록하는 것입니다. 각 파티션은 먼저 동등한 인덱스가 이미 존재하는지 여부를 결정하기 위해 먼저 확인되며, 그렇다면 해당 인덱스가 생성되는 인덱스에 대한 파티션 인덱스로 첨부되어 부모 색인이됩니다. 일치하는 인덱스가 없으면 새 인덱스가 생성되어 자동으로 첨부됩니다. 각 파티션에서 새 인덱스의 이름은 명령에 인덱스 이름이 지정되지 않은 것처럼 결정됩니다. 인 경우전용옵션이 지정되고 재귀가 수행되지 않으며 인덱스가 유효하지 않습니다. (ALTER INDEX ... 파티션 첨부모든 파티션이 일치하는 와이즈 토토를 획득하면 와이즈 토토를 유효하게 표시합니다.) 그러나 미래에 생성되는 모든 파티션은테이블 생성 ... 파티션|전용지정되어 있습니다.

순서 스캔을 지원하는 색인 ​​메소드 (현재 B- 트리 만), 옵션 조항ASC, desc, Nulls First및/또는널 마지막지정하여 와이즈 토토의 정렬 순서를 수정할 수 있습니다. 정렬 된 와이즈 토토를 앞뒤로 스캔 할 수 있으므로 일반적으로 단일 열을 만드는 것은 유용하지 않습니다.descindex - 정렬 주문은 이미 일반 색인으로 사용할 수 있습니다. 이러한 옵션의 값은 혼합 주문 쿼리에서 요청한 정렬 순서와 일치하는 멀티 컬럼 인덱스가 생성 될 수 있다는 것입니다.선택 ... X ASC, y desc 주문. 그만큼NULLS지원 해야하는 경우 옵션이 유용합니다Nulls Sort Low기본값이 아닌 동작Nulls Sort High, 정렬 단계를 피하기 위해 와이즈 토토에 의존하는 쿼리로

시스템은 정기적으로 테이블의 모든 열에 통계를 수집합니다. 새로 만들어진 비 표현 지수는 이러한 통계를 즉시 사용하여 인덱스의 유용성을 결정할 수 있습니다. 새로운 표현 인덱스의 경우 실행이 필요합니다분석또는 대기autovacuum daemon이 인덱스에 대한 통계를 생성하기 위해 테이블을 분석하려면

대부분의 와이즈 토토 방법의 경우 와이즈 토토 생성 속도는의 설정에 따라 다릅니다.maintenance_work_mem. 더 큰 값은 실제로 사용 가능한 메모리의 양보다 크게 만들지 않는 한 와이즈 토토 생성에 필요한 시간을 줄일 수 있습니다.

PostgreSQL테이블 행을 더 빨리 처리하기 위해 여러 CPU를 활용하면서 와이즈 토토를 구축 할 수 있습니다. 이 기능은로 알려져 있습니다.병렬 와이즈 토토 빌드. 구축 와이즈 토토를 병렬로 지원하는 와이즈 토토 방법 (현재 B- 트리 만),maintenance_work_mem시작한 작업자 프로세스 수에 관계없이 각 와이즈 토토 빌드 작업에서 전체적으로 사용할 수있는 최대 메모리 양을 지정합니다. 일반적으로 비용 모델은 요청해야 할 작업자 프로세스 수를 자동으로 결정합니다.

병렬 와이즈 토토 빌드는 증가함으로써 혜택을 누릴 수 있습니다maintenance_work_mem동등한 직렬 와이즈 토토 빌드가 이점이 거의 없거나 전혀없는 경우. 참고Maintenance_Work_mem병렬 작업자가 적어도 a를 가져야하므로 요청 된 근로자 프로세스 수에 영향을 줄 수 있습니다.32MB총계maintenance_work_mem예산. 나머지가 있어야합니다32MB리더 프로세스를 공유하십시오. 증가max_parallel_mainencement_workers더 많은 근로자가 사용될 수 있으므로 와이즈 토토 빌드가 아직 I/O 바운드가 아닌 한 와이즈 토토 생성에 필요한 시간이 줄어 듭니다. 물론, 그렇지 않으면 유휴 상태가 될만한 충분한 CPU 용량이 있어야합니다.

값 설정Parallel_Workersvia토토 꽁 머니 PostgreSQLA에 의해 얼마나 많은 병렬 작업자 프로세스를 요청할 것인지 직접 제어합니다.색인 생성테이블에 대한. 이것은 비용 모델을 완전히 우회하고를 방지합니다.maintenance_work_mem몇 명의 병렬 근로자가 요청 된 수의 영향을받지 않습니다. 환경Parallel_WorkersAlter Table모든 경우 테이블에서 병렬 와이즈 토토 빌드를 비활성화합니다.

재설정하고 싶을 수도 있습니다Parallel_Workers와이즈 토토 빌드 조정의 일부로 설정 한 후. 이것은 쿼리 계획에 대한 부주의 한 변경을 피합니다.Parallel_Workers영향all병렬 테이블 스캔.

while색인 생성with동시에옵션은 특별한 제한없이 병렬 빌드를 지원합니다. 첫 번째 테이블 스캔 만 실제로 병렬로 수행됩니다.

use토토 사이트 순위 PostgreSQL와이즈 토토를 제거하려면

장기 거래와 마찬가지로색인 생성테이블에서 동시에 제거 할 수있는 튜플에 영향을 줄 수 있습니다진공다른 테이블에서.

사전 릴리스PostgreSQLr-tree index 방법이있었습니다. 이 방법은 GIST 방법에 비해 큰 장점이 없기 때문에 제거되었습니다. 만약에RTREE 사용지정되어 있습니다.색인 생성그것을로 해석 할 것입니다.GIST 사용, 오래된 데이터베이스를 GIST로 전환하기 위해.

예제

열에서 고유 한 b- 트리 색인을 생성하려면제목표에서영화:

필름에 고유 한 색인 제목 _idx 만들기 (제목);

열에서 고유 한 b- 트리 색인을 생성하려면제목포함 된 열감독and등급표에서영화:

필름에 고유 한 색인 제목 _idx 만들기 (제목) 포함 (감독, 등급);

표현식에 대한 색인을 만들려면하단 (제목), 효율적인 사례 감수성 검색 허용 :

필름에서 색인 생성 ((lower (title));

(이 예에서는 인덱스 이름을 생략하기로 선택한이 예에서는 시스템이 이름, 일반적으로 선택합니다films_lower_idx.)

비 디폴트 콜레이션으로 와이즈 토토 생성 :

영화에서 인덱스 제작 _idx_german 만들기 (Title Collate "de_de");

널의 비 디폴리 정렬 순서로 색인을 생성하려면 :

색인 생성 Title_IDX_NULLS_LOW (TITLE NULLS FIRST);

비 분리 채우기 요소로 와이즈 토토를 생성하려면 :

(filmfactor = 70);

agin빠른 업데이트가있는 색인 :

with (fastupdate = off);를 사용하여 문서 _table에서 index gin_idx를 만듭니다.

열에서 색인을 생성하려면코드표에서영화그리고 와이즈 토토가 테이블 스페이스에 존재하게indexspace:

필름에서 인덱스 Code_Idx 만들기 (코드) TableSpace indexspace;

전환 기능의 결과에 대해 박스 연산자를 효율적으로 사용할 수 있도록 점 속성에 GIST 와이즈 토토를 작성하려면

와이즈 토토 포인트를 작성합니다
    GIST를 사용하는 지점 (상자 (위치, 위치));
* From Points를 선택하십시오
    Where Box (위치, 위치) && '(0,0), (1,1)':: Box;

잠금하지 않고 와이즈 토토를 작성하려면 테이블에 쓴다 :

sales_table (수량)에서 동시에 sales_quantity_index 생성 동시에 sales_quantity_index 생성;

호환성

색인 생성isPostgreSQL언어 확장. SQL 표준에는 와이즈 토토에 대한 조항이 없습니다.