다음을 통해 공유


집계 설계(XMLA)

집계 디자인은 집계를 저장할 때 파티션이 동일한 구조를 사용하도록 특정 측정값 그룹의 파티션과 연결됩니다. 파티션에 동일한 스토리지 구조를 사용하면 MergePartitions 명령을 사용하여 나중에 병합할 수 있는 파티션을 쉽게 정의할 수 있습니다. 집계 디자인에 대한 자세한 내용은 집계 및 집계 디자인을 참조하세요.

집계 디자인에 대한 집계를 정의하려면 XMLA(XML for Analysis)에서 DesignAggregations 명령을 사용할 수 있습니다. 명령에는 DesignAggregations 참조로 사용할 집계 디자인과 해당 참조에 따라 디자인 프로세스를 제어하는 방법을 식별하는 속성이 있습니다. DesignAggregations 명령 및 해당 속성을 사용하여 집계를 반복 또는 일괄 처리로 디자인한 다음 결과 디자인 통계를 확인하여 디자인 프로세스를 평가할 수 있습니다.

집계 디자인 지정

명령의 DesignAggregationsObject 속성은 기존 집계 디자인에 대한 개체 참조를 포함해야 합니다. 개체 참조에는 데이터베이스 식별자, 큐브 식별자, 측정값 그룹 식별자 및 집계 디자인 식별자가 포함됩니다. 집계 디자인이 아직 없는 경우 오류가 발생합니다.

디자인 프로세스 제어

명령의 DesignAggregations 다음 속성을 사용하여 집계 디자인에 대한 집계를 정의하는 데 사용되는 알고리즘을 제어할 수 있습니다.

  • Steps 속성은 명령이 클라이언트 애플리케이션에 DesignAggregations 컨트롤을 반환하기 전에 수행해야 하는 반복 횟수를 결정합니다.

  • Time 속성은 명령이 클라이언트 애플리케이션에 컨트롤을 DesignAggregations 반환하기 전에 수행해야 하는 시간(밀리초)을 결정합니다.

  • 최적화 속성은 명령이 달성해야 하는 성능 향상 DesignAggregations 의 예상 비율을 결정합니다. 집계를 반복적으로 디자인하는 경우 첫 번째 명령에서만 이 속성을 보내야 합니다.

  • Storage 속성은 명령에서 사용되는 디스크 스토리지의 예상 크기(바이트)를 DesignAggregations 결정합니다. 집계를 반복적으로 디자인하는 경우 첫 번째 명령에서만 이 속성을 보내야 합니다.

  • Materialize 속성은 명령이 DesignAggregations 디자인 프로세스 중에 정의된 집계를 만들어야 하는지 여부를 결정합니다. 집계를 반복적으로 디자인하는 경우 디자인된 집계를 저장할 준비가 될 때까지 이 속성을 false로 설정해야 합니다. true로 설정하면 현재 디자인 프로세스가 종료되고 정의된 집계가 지정된 집계 디자인에 추가됩니다.

쿼리 지정

DesignAggregations 명령은 쿼리 속성에 하나 이상의 Query 요소를 포함하여 사용량 기반 최적화 명령을 지원 합니다 . 속성에는 Queries 하나 이상의 Query 요소가 포함될 수 있습니다. 속성에 Queries 요소가 없는 Query 경우 요소에 지정된 집계 디자인은 Object 일반적인 집계 집합을 포함하는 기본 구조를 사용합니다. 이 일반적인 집계 집합은 명령의 속성 DesignAggregationsStorage 속성에 Optimization 지정된 조건을 충족하도록 설계되었습니다.

Query 요소는 디자인 프로세스에서 가장 자주 사용하는 쿼리를 대상으로 하는 집계를 정의하는 데 사용하는 목표 쿼리를 나타냅니다. 사용자 고유의 목표 쿼리를 지정하거나 쿼리 로그에서 Microsoft SQL Server Analysis Services 인스턴스에 저장된 정보를 사용하여 가장 자주 사용되는 쿼리에 대한 정보를 검색할 수 있습니다. Usage-Based 최적화 마법사는 쿼리 로그를 사용하여 명령을 보낼 때 시간, 사용량 또는 지정된 사용자를 기반으로 목표 쿼리를 DesignAggregations 검색합니다. 자세한 내용은 Usage-Based 최적화 마법사 F1 도움말을 참조하세요.

집계를 반복적으로 디자인하는 경우 Analysis Services 인스턴스가 이러한 목표 쿼리를 저장하고 후속 DesignAggregations 명령 중에 이러한 쿼리를 사용하기 때문에 첫 번째 DesignAggregations 명령에서 목표 쿼리만 전달하면 됩니다. 반복 프로세스의 첫 번째 DesignAggregations 명령에서 목표 쿼리를 전달하면 속성에 목표 쿼리가 포함된 후속 DesignAggregations 명령에서 Queries 오류가 발생합니다.

요소는 Query 다음 인수를 포함하는 쉼표로 구분된 값을 포함합니다.

Frequency,Dataset[,Dataset...]

빈도
쿼리가 이전에 실행된 횟수에 해당하는 가중치 요소입니다. Query 요소가 새 쿼리를 나타내는 경우 빈도 값은 디자인 프로세스에서 쿼리를 평가하는 데 사용하는 가중치 요소를 나타냅니다. 빈도 값이 커지면 디자인 프로세스 중에 쿼리에 배치되는 가중치가 증가합니다.

데이터 세트
쿼리에 포함할 차원의 특성을 지정하는 숫자 문자열입니다. 이 문자열의 문자 수는 차원의 특성 수와 같아야 합니다. 0은 지정된 서수 위치의 특성이 지정된 차원에 대한 쿼리에 포함되지 않음을 나타내고, 1은 지정된 서수 위치의 특성이 지정된 차원에 대한 쿼리에 포함되어 있음을 나타냅니다.

예를 들어 문자열 "011"은 두 번째 및 세 번째 특성이 쿼리에 포함되는 세 가지 특성이 있는 차원과 관련된 쿼리를 참조합니다.

비고

일부 특성은 데이터 세트의 고려 사항에서 제외됩니다. 제외된 특성에 대한 자세한 내용은 XMLA(Query 요소)를 참조하세요.

집계 디자인을 포함하는 측정값 그룹의 각 차원은 요소의 데이터 세트Query 으로 표시됩니다. 데이터 세트 값의 순서는 측정값 그룹에 포함된 차원의 순서와 일치해야 합니다.

반복 또는 일괄 처리 프로세스를 사용하여 집계 디자인

디자인 프로세스에 DesignAggregations 필요한 상호 작용에 따라 반복 프로세스 또는 일괄 처리 프로세스의 일부로 명령을 사용할 수 있습니다.

반복 프로세스를 사용하여 집계 디자인

집계를 반복적으로 디자인하려면 여러 DesignAggregations 명령을 보내 디자인 프로세스를 세부적으로 제어합니다. 집계 디자인 마법사는 이 동일한 접근 방식을 사용하여 디자인 프로세스를 세부적으로 제어합니다. 자세한 내용은 집계 디자인 마법사 F1 도움말을 참조하세요.

비고

집계를 반복적으로 디자인하려면 명시적 세션이 필요합니다. 명시적 세션에 대한 자세한 내용은 XMLA(연결 및 세션) 관리를 참조하세요.

반복 프로세스를 시작하려면 먼저 다음 정보가 포함된 명령을 보냅니 DesignAggregations 다.

  • Storage Optimization 전체 디자인 프로세스를 대상으로 하는 및 속성 값입니다.

  • Steps 디자인 프로세스의 첫 번째 단계가 제한되는 속성 값 및 Time 속성 값입니다.

  • 사용량 기반 최적화 Queries 를 원하는 경우 전체 디자인 프로세스가 대상으로 지정된 목표 쿼리를 포함하는 속성입니다.

  • Materialize false로 설정된 속성입니다. 이 속성을 false로 설정하면 명령이 완료될 때 디자인 프로세스에서 정의된 집계를 집계 디자인에 저장하지 않음을 나타냅니다.

첫 번째 DesignAggregations 명령이 완료되면 이 명령은 디자인 통계가 포함된 행 집합을 반환합니다. 이러한 디자인 통계를 평가하여 디자인 프로세스를 계속할지 또는 디자인 프로세스가 완료되었는지 여부를 확인할 수 있습니다. 프로세스가 계속되어야 하는 경우 디자인 프로세스의 이 단계가 제한되는 값과 Time 값이 포함된 Steps 다른 DesignAggregations 명령을 보냅니다. 결과 통계를 평가한 다음 디자인 프로세스를 계속할지 여부를 결정합니다. 명령을 보내고 DesignAggregations 결과를 평가하는 이 반복 프로세스는 목표에 도달하고 적절한 집계 집합이 정의될 때까지 계속됩니다.

원하는 집계 집합에 도달하면 마지막 DesignAggregations 명령을 하나 보냅니다. 이 마지막 DesignAggregations 명령에는 해당 속성이 Steps 1로 설정되고 해당 속성이 Materialize true로 설정되어야 합니다. 이 최종 DesignAggregations 명령은 이러한 설정을 사용하여 디자인 프로세스를 완료하고 정의된 집계를 집계 디자인에 저장합니다.

일괄 처리 프로세스를 사용하여 집계 디자인

전체 디자인 프로세스가 대상으로 지정되고 제한되는 , TimeStorageOptimization 속성 값이 포함된 Steps단일 DesignAggregations 명령을 전송하여 일괄 처리 프로세스에서 집계를 디자인할 수도 있습니다. 사용량 기반 최적화를 원하는 경우 디자인 프로세스를 대상으로 하는 목표 쿼리도 속성에 Queries 포함되어야 합니다. 또한 명령이 Materialize 완료되면 디자인 프로세스에서 정의된 집계를 집계 디자인에 저장하도록 속성이 true로 설정되어 있는지 확인합니다.

암시적 또는 명시적 세션에서 일괄 처리 프로세스를 사용하여 집계를 디자인할 수 있습니다. 암시적 및 명시적 세션에 대한 자세한 내용은 XMLA(연결 및 세션 관리)를 참조하세요.

디자인 통계 반환

명령이 DesignAggregations 클라이언트 애플리케이션에 컨트롤을 반환하는 경우 명령은 명령에 대한 디자인 통계를 나타내는 단일 행이 포함된 행 집합을 반환합니다. 행 집합에는 다음 표에 나열된 열이 포함되어 있습니다.

칼럼 데이터 형식 설명
단계 정수 클라이언트 애플리케이션에 컨트롤을 반환하기 전에 명령에서 수행한 단계 수입니다.
시간 정수(Long) 클라이언트 애플리케이션에 컨트롤을 반환하기 전에 명령에서 수행한 시간(밀리초)입니다.
최적화 두 배 클라이언트 애플리케이션에 제어를 반환하기 전에 명령에서 달성한 성능 향상의 예상 백분율입니다.
스토리지 정수(Long) 클라이언트 애플리케이션에 컨트롤을 반환하기 전에 명령에서 가져온 예상 바이트 수입니다.
집계 정수(Long) 클라이언트 애플리케이션에 컨트롤을 반환하기 전에 명령에서 정의한 집계 수입니다.
LastStep 불리언 (Boolean) 행 집합의 데이터가 디자인 프로세스의 마지막 단계를 나타내는지 여부를 나타냅니다. 명령의 Materialize 속성이 true로 설정된 경우 이 열의 값은 true로 설정됩니다.

반복 및 일괄 처리 디자인 모두에서 각 DesignAggregations 명령 후에 반환된 행 집합에 포함된 디자인 통계를 사용할 수 있습니다. 반복 디자인에서는 디자인 통계를 사용하여 진행률을 확인하고 표시할 수 있습니다. 일괄 처리로 집계를 디자인하는 경우 디자인 통계를 사용하여 명령에서 만든 집계 수를 확인할 수 있습니다.

또한 참조하십시오

Analysis Services에서 XMLA를 사용하여 개발