문제

이 유형의 부하를 최적화하는 데 몇 가지 질문이 있습니다.

하나는 파티션 된 테이블에로드 할 새 데이터 테이블을 작성한 다음이 새 테이블에 인덱스를 작성합니다.

  1. Compute Statistics 옵션으로 인덱스를 구축하거나 DBMS_STATS의 캐스케이드 옵션을 사용해야합니까?

  2. 스왑 전에 또는 스왑 후 파티션에 테이블에 통계를 수집해야합니까?

  3. 스왑 후 수행하고 매개 변수 목록에 파티션 이름을 지정하면 세분성 매개 변수가 어떤 상호 작용을합니까? 예를 들어, 파티션 이름을 지정한 다음 세분성을 '글로벌 및 파티션'으로 설정하면 전역에서 전혀 작동합니까? 그렇습니다 단지 그 하나의 파티션?

도움이 되었습니까?

해결책

Compute Statistics 옵션으로 인덱스를 구축하거나 DBMS_STATS의 캐스케이드 옵션을 사용해야합니까?

이것이 데이터웨어 하우스 인 경우 먼저 통계를 전혀 수집하지 않고 동적 샘플링을 사용하는 것을 고려하십시오. 둘째, 통계를 수집하면 항상 인덱스에 대한 계산 통계를 사용하십시오.

스왑 전에 또는 스왑 후 파티션에 테이블에 통계를 수집해야합니까?

스왑 전에 새로운 데이터 테이블에 통계를 수집하여 새 데이터에 대한 파티션 통계를 얻으십시오-나중에 파티션 된 테이블에 통계를 수집하여 테이블 통계를 수집하십시오.

스왑 후 수행하고 매개 변수 목록에 파티션 이름을 지정하면 세분성 매개 변수가 어떤 상호 작용을합니까? 예를 들어, 파티션 이름을 지정한 다음 세분성을 '글로벌 및 파티션'으로 설정하면 전역에서 전혀 작동합니까? 그 단 하나의 파티션을합니까?

위 참조.

진지하게, 통계와 동적 샘플링에 기회를주지 마십시오.

다른 팁

  1. DBMS_STATS 이 버전의 통계를 계산하는 적절한 방법으로 간주됩니다. THE로 인덱스 구축 COMPUTE STATISTICS 가능하지만 일반적으로 모든 통계를 한 번에 계산하고 스냅 샷을 가져 가려고합니다.

  2. 스왑 후 통계를 수집하고 싶습니다. 이런 식으로 Optimizer는 해당 파티션의 데이터를 사용하여 쿼리를 실행하는 데 최선의 추측을합니다.

  3. 왜 둘 다 넣을까요?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top