오류(쿼리 최적화가 너무 많은 하위cube를 생성함) SSAS 다차원 인스턴스에서 MDX 쿼리가 실패함

이 문서에서는 SSAS(Analysis Services) 다차원 인스턴스에서 MDX(다차원 식) 쿼리를 실행할 때 Microsoft SQL Server 문제를 해결하는 데 도움이 됩니다.

적용된 사항은 다음에 해당합니다.   SQL Server 2012 Analysis Services, SQL Server 2014 Analysis Services, SQL Server 2016 Analysis Services, SQL Server 2017 Analysis Services Windows, SQL Server 2019 Analysis Services Windows
원래 KB 번호:   4533057

증상

SSAS(Microsoft SQL Server Analysis Services) 다차원 인스턴스에서 MDX(다차원 식) 쿼리를 실행하면 MDX 쿼리가 실패하고 다음 오류 메시지가 반환됩니다.

쿼리 최적화는 쿼리 계획에서 너무 많은 하위cube를 생성했습니다.

이 오류는 다음 조건에 해당하면 발생합니다.

  • 계산된 구성원이 너무 많을 경우 단일 계층 구조 수준 또는 특성에 정의됩니다.
  • 많은 필드 또는 특성 멤버가 각 축에 추가됩니다. 또는 많은 필드가 Microsoft Excel에서 피벗 테이블의 행이나 열에 함께 들어 있습니다.
  • 선택한 계층의 모든 구성원이 축에 포함됩니다.
  • Excel 피벗Table에서 총 합계 및 소계가 설정됩니다.

원인

SSAS FE(수식 엔진)는 SE(저장소 엔진) 쿼리 하위 저장소 또는 Sonar 하위 저장소에 대한 모든 관련 MDX 집합을 생성해야 합니다. 생성될 수 있는 쿼리당 SE 쿼리 하위cube 수에는 제한이 있습니다. 이것은 정상적인 현상입니다. 현재 쿼리 계획에서 FE가 너무 많은 쿼리 하위CUBE를 생성하면 오류가 발생합니다.

해결 방법

이 오류를 방지하기 위해 다음 모범 사례 지침을 따르세요.

  • Excel 피벗Table에서 총 합계와 소계를 모두 해제합니다.
  • Excel UI에서 피벗 테이블의 또는 열 축에서 계층 구조를 제거합니다.
  • 차원 계층 구조에 계산된 구성원 수가 너무 많지 않은 경우(예: 500개 이상) 정의하지 않습니다. 대신 차원 계층 구조에 일반 구성원이 있으며 MDX 범위 할당 식(계산된 셀)을 사용하여 계산된 구성원의 식을 대체합니다.