자동으로 특성 멤버 그룹화
큐브를 찾아볼 때 일반적으로 한 특성 계층의 멤버 차원은 다른 특성 계층의 멤버별로 구분합니다. 예를 들어 고객 판매를 도시별, 구매 제품별 또는 성별로 그룹화할 수 있습니다. 그러나 특정 특성 유형의 경우에는 Microsoft SQL Server 2005 Analysis Services(SSAS)에서 특성 계층 내의 멤버 배포에 따라 자동으로 특성 멤버를 그룹화하도록 하는 것이 유용합니다. 예를 들어 Analysis Services에서 고객의 연간 소득 값 그룹을 만들도록 할 수 있습니다. 이 작업을 수행하면 특성 계층을 찾아보는 사용자는 멤버 자체가 아니라 그룹의 이름과 값을 보게 됩니다. 이렇게 하면 사용자에게 표시되는 수준 수가 제한되므로 분석하는 데 보다 유용합니다.
DiscretizationMethod 속성은 Analysis Services의 그룹화 수행 여부 및 수행되는 그룹화 유형을 결정합니다. 기본적으로 Analysis Services에서는 그룹화를 수행하지 않습니다. 자동 그룹화를 사용하면 Analysis Services에서 특성 구조에 따라 최적의 그룹화 방법을 자동으로 결정하도록 허용하거나 다음 목록에서 그룹화 알고리즘 중 하나를 선택하여 그룹화 방법을 지정할 수 있습니다.
- EqualAreas
Analysis Services에서 총 차원 멤버 수가 그룹 전체에 동일하게 분포되도록 그룹 범위를 만듭니다.
- Clusters
Analysis Services에서 가우스 분포와 함께 K-Means 클러스터링 메서드를 사용하여 입력 값에 단일 차원 클러스터링을 수행하는 방식으로 그룹을 만듭니다. 이 옵션은 숫자 열에만 유효합니다.
그룹화 방법을 지정한 후에 DiscretizationBucketCount 속성을 사용하여 그룹 수를 지정해야 합니다. 자세한 내용은 특성 멤버 그룹화(불연속화)를 참조하십시오.
이 항목의 작업에서는 Customer 차원의 연간 소득 값, Employees 차원의 직원 병가 시간 및 Employees 차원의 직원 휴가 시간에 대해 서로 다른 유형의 그룹화를 사용한 다음 Analysis Services Tutorial 큐브를 처리하고 검색하여 멤버 그룹의 결과를 표시하고, 마지막으로 멤버 그룹 속성을 수정하여 그룹화 유형의 변경 결과를 표시하는 방법에 대해 설명합니다.
Customer 차원의 특성 계층 멤버 그룹화
Customer 차원의 특성 계층 멤버를 그룹화하려면
솔루션 탐색기의 차원 폴더에서 Customer를 두 번 클릭하여 Customer 차원에 대한 차원 디자이너를 엽니다.
데이터 원본 뷰 창에서 Customer 테이블을 마우스 오른쪽 단추로 클릭한 다음 데이터 탐색을 클릭합니다.
YearlyIncome 열의 값 범위가 표시됩니다. 멤버 그룹화를 사용하지 않으면 이러한 값은 Yearly Income 특성 계층의 멤버가 됩니다.
DimCustomer 테이블 탐색 탭을 닫습니다.
특성 창에서 Yearly Income을 선택합니다.
속성 창에서 DiscretizationMethod 속성 값을 Automatic으로 변경하고 DiscretizationBucketCount 속성 값을 5로 변경합니다.
다음 이미지에서는 Yearly Income의 수정된 속성을 보여 줍니다.
Employee 차원의 특성 계층 멤버 그룹화
Employee 차원의 특성 계층 멤버를 그룹화하려면
Employee 차원에 대한 차원 디자이너로 전환합니다.
데이터 원본 뷰 창에서 Employee 테이블을 마우스 오른쪽 단추로 클릭한 다음 데이터 탐색을 클릭합니다.
SickLeaveHours 열 및 VacationHours 열의 값이 표시됩니다.
DimEmployee 테이블 탐색 탭을 닫습니다.
특성 창에서 Sick Leave Hours를 선택합니다.
속성 창에서 DiscretizationMethod 속성 값을 Clusters로 변경하고 DiscretizationBucketCount 속성 값을 5로 변경합니다.
특성 창에서 Vacation Hours를 선택합니다.
속성 창에서 DiscretizationMethod 속성 값을 EqualAreas로 변경하고 DiscretizationBucketCount 속성 값을 5로 변경합니다.
수정된 특성 계층 찾아보기
수정된 특성 계층을 찾아보려면
Business Intelligence Development Studio의 빌드 메뉴에서 Analysis Services Tutorial 배포를 클릭합니다.
배포가 성공적으로 완료되면 Analysis Services Tutorial 큐브에 대한 큐브 디자이너로 전환한 후 브라우저 탭에서 다시 연결을 클릭합니다.
데이터 창의 행 필드 영역에서 Employees 계층의 모든 수준을 제거하고 데이터 창에서 모든 측정값을 제거합니다.
데이터 창의 데이터 영역에 Internet Sales-Sales Amount 측정값을 추가합니다.
메타데이터 창에서 Product 차원을 확장한 다음 Product Model Lines 사용자 계층을 데이터 창의 행 필드를 여기로 끌어 옵니다 영역으로 끌어다 놓습니다.
메타데이터 창의 Customer 차원, Demographic 표시 폴더를 차례로 확장한 다음 Yearly Income 특성 계층을 열 필드를 여기로 끌어 옵니다 영역으로 끌어다 놓습니다.
Yearly Income 특성 계층 멤버는 이제 연간 소득을 알 수 없는 고객에 대한 판매 버킷을 포함하여 6개의 버킷으로 그룹화됩니다.
열 영역에서 Yearly Income 특성 계층을 제거하고 데이터 창의 Internet Sales-Sales Amount 측정값을 제거합니다.
데이터 영역에 Reseller Sales-Sales Amount 측정값을 추가합니다.
메타데이터 창에서 Employee, Organization을 차례로 확장하고 Sick Leave Hours를 마우스 오른쪽 단추로 클릭한 다음 열 영역에 추가를 클릭합니다.
모든 판매는 두 그룹 중 하나에 속하는 직원에 의해 이루어진 것입니다. 판매량이 없는 3개의 그룹을 표시하려면 데이터 영역을 마우스 오른쪽 단추로 클릭한 다음 빈 셀 표시를 클릭합니다. 병가로 32-42시간을 사용한 직원이 병가로 20-31시간을 사용한 직원보다 훨씬 더 많은 판매량을 달성했습니다.
다음 이미지에서는 직원 병가 시간별로 차원이 구분된 판매량을 보여 줍니다.
Sick Leave Hours 특성 계층을 데이터 창의 열 영역에서 제거합니다.
Vacation Hours를 데이터 창의 열 영역에 추가합니다.
같은 영역 그룹화 방법이 사용된 두 그룹이 나타납니다. 다른 3개의 그룹은 데이터 값이 없으므로 표시되지 않습니다.
그룹화 속성 수정 및 변경 결과 검토
그룹화 속성을 수정하고 변경 결과를 검토하려면
Employee 차원에 대한 차원 디자이너로 전환한 다음 특성 창에서 Vacation Hours를 선택합니다.
속성 창에서 DiscretizationBucketCount 속성 값을 10으로 변경합니다.
BI Development Studio의 빌드 메뉴에서 Analysis Services Tutorial 배포를 클릭합니다.
배포가 성공적으로 완료되면 다시 Analysis Services Tutorial 큐브에 대한 큐브 디자이너로 전환합니다.
브라우저 탭에서 다시 연결을 클릭한 다음 그룹화 방법의 변경 결과를 표시합니다.
이제 제품에 대한 판매량 값이 있는 Vacation Hours 특성 멤버에는 3개의 그룹이 있습니다. 다른 7개의 그룹에는 판매량 데이터가 없는 멤버가 포함됩니다.