이 단원에서는 Internet Sales 테이블을 다른 파티션과 독립적으로 처리(새로 고침)할 수 있는 더 작은 논리 부분으로 나누는 파티션을 만듭니다. 기본적으로 모델에 포함된 모든 테이블에는 테이블의 모든 열과 행을 포함하는 하나의 파티션이 있습니다. Internet Sales 테이블의 경우 데이터를 연도별로 나누려고 합니다. 테이블의 각 5년 동안 하나의 파티션입니다. 그런 다음 각 파티션을 독립적으로 처리할 수 있습니다. 자세한 내용은 파티션(SSAS 테이블 형식)을 참조하세요.
이 단원을 완료할 예상 시간: 15분
필수 조건
이 항목은 순서대로 완료해야 하는 테이블 형식 모델링 자습서의 일부입니다. 이 단원의 작업을 수행하기 전에 이전 단원인 10단원: 계층 만들기를 완료해야 합니다.
파티션 만들기
Internet Sales 테이블에서 파티션을 만들려면
모델 디자이너에서 Internet Sales 테이블을 클릭한 다음 테이블 메뉴를 클릭한 다음 파티션을 클릭합니다.
파티션 관리자 대화 상자가 열립니다.
파티션 관리자 대화 상자의 파티션에서 Internet Sales 파티션을 클릭합니다.
파티션 이름에서 이름을
Internet Sales 2005.로 변경합니다.팁 (조언)
다음 단계로 넘어가기 전에, 테이블 미리 보기 창에서 모델 테이블에 포함된 열(체크됨)의 열 이름이 원본의 열 이름과 함께 표시되는 것을 확인하세요. 테이블 미리 보기 창에 모델 테이블이 아닌 원본 테이블의 열이 표시되어 있기 때문입니다.
미리 보기 창의 오른쪽 바로 위에 있는 쿼리 편집 기 단추를 선택합니다.
파티션에 특정 기간 내에 해당 행만 포함하도록 하려면 WHERE 절을 포함해야 합니다. SQL 문을 사용하여 WHERE 절만 만들 수 있습니다.
SQL 문 필드에서 다음 문을 붙여넣어 기존 문을 바꿉니다.
SELECT [dbo].[FactInternetSales].[ProductKey], [dbo].[FactInternetSales].[CustomerKey], [dbo].[FactInternetSales].[PromotionKey], [dbo].[FactInternetSales].[CurrencyKey], [dbo].[FactInternetSales].[SalesTerritoryKey], [dbo].[FactInternetSales].[SalesOrderNumber], [dbo].[FactInternetSales].[SalesOrderLineNumber], [dbo].[FactInternetSales].[RevisionNumber], [dbo].[FactInternetSales].[OrderQuantity], [dbo].[FactInternetSales].[UnitPrice], [dbo].[FactInternetSales].[ExtendedAmount], [dbo].[FactInternetSales].[UnitPriceDiscountPct], [dbo].[FactInternetSales].[DiscountAmount], [dbo].[FactInternetSales].[ProductStandardCost], [dbo].[FactInternetSales].[TotalProductCost], [dbo].[FactInternetSales].[SalesAmount], [dbo].[FactInternetSales].[TaxAmt], [dbo].[FactInternetSales].[Freight], [dbo].[FactInternetSales].[CarrierTrackingNumber], [dbo].[FactInternetSales].[CustomerPONumber], [dbo].[FactInternetSales].[OrderDate], [dbo].[FactInternetSales].[DueDate], [dbo].[FactInternetSales].[ShipDate] FROM [dbo].[FactInternetSales] WHERE (([OrderDate] >= N'2005-01-01 00:00:00') AND ([OrderDate] < N'2006-01-01 00:00:00'))이 문장은 WHERE 절에 명시된 대로 OrderDate가 2005년인 행의 모든 데이터를 파티션에 포함하도록 지정합니다.
유효성 검사를 클릭합니다.
특정 열이 원본에 없다는 경고가 표시됩니다. 3단원: 열 이름 바꾸기에서 모델의 Internet Sales 테이블에서 해당 열의 이름을 원본의 동일한 열과 다르게 변경했기 때문입니다.
Internet Sales 테이블에서 2006년 파티션을 만들려면
파티션 관리자 대화 상자의 파티션에서 방금 만든 파티션을 클릭한
Internet Sales 2005다음 복사합니다.파티션 이름에 .를 입력합니다
Internet Sales 2006.SQL 문에서 파티션이 2006년 동안 해당 행만 포함하도록 하려면 WHERE 절을 다음으로 바꿉니다.
WHERE (([OrderDate] >= N'2006-01-01 00:00:00') AND ([OrderDate] < N'2007-01-01 00:00:00'))
Internet Sales 테이블에서 2007년 파티션을 만들려면
파티션 관리자 대화 상자에서 복사를 클릭합니다.
파티션 이름에 .를 입력합니다
Internet Sales 2007.[전환 대상]에서 [쿼리 편집기]를 선택합니다.
SQL 문에서 파티션이 2007년 동안 해당 행만 포함하도록 하려면 WHERE 절을 다음으로 바꿉니다.
WHERE (([OrderDate] >= N'2007-01-01 00:00:00') AND ([OrderDate] < N'2008-01-01 00:00:00'))
Internet Sales 테이블에서 2008년 파티션을 만들려면
파티션 관리자 대화 상자에서 새로 만들기를 클릭합니다.
파티션 이름에 .를 입력합니다
Internet Sales 2008.[전환 대상]에서 [쿼리 편집기]를 선택합니다.
SQL 문에서 파티션이 2008년 동안 해당 행만 포함하도록 하려면 WHERE 절을 다음으로 바꿉니다.
WHERE (([OrderDate] >= N'2008-01-01 00:00:00') AND ([OrderDate] < N'2009-01-01 00:00:00'))
Internet Sales 테이블에서 2009년 파티션을 만들려면
파티션 관리자 대화 상자에서 새로 만들기를 클릭합니다.
파티션 이름에 .를 입력합니다
Internet Sales 2009.[전환 대상]에서 [쿼리 편집기]를 선택합니다.
SQL 문에서 파티션이 2009년 동안 해당 행만 포함하도록 순서대로 WHERE 절을 다음으로 바꿉니다.
WHERE (([OrderDate] >= N'2009-01-01 00:00:00') AND ([OrderDate] < N'2010-01-01 00:00:00'))
파티션 처리
파티션 관리자 대화 상자에서 방금 만든 각 새 파티션의 파티션 이름 옆에 별표(*)가 표시됩니다. 이는 파티션이 처리되지 않음을 나타냅니다(새로 고침). 새 파티션을 만들 때 파티션 처리 또는 테이블 처리 작업을 실행하여 해당 파티션의 데이터를 새로 고쳐야 합니다.
Internet Sales 파티션을 처리하려면
[확인]을 클릭하여 파티션 관리자 대화 상자를 닫습니다.
모델 디자이너에서 Internet Sales 테이블을 클릭한 다음 모델 메뉴를 클릭한 다음 프로세스 (새로 고침)를 가리킨 다음 파티션 처리를 클릭합니다.
파티션 처리 대화 상자에서 모드가 프로세스 기본값으로 설정되어 있는지 확인합니다.
만든 5개의 파티션 각각에 대한 프로세스 열의 확인란을 선택한 다음 확인을 클릭합니다.
대리 자격 증명을 입력하라는 메시지가 표시되면 2과, 6단계에서 지정한 Windows 사용자 이름 및 암호를 입력하세요.
그런 다음 데이터 프로세스 대화 상자가 나타나고 각 파티션에 대한 프로세스 세부 정보가 표시됩니다. 각 파티션에 대해 다른 수의 행이 전송됩니다. 이는 각 파티션이 SQL 문의 WHERE 절에 지정된 연도의 행만 포함하기 때문입니다. 2010년의 데이터는 없습니다.
다음 단계
이 자습서를 계속하려면 다음 단원인 단원: 12단원: 역할 만들기로 이동합니다.