3 단원: 시장 바구니 마이닝 구조 처리

 

적용 대상: SQL Server 2016 Preview

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

마이닝 구조를 처리하면 Analysis Services에서 원본 데이터를 읽은 다음 마이닝 모델을 지원하는 구조를 작성합니다. 마이닝 모델을 처리하면 마이닝 구조에서 정의한 데이터가 사용자가 선택한 데이터 마이닝 알고리즘을 통해 전달됩니다. 이 알고리즘에서는 경향 및 패턴을 검색한 다음 마이닝 모델에 이 정보를 저장합니다. 따라서 마이닝 모델은 실제 원본 데이터 대신 알고리즘에서 발견한 정보를 포함합니다. 마이닝 모델을 처리 하는 방법에 대 한 자세한 내용은 참조 처리 요구 사항 및 고려 사항 및 #40, 데이터 마이닝 및 #41;합니다.

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

시장 바구니 마이닝 구조 중첩된 테이블을 포함 하므로 중첩된 테이블 구조를 사용 하 여 학습 마이닝 열 정의를 사용 하는 셰이프 원본 테이블에서 학습 데이터를 가져오는 쿼리를 정의 하는 명령입니다.

INSERT INTO 문

시장 바구니 마이닝 구조와 연결된 된 마이닝 모델을 학습 하기 위해 사용 하 여는 INSERT INTO ( DMX ) 문입니다. 이 문의 코드는 다음 부분으로 나눌 수 있습니다.

  • 마이닝 구조 식별

  • 마이닝 구조의 열 나열

  • 사용 하 여 학습 데이터 정의 셰이프

다음은의 일반적인 예는 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>]  

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

(  
   <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>]  

이 단원에서는 사용 하 여 OPENQUERY 원본 데이터를 정의 합니다. 원본 데이터에서 쿼리를 정의의 다른 방법에 대 한 정보를 참조 하십시오. &# 60까지; 원본 데이터 쿼리 >합니다.

단원 태스크

이 단원에서는 다음 태스크를 수행합니다.

  • Market Basket 마이닝 구조 처리

Market Basket 마이닝 구조 처리

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

  1. 개체 탐색기, 의 인스턴스를 마우스 오른쪽 단추로 클릭 Analysis Services, 가리킨 새 쿼리, 를 클릭 하 고 DMX합니다.
비어 있는 새 쿼리가 포함된 쿼리 편집기가 열립니다.  
  1. INSERT INTO 문의 일반적인 예를 빈 쿼리에 복사합니다.

  2. 다음 내용을

    [<mining structure>]  
    

    다음 구문으로 바꿉니다.

    Market Basket  
    
  3. 다음 내용을

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

    다음 구문으로 바꿉니다.

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

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

  4. 다음 내용을

    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 뷰에 액세스합니다. 이러한 뷰에는 마이닝 모델의 학습에 사용할 원본 데이터가 포함되어 있습니다. 이 프로젝트나 이러한 뷰를 만들지 않은 경우 참조 기본 데이터 마이닝 자습서합니다.

    내에서 셰이프 명령을 사용 하 여 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]  
    
  5. 파일 메뉴에서 다른 이름으로 DMXQuery1.dmx 저장을 클릭합니다.

  6. 다른 이름으로 저장 대화 상자에서 적절 한 폴더로 이동 하 고 파일 이름을 프로세스 Market Basket.dmx합니다.

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

쿼리 실행이 종료된 다음에는 찾은 패턴 및 항목 집합을 보고 연결을 보며 항목 집합, 확률 또는 중요도별로 필터링합니다. 이 정보를 보려면 SQL Server Management Studio, 데이터 모델의 이름을 마우스 오른쪽 단추로 클릭 한 다음 클릭 찾아보기합니다.

다음 단원에서는 Market Basket 구조에 추가한 마이닝 모델을 기반으로 여러 예측을 만듭니다.

다음 단원

4 단원: Market Basket 예측 실행