다음을 통해 공유


집계 및 집계 디자인

개체는 AggregationDesign 여러 파티션에서 공유할 수 있는 집계 정의 집합을 정의합니다.

개체는 Aggregation 차원의 특정 세분성에서 측정값 그룹 데이터의 요약을 나타냅니다.

간단한 Aggregation 개체는 기본 정보 및 차원으로 구성됩니다. 기본 정보에는 집계 이름, ID, 주석 및 설명이 포함됩니다. 차원은 차원에 AggregationDimension 대한 세분성 특성 목록을 포함하는 개체의 컬렉션입니다.

집계는 리프 셀의 데이터에 대한 미리 계산된 요약입니다. 집계는 질문을 하기 전에 답변을 준비하여 쿼리 응답 시간을 향상시킵니다. 예를 들어 데이터 웨어하우스 팩트 테이블에 수십만 개의 행이 포함된 경우 특정 제품 라인에 대한 주간 판매 합계를 요청하는 쿼리는 답변을 계산하기 위해 쿼리 시간에 팩트 테이블의 모든 행을 검사하고 합계를 계산해야 하는 경우 응답하는 데 시간이 오래 걸릴 수 있습니다. 그러나 이 쿼리에 응답할 요약 데이터가 미리 계산된 경우 응답은 거의 즉각적일 수 있습니다. 이러한 요약 데이터 사전 계산은 처리 중에 발생하며 OLAP 기술의 신속한 응답 시간을 위한 기반이 됩니다.

큐브는 OLAP 기술이 요약 데이터를 다차원 구조로 구성하는 방법입니다. 차원 및 특성의 계층 구조는 큐브에서 요청할 수 있는 쿼리를 반영합니다. 집계는 차원으로 지정된 좌표에 있는 셀의 다차원 구조에 저장됩니다. 예를 들어 "북서부 지역의 1998년 제품 X 판매는 무엇이었는지?"라는 질문에는 세 가지 차원(제품, 시간 및 지리)과 하나의 측정값(판매)이 포함됩니다. 지정된 좌표(product X, 1998, Northwest)에 있는 큐브의 셀 값은 단일 숫자 값인 대답입니다.

다른 질문은 여러 값을 반환할 수 있습니다. 예를 들어 "1998년 지역별로 하드웨어 제품의 판매량은 얼마나 되었습니까?" 이러한 쿼리는 지정된 조건을 충족하는 좌표에서 셀 집합을 반환합니다. 쿼리에서 반환되는 셀 수는 Product 차원의 하드웨어 수준의 항목 수, 1998년 4분기 및 Geography 차원의 지역 수에 따라 달라집니다. 모든 요약 데이터가 집계로 미리 계산된 경우 쿼리의 응답 시간은 지정된 셀을 추출하는 데 필요한 시간에만 따라 달라집니다. 팩트 테이블에서 데이터를 계산하거나 읽을 필요가 없습니다.

큐브에서 가능한 모든 집계를 미리 계산하면 모든 쿼리에 대해 가능한 가장 빠른 응답 시간을 제공할 수 있지만 Analysis Services는 미리 계산된 다른 집계의 일부 집계 값을 쉽게 계산할 수 있습니다. 또한 가능한 모든 집계를 계산하려면 상당한 처리 시간과 스토리지가 필요합니다. 따라서 스토리지 요구 사항과 미리 계산된 가능한 집계의 비율 사이에는 절충이 있습니다. 집계가 미리 계산되지 않은 경우(0%), 큐브에 필요한 처리 시간 및 스토리지 공간의 양이 최소화되지만 각 쿼리에 응답하는 데 필요한 데이터를 리프 셀에서 검색한 다음 쿼리 시간에 집계하여 각 쿼리에 응답해야 하므로 쿼리 응답 시간이 느려질 수 있습니다. 예를 들어 앞에서 묻는 질문에 대답하는 단일 숫자("북서부 지역의 1998년 제품 X 판매액")를 반환하려면 수천 개의 데이터 행을 읽고 각 행에서 Sales 측정값을 제공하는 데 사용되는 열 값을 추출한 다음 합계를 계산해야 할 수 있습니다. 또한 해당 데이터를 검색하는 데 필요한 시간은 데이터 MOLAP, HOLAP 또는 ROLAP에 대해 선택한 스토리지 모드에 따라 매우 달라집니다.

집계 설계

Microsoft SQL Server Analysis Services는 미리 계산된 값에서 다른 집계를 신속하게 계산할 수 있도록 사전 계산을 위해 집계를 선택하는 정교한 알고리즘을 통합합니다. 예를 들어 시간 계층 구조의 월 수준에 대해 집계를 미리 계산하는 경우 분기 수준에 대한 계산에는 요청 시 신속하게 계산할 수 있는 3개의 숫자 요약만 필요합니다. 이 기술은 처리 시간을 절약하고 스토리지 요구 사항을 줄여 쿼리 응답 시간에 미치는 영향을 최소화합니다.

집계 디자인 마법사는 쿼리 응답 시간과 스토리지 요구 사항 간에 만족스러운 절충을 달성하기 위해 알고리즘에 스토리지 및 백분율 제약 조건을 지정할 수 있는 옵션을 제공합니다. 그러나 집계 디자인 마법사의 알고리즘은 가능한 모든 쿼리가 똑같이 발생할 가능성이 있다고 가정합니다. Usage-Based 최적화 마법사를 사용하면 클라이언트 애플리케이션에서 제출한 쿼리를 분석하여 측정값 그룹에 대한 집계 디자인을 조정할 수 있습니다. 마법사를 사용하여 큐브의 집계를 조정하면 큐브에 필요한 스토리지에 큰 영향을 주지 않고 자주 쿼리에 대한 응답성을 높이고 자주 사용하지 않는 쿼리에 대한 응답성을 줄일 수 있습니다.

집계는 마법사를 사용하여 설계되었지만 집계가 디자인된 파티션이 처리될 때까지 실제로 계산되지 않습니다. 집계를 만든 후 큐브의 구조가 변경되거나 큐브의 원본 테이블에 데이터가 추가되거나 변경되는 경우 일반적으로 큐브의 집계를 검토하고 큐브를 다시 처리해야 합니다.

또한 참조하십시오

파티션 스토리지 모드 및 처리