Lição 3: Processando a estrutura de mineração do Market Basket
Nesta lição, você usará a instrução INSERT INTO (DMX) e vAssocSeqLineItems e vAssocSeqOrders no AdventureWorksDW2012 banco de dados de exemplo para processar as estruturas de mineração e os modelos de mineração criados na Lição 1: Criando a estrutura de mineração do Market Basket e na Lição 2: Adicionando modelos de mineração à estrutura de mineração do Market Basket.
Ao processar uma estrutura de mineração, o Analysis Services lê os dados de origem e compila as estruturas que dão suporte a modelos de mineração. Ao processar 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 procura tendências e padrões e, depois, armazena as informações no modelo de mineração. Portanto, o modelo de mineração na verdade não contém os dados de origem, e sim as informações que foram descobertas pelo algoritmo. Para obter mais informações sobre como processar modelos de mineração, consulte Requisitos e considerações de processamento (mineração de dados).
Só será necessário reprocessar uma estrutura de mineração se houver alteração em uma coluna de estrutura ou nos dados de origem. Se você adicionar um modelo de mineração a uma estrutura de mineração que já foi processada, será possível usar a instrução INSERT INTO MINING MODEL para treinar o novo modelo de mineração nos dados existentes.
Como a estrutura de mineração da cesta básica contém uma tabela aninhada, você terá que definir as colunas de mineração a serem treinadas, utilizando a estrutura de tabelas aninhadas, e utilizar o comando SHAPE para definir as consultas que recebem dados de treinamento das tabelas de origem.
Instrução INSERT INTO
Para treinar a estrutura de mineração da cesta básica e seus modelos de mineração associados, use a instrução INSERT INTO (DMX). O código na instrução pode ser dividido nas seguintes partes.
Identificando a estrutura de mineração
Listando as colunas na estrutura de mineração
Definindo os dados de treinamento usando SHAPE
Este é 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 a ser treinada:
INSERT INTO MINING STRUCTURE [<mining structure name>]
As linhas seguintes do código especificam as colunas definidas pela estrutura de mineração. É preciso listar cada coluna na estrutura de mineração, e cada coluna deve mapear para uma coluna contida nos dados da consulta de origem. Você pode utilizar 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 dentro de 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, use OPENQUERY para definir os dados de origem. Para obter informações sobre outros métodos de definição de consulta nos dados de origem, consulte <consulta de dados de origem>.
Tarefas da lição
Você executará a seguinte tarefa nesta lição:
- Processe a estrutura de mineração da cesta básica
Processando a estrutura de mineração da cesta básica
Para processar a estrutura de mineração utilizando INSERT INTO
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 Consulta é exibido com uma consulta nova em branco.
Copie o exemplo genérico da instrução INSERT INTO no campo em branco da consulta.
Substitua o seguinte:
[<mining structure>]
por:
Market Basket
Substitua:
<mining structure columns> [<nested table>] ( SKIP, <skipped column> )
por:
[OrderNumber], [Products] (SKIP, [Model])
Na instrução, Products se refere à tabela Produtos definida pela instrução SHAPE. SKIP é usado para ignorar a coluna Modelo, que existe nos dados de origem como uma chave, mas não é usada pela estrutura de mineração.
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 referencia a fonte de dados AdventureWorksDW2012 definida no projeto de exemplo AdventureWorksDW2012 . Ela usa essa fonte de dados para acessar as exibições vAssocSeqLineItems e vAssocSeqOrders. Essas exibições contêm os dados de origem que serão usados para treinar o modelo de mineração. Caso você não tenha criado esse projeto ou essas exibições, consulte Tutorial de mineração de dados básico.
Dentro do comando SHAPE, 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 são relacionadas por meio da coluna OrderNumber que existe nas duas tabelas.
A instrução completa agora deve ser:
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]
No menu Arquivo, clique em Salvar DMXQuery1.dmx como.
Na caixa de diálogo Salvar como, procure a pasta apropriada e nomeie o arquivo Process Market Basket.dmx.
Na barra de ferramentas, clique no botão Executar.
Após a conclusão da execução da consulta, você pode visualizar os padrões e os conjuntos de itens que foram encontrados, exibir associações ou filtrar por conjunto de itens, probabilidade ou importância. Para exibir estas informações, em SQL Server Management Studio, clique com o botão direito no nome do modelo de dados e, em seguida, clica em Procurar.
Na próxima lição, você criará várias previsões com base nos modelos de mineração que adicionou à estrutura da cesta básica.