다음을 통해 공유


레슨 3: 장바구니 마이닝 구조 처리

이 단원에서는 AdventureWorksDW2012 샘플 데이터베이스의 INSERT INTO(DMX) 문과 vAssocSeqLineItems 및 vAssocSeqOrders를 사용하여 1단원: 시장 바구니 마이닝 구조 만들기 및 단원 2: 시장 바구니 마이닝 구조마이닝 모델 추가에서 만든 마이닝 구조 및 마이닝 모델을 처리합니다.

마이닝 구조를 처리할 때 Analysis Services는 원본 데이터를 읽고 마이닝 모델을 지원하는 구조를 빌드합니다. 마이닝 모델을 처리할 때 마이닝 구조에 정의된 데이터는 선택한 데이터 마이닝 알고리즘을 통해 전달됩니다. 알고리즘은 추세 및 패턴을 검색한 다음 마이닝 모델에 이 정보를 저장합니다. 따라서 마이닝 모델에는 실제 원본 데이터가 포함되지 않고 알고리즘에서 검색된 정보가 포함됩니다. 마이닝 모델 처리에 대한 자세한 내용은 처리 요구 사항 및 고려 사항(데이터 마이닝)을 참조하세요.

구조체 열을 변경하거나 원본 데이터를 변경하는 경우에만 마이닝 구조를 다시 처리해야 합니다. 이미 처리된 마이닝 구조에 마이닝 모델을 추가하는 경우 문을 사용하여 INSERT INTO MINING MODEL 기존 데이터에 대한 새 마이닝 모델을 학습시킬 수 있습니다.

Market Basket 마이닝 구조에는 중첩 테이블이 포함되어 있으므로 중첩 테이블 구조를 사용하여 학습할 마이닝 열을 정의하고 이 명령을 사용하여 SHAPE 원본 테이블에서 학습 데이터를 가져오는 쿼리를 정의해야 합니다.

INSERT INTO 명령문

Market Basket 마이닝 구조 및 관련 마이닝 모델을 학습하려면 DMX(INSERT INTO) 문을 사용합니다. 문의 코드는 다음 부분으로 나눌 수 있습니다.

  • 마이닝 구조 식별

  • 데이터 마이닝 구조의 열 목록 작성

  • 를 사용하여 학습 데이터 정의 SHAPE

다음은 INSERT INTO 구문의 일반적인 예입니다.

INSERT INTO MINING STRUCTURE [<mining structure name>]  
(  
   <mining structure columns>  
   [<nested table>]  
   ( SKIP, <skipped column> )  
)  
SHAPE {  
  OPENQUERY([<datasource>],'<SELECT statement>') }  
APPEND  
(   
  {OPENQUERY([<datasource>],'<nested SELECT statement>')  
}  
RELATE [<case key>] TO [<foreign key>]  
) AS [<nested table>]  

코드의 첫 번째 줄은 학습할 마이닝 구조를 식별합니다.

INSERT INTO MINING STRUCTURE [<mining structure name>]  

코드의 다음 줄은 마이닝 구조에 의해 정의된 열을 지정합니다. 마이닝 구조의 각 열을 나열해야 하며 각 열은 원본 쿼리 데이터에 포함된 열에 매핑되어야 합니다. 원본 데이터에 있지만 마이닝 구조에 존재하지 않는 열을 무시하는 데 사용할 SKIP 수 있습니다. 사용 SKIP방법에 대한 자세한 내용은 INSERT INTO(DMX)를 참조하세요.

(  
   <mining structure columns>  
   [<nested table>]  
   ( SKIP, <skipped column> )  
)  

코드의 마지막 줄은 마이닝 구조를 학습하는 데 사용할 데이터를 정의합니다. 원본 데이터는 두 테이블 내에 포함되어 있으므로 테이블을 연결하기 위해 사용합니다 SHAPE .

SHAPE {  
  OPENQUERY([<datasource>],'<SELECT statement>') }  
APPEND  
(   
  {OPENQUERY([<datasource>],''<nested SELECT statement>'')  
}  
RELATE [<case key>] TO [<foreign key>]  
) AS [<nested table>]  

이 단원에서는 원본 데이터를 정의하는 데 사용합니다 OPENQUERY . 원본 데이터에 대한 쿼리를 정의하는 다른 방법에 대한 자세한 내용은 원본 데이터 쿼리>를 참조하세요<.

학습 과제

이 단원에서는 다음 작업을 수행합니다.

  • 시장 바구니 마이닝 구조 처리

시장 바구니 마이닝 구조를 처리하기

INSERT INTO를 사용하여 마이닝 구조를 처리하려면

  1. 개체 탐색기에서 Analysis Services 인스턴스를 마우스 오른쪽 단추로 클릭하고 새 쿼리를 가리킨 다음 DMX를 클릭합니다.

    쿼리 편집기가 열리고 비어 있는 새 쿼리가 포함됩니다.

  2. 빈 쿼리에 INSERT INTO 문의 일반적인 예제를 복사하십시오.

  3. 다음을 대체하십시오

    [<mining structure>]  
    

    와 함께

    Market Basket  
    
  4. 다음을 대체하십시오

    <mining structure columns>  
    [<nested table>]  
    ( SKIP, <skipped column> )  
    

    와 함께

    [OrderNumber],  
    [Products]   
    (SKIP, [Model])  
    

    Products 에서 SHAPE 문으로 정의된 Products 테이블을 참조합니다. SKIP 는 원본 데이터에 키로 존재하지만 마이닝 구조에서 사용되지 않는 모델 열을 무시하는 데 사용됩니다.

  5. 다음을 대체하십시오

    SHAPE {  
      OPENQUERY([<datasource>],'<SELECT statement>') }  
    APPEND  
    (   
      {OPENQUERY([<datasource>],'<nested SELECT statement>')  
    }  
    RELATE [<case key>] TO [<foreign key>]  
    ) AS [<nested table>]  
    

    와 함께

    SHAPE {  
      OPENQUERY([Adventure Works DW],'SELECT OrderNumber  
                FROM vAssocSeqOrders ORDER BY OrderNumber')}  
    APPEND  
    (   
      {OPENQUERY([Adventure Works DW],'SELECT OrderNumber, Model FROM   
        dbo.vAssocSeqLineItems ORDER BY OrderNumber, Model')  
    }  
    RELATE OrderNumber to OrderNumber   
    ) AS [Products]  
    

    원본 쿼리는 AdventureWorksDW2012 샘플 프로젝트에 정의된 AdventureWorksDW2012 데이터 원본을 참조합니다. 이 데이터 원본을 사용하여 vAssocSeqLineItems 및 vAssocSeqOrders 뷰에 액세스합니다. 이러한 뷰에는 마이닝 모델을 학습하는 데 사용할 원본 데이터가 포함됩니다. 이 프로젝트 또는 이러한 보기를 만들지 않은 경우 기본 데이터 마이닝 자습서를 참조하세요.

    명령 내에서 SHAPE 두 개의 쿼리를 정의하는 데 사용합니다 OPENQUERY . 첫 번째 쿼리는 부모 테이블을 정의하고 두 번째 쿼리는 중첩 테이블을 정의합니다. 두 테이블은 두 테이블에 모두 있는 OrderNumber 열을 사용하여 관련됩니다.

    이제 전체 문은 다음과 같습니다.

    INSERT INTO MINING STRUCTURE [Market Basket]  
    (  
       [OrderNumber],[Products] (SKIP, [Model])  
    )  
    SHAPE {  
      OPENQUERY([Adventure Works DW],'SELECT OrderNumber  
                FROM vAssocSeqOrders ORDER BY OrderNumber')}  
    APPEND  
    (   
      {OPENQUERY([Adventure Works DW],'SELECT OrderNumber, Model FROM   
        dbo.vAssocSeqLineItems ORDER BY OrderNumber, Model')  
    }  
    RELATE OrderNumber to OrderNumber   
    ) AS [Products]  
    
  6. 파일 메뉴에서 DMXQuery1.dmx 다른 이름으로 저장을 클릭합니다.

  7. 다른 이름으로 저장 대화 상자에서 적절한 폴더로 이동하고 파일 Process Market Basket.dmx이름을 지정합니다.

  8. 도구 모음에서 실행 단추를 클릭합니다.

쿼리 실행이 완료되면 발견된 패턴 및 항목 집합을 보거나, 연결을 보거나, 항목 집합, 확률 또는 중요도를 기준으로 필터링할 수 있습니다. 이 정보를 보려면 SQL Server Management Studio에서 데이터 모델의 이름을 마우스 오른쪽 단추로 클릭한 다음 찾아보기를 클릭합니다.

다음 단원에서는 시장 바구니 구조에 추가한 마이닝 모델을 기반으로 몇 가지 예측을 만듭니다.

다음 단원:

4단원: 시장 바구니 예측 실행