KB2430162 - FIX: SSAS 2008 또는 SSAS 2008 R2에서 MDX 쿼리를 실행하려고 하면 "식에 4,294,967,296개 튜플이 넘는 집합에서 작동할 수 없는 함수가 포함되어 있습니다" 오류 메시지가 나타남

Microsoft는 Microsoft SQL Server 2008 SP1(서비스 팩 1) 또는 SQL Server 2008 R2 수정 사항을 하나의 다운로드 가능한 파일로 배포합니다. 수정 사항은 누적되므로 각 새 릴리스에는 이전 SQL Server 2008 SP1(서비스 팩 1) 또는 SQL Server 2008 R2 픽스 릴리스에 포함된 모든 핫픽스와 모든 보안 수정이 포함되어 있습니다.

증상

다음 시나리오를 고려하세요.

  • SSAS(Microsoft SQL Server 2008 Analysis Services) 2008 또는 SSAS(Microsoft SQL Server 2008 R2 Analysis Services) 2008 R2에서 다음 조건을 충족하는 MDX(다차원식) 쿼리가 있습니다.

    • 쿼리는 CROSSJOIN 함수를 사용합니다.

    • 쿼리의 식에는 동일한 차원에서 서로 다른 특성 계층 구조의 튜플로 구성된 두 개 이상의 인수 집합이 있습니다.

    • 이러한 집합은 다른 차원의 튜플로 구성된 다른 집합으로 구분됩니다.

    • CROSSJOIN 함수의 이론적 결과 집합은 일반적으로 4,294,967,296 튜플을 초과합니다.
      예를 들어 다음 항목을 포함하는 MDX 쿼리가 있습니다.

      WITH SET S AS CROSSJOIN([Product].[Large Photo].[Large Photo], [Customer].[Customer].[Customer], [Product].[Product].[Product])
      SELECT {} ON 0,
      S.ITEM(1) ON 1
      FROM [Adventureworks]
      
  • 쿼리를 실행하려고 합니다.

이 시나리오에서는 쿼리가 실행되지 않습니다. 또한 다음과 같은 오류 메시지가 나타납니다.

참고

식에는 4,294,967,296개 튜플을 초과하는 집합에서 연산할 수 없는 함수가 포함되어 있습니다.

참고 이러한 유형의 MDX 쿼리는 Excel 피벗 테이블에 의해 자동으로 생성될 수 있습니다.

해결 방법

누적 업데이트 정보

SQL Server 2008 SP1

이 문제에 대한 수정은 누적 업데이트 11에서 처음 릴리스되었습니다. 이 SQL Server 2008 SP1(서비스 팩 1)용 누적 업데이트 패키지를 구하는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.

2413738 SQL Server 2008 서비스 팩 1용 누적 업데이트 패키지 11 참고 빌드가 누적되므로 각 새 픽스 릴리스에는 이전 SQL Server 2008 SP1(서비스 팩 1) 픽스 릴리스에 포함된 모든 핫픽스와 모든 보안 픽스가 포함되어 있습니다. 이 핫픽스가 포함된 최신 픽스 릴리스를 적용하는 것이 좋습니다. 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하세요.

970365 SQL Server 2008 서비스 팩 1이 출시된 후 출시된 2008 SQL Server 빌드

SQL Server 2008 R2

이 문제에 대한 수정은 누적 업데이트 5에서 처음 릴리스되었습니다. 이 SQL Server 2008 R2용 누적 업데이트 패키지를 구하는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하세요.

2438347 SQL Server 2008 R2용 누적 업데이트 패키지 5 참고 빌드는 누적되므로 각 새 픽스 릴리스에는 이전 SQL Server 2008 R2 픽스 릴리스에 포함된 모든 핫픽스와 모든 보안 픽스가 포함되어 있습니다. 이 핫픽스가 포함된 최신 픽스 릴리스를 적용하는 것이 좋습니다. 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하세요.

981356 SQL Server 2008 R2 배포 후 배포된 SQL Server 2008 R2 빌드

SQL Server 2008 서비스 팩 2

이 문제에 대한 픽스는 SQL Server 2008 서비스 팩 2의 누적 업데이트 2에서 처음 릴리스되었습니다. 이 누적 업데이트 패키지에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하세요.

2467239 SQL Server 2008 서비스 팩 2용 누적 업데이트 패키지 2참고 빌드는 누적되므로 각 새 픽스 릴리스에는 이전 SQL Server 2008 픽스 릴리스에 포함된 모든 핫픽스와 모든 보안 픽스가 포함되어 있습니다. 이 핫픽스가 포함된 최신 픽스 릴리스를 적용하는 것이 좋습니다. 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하세요.

2402659 SQL Server 2008 서비스 팩 2가 출시된 후 출시된 2008 SQL Server 빌드는 특정 SQL Server 서비스 팩용으로 Microsoft SQL Server 2008 핫픽스가 만들어집니다. 설치하려면 SQL Server 2008 서비스 팩 2 핫픽스를 SQL Server 2008 서비스 팩 2에 적용해야 합니다. 기본적으로 SQL Server 서비스 팩에 제공되는 핫픽스는 다음 SQL Server 서비스 팩에 포함됩니다.

해결 방법

이 문제를 해결하려면 쿼리에서 동일한 차원의 두 개의 인접한 특성이 있는 식을 사용합니다. 예를 들어 MDX 쿼리에는 다음이 포함됩니다.

WITH SET S AS CROSSJOIN([Product].[Large Photo].[Large Photo], [Product].[Product].[Product], [Customer].[Customer].[Customer])
SELECT {} ON 0,
S.ITEM(1) ON 1
FROM [Adventureworks]

      

상태

Microsoft에서 이는 "적용 대상" 섹션에 나열된 Microsoft 제품에서의 문제임을 확인했습니다.