Compartilhar via


Lição 3: Processando a estrutura de mineração da Cesta de Mercado

Nesta lição, você usará a instrução INSERT INTO (DMX) e o vAssocSeqLineItems e vAssocSeqOrders do banco de dados de exemplo AdventureWorksDW2012 para processar as estruturas de mineração e os modelos de mineração criados na Lição 1: Criando a Estrutura de Mineração da Cesta de Mercado e a Lição 2: Adicionando Modelos de Mineração à Estrutura de Mineração da Cesta de Mercado.

Quando você processa uma estrutura de mineração, o Analysis Services lê os dados de origem e cria as estruturas que dão suporte a modelos de mineração. Quando você processa um modelo de mineração, os dados definidos pela estrutura de mineração são passados pelo algoritmo de mineração de dados escolhido. O algoritmo pesquisa tendências e padrões e armazena essas informações no modelo de mineração. O modelo de mineração, portanto, não contém os dados de origem reais, mas contém as informações que foram descobertas pelo algoritmo. Para obter mais informações sobre o processamento de modelos de mineração, consulte Requisitos e Considerações de Processamento (Mineração de Dados).

Você só precisará reprocessar uma estrutura de mineração se alterar uma coluna de estrutura ou alterar os dados de origem. Se você adicionar um modelo de mineração a uma estrutura de mineração que já foi processada, poderá usar a INSERT INTO MINING MODEL instrução para treinar o novo modelo de mineração nos dados existentes.

Como a estrutura de mineração da Cesta de Compras contém uma tabela aninhada, você precisará definir as colunas de mineração a serem treinadas usando a estrutura de tabela aninhada e usar o comando SHAPE para definir as consultas que extraem os dados de treinamento das tabelas de origem.

Instrução INSERT INTO

Para treinar a estrutura de mineração Market Basket e seus modelos de mineração associados, use a instrução INSERT INTO (DMX). O código na instrução pode ser dividido nas partes a seguir.

  • Identificando a estrutura de mineração

  • Listando as colunas da estrutura de mineração

  • Definindo os dados de treinamento usando SHAPE

A seguir está um exemplo genérico da instrução 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>]  

A primeira linha do código identifica a estrutura de mineração que você treinará:

INSERT INTO MINING STRUCTURE [<mining structure name>]  

As próximas linhas do código especificam as colunas definidas pela estrutura de mineração. Você deve listar cada coluna na estrutura de mineração e cada coluna deve ser mapeada para uma coluna contida nos dados da consulta de origem. Você pode usar SKIP para ignorar colunas que existem nos dados de origem, mas não existem na estrutura de mineração. Para obter mais informações sobre como usar SKIP, consulte INSERT INTO (DMX).

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

As linhas finais do código definem os dados que serão usados para treinar a estrutura de mineração. Como os dados de origem estão contidos em duas tabelas, você usará SHAPE para relacionar as tabelas.

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

Nesta lição, você usará OPENQUERY para definir os dados de origem. Para obter informações sobre outros métodos de definição de uma consulta nos dados de origem, consulte <a consulta> de dados de origem.

Tarefas da lição

Você executará a seguinte tarefa nesta lição:

  • Processar a estrutura de mineração da Cesta de Mercado

Processando a estrutura de mineração da Cesta de Mercado

Para processar a estrutura de mineração usando o comando INSERT INTO

  1. No Pesquisador de Objetos, clique com o botão direito do mouse na instância do Analysis Services, aponte para Nova Consulta e clique em DMX.

    O Editor de Consultas é aberto e contém uma nova consulta em branco.

  2. Copie o exemplo genérico da instrução INSERT INTO na consulta em branco.

  3. Substitua o seguinte:

    [<mining structure>]  
    

    por:

    Market Basket  
    
  4. Substitua o seguinte:

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

    por:

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

    Na instrução, Products refere-se à tabela Produtos definida pela instrução SHAPE. SKIP é usado para ignorar a coluna Model, que existe nos dados de origem como uma chave, mas não é usada pela estrutura de mineração.

  5. Substitua o seguinte:

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

    por:

    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]  
    

    A consulta de origem faz referência à fonte de dados AdventureWorksDW2012 definida no projeto de exemplo AdventureWorksDW2012 . Ele usa essa fonte de dados para acessar as visões vAssocSeqLineItems e vAssocSeqOrders. Essas exibições contêm os dados de origem que serão usados para treinar o modelo de mineração. Se você não criou este projeto ou essas exibições, consulte o Tutorial básico de mineração de dados.

    Dentro do SHAPE comando, você usará OPENQUERY para definir duas consultas. A primeira consulta define a tabela pai e a segunda consulta define a tabela aninhada. As duas tabelas estão relacionadas usando a coluna OrderNumber, que existe em ambas as tabelas.

    A instrução completa agora deve ser a seguinte:

    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. No menu Arquivo , clique em Salvar DMXQuery1.dmx Como.

  7. Na caixa de diálogo Salvar como , navegue até a pasta apropriada e nomeie o arquivo Process Market Basket.dmx.

  8. Na barra de ferramentas, clique no botão Executar .

Depois que a consulta terminar de ser executada, você poderá exibir os padrões e conjuntos de itens encontrados, exibir associações ou filtrar por conjunto de itens, probabilidade ou importância. Para exibir essas informações, no SQL Server Management Studio, clique com o botão direito do mouse no nome do modelo de dados e clique em Procurar.

Na próxima lição, você criará várias previsões com base nos modelos de mineração que você adicionou à estrutura da Cesta de Mercado.

Próxima lição

Lição 4: Executando previsões de cesta de mercado