11.5. 여러 스포츠 토토 베트맨 결합#

단일 색인 스캔은 스포츠 토토 베트맨의 열을 연산자 클래스의 연산자와 함께 사용하고와 함께 사용하는 쿼리 클로 만 사용할 수 있습니다and. 예를 들어, 스포츠 토토 베트맨가 주어지면(a, b)쿼리 조건과 같은여기서 a = 5 및 b = 6스포츠 토토 베트맨를 사용할 수 있지만 쿼리와 같은여기서 a = 5 또는 b = 6색인을 직접 사용할 수 없음.

다행스럽게도PostgreSQL단일 스포츠 토토 베트맨 스캔으로 구현할 수없는 케이스를 처리하기 위해 여러 스포츠 토토 베트맨 (동일한 스포츠 토토 베트맨의 여러 사용 포함)를 결합 할 수 있습니다. 시스템이 형성 될 수 있습니다andand또는여러 스포츠 토토 베트맨 스캔에 대한 조건. 예를 들어, 쿼리와 같은여기서 x = 42 또는 x = 47 또는 x = 53 또는 x = 99in 스포츠 토토 베트맨의 4 개의 별도 스캔으로 나눌 수 있습니다x, 각각의 쿼리 클로스를 사용한 스캔. 그런 다음이 스캔의 결과를 함께 뿌려 결과를 생성합니다. 또 다른 예는 별도의 인덱스가있는 경우입니다.xandy, 쿼리와 같은 가능한 하나의 구현여기서 x = 5 및 y = 6는 적절한 쿼리 조항과 함께 각 인덱스를 사용한 다음 인덱스 결과를 함께 사용하여 결과 행을 식별합니다.

여러 스포츠 토토 베트맨를 결합하려면 시스템이 필요한 각 스포츠 토토 베트맨를 스캔하고 a를 준비합니다.비트 맵메모리에서 인덱스 조건과 일치하는 것으로보고 된 테이블 행의 위치를 ​​제공합니다. 그런 다음 비트 맵은 쿼리에 의해 필요에 따라 anded 및 켜집니다. 마지막으로 실제 테이블 행이 방문하여 반환됩니다. 테이블 행은 물리적 순서로 방문됩니다. 비트 맵이 배치되는 방식이기 때문입니다. 즉, 원래 인덱스의 순서가 손실되므로 쿼리에이면 별도의 정렬 단계가 필요합니다.주문 by절. 이러한 이유로, 각 추가 스포츠 토토 베트맨 스캔이 추가 시간을 추가하기 때문에 플래너는 추가 스포츠 토토 베트맨를 사용할 수 있더라도 간단한 스포츠 토토 베트맨 스캔을 사용하기로 선택합니다..

가장 간단한 응용 프로그램을 제외한 모든 인덱스 조합이 유용 할 수있는 다양한 인덱스 조합이 있으며, 데이터베이스 개발자는 어떤 인덱스를 제공 해야하는지 결정해야합니다. 때로는 여러 가지 색 인덱스가 가장 좋지만 때로는 별도의 인덱스를 생성하고 인덱스-컴포업 기능에 의존하는 것이 좋습니다. 예를 들어, 워크로드가 때때로 열만 포함되는 쿼리 혼합이 포함 된 경우x, 때로는 열y, 때로는 두 열이 있으면 두 개의 개별 색인을 만들도록 선택할 수 있습니다xandy, 스포츠 토토 베트맨 조합에 의존하여 두 열을 사용하는 쿼리를 처리합니다. 에서 멀티 컬럼 스포츠 토토 베트맨를 만들 수도 있습니다.(x, y). 이 스포츠 토토 베트맨는 일반적으로 두 열을 포함하는 쿼리에 대한 스포츠 토토 베트맨 조합보다 더 효율적이지만PostgreSQL : 문서 : 17 : 11.3. 멀티 컬럼 윈 토토, 전용 쿼리에는 거의 쓸모가 없습니다y이므로 유일한 색인이되어서는 안됩니다. 멀티 컬럼 스포츠 토토 베트맨와 별도의 색인의 조합y합리적으로 잘 봉사 할 것입니다. 전용 쿼리x, 멀티 컬럼 스포츠 토토 베트맨는 사용될 수 있지만, 색인보다 더 크고 느리게x혼자. 마지막 대안은 세 스포츠 토토 베트맨를 모두 만드는 것이지만, 테이블이 업데이트 된 것보다 훨씬 더 자주 검색되고 세 가지 유형의 쿼리가 모두 일반적인 경우에만 합리적 일 수 있습니다. 쿼리 유형 중 하나가 다른 쿼리보다 훨씬 덜 일반적이라면 아마도 공통 유형과 가장 잘 일치하는 두 스포츠 토토 베트맨 만 생성 할 것입니다.

정정 제출

문서에 맞지 않는 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면