Compartir a través de


Lección 3: Procesamiento de la estructura de minería de la cesta del mercado

En esta lección, utilizará la instrucción INSERT INTO (DMX) y las vistas vAssocSeqLineItems y vAssocSeqOrders de la base de datos de ejemplo AdventureWorksDW2012 para procesar las estructuras de minería y los modelos de minería que creó en Lección 1: Crear la estructura de minería de cesta de mercado y en Lección 2: Agregar modelos de minería a la estructura de minería de cesta de mercado.

Cuando se procesa una estructura de minería, Analysis Services lee los datos de origen y construye las estructuras que respaldan los modelos de minería. Al procesar un modelo de minería de datos, los datos definidos por la estructura de minería de datos se pasan a través del algoritmo de minería de datos que eligió. El algoritmo busca tendencias y patrones y, a continuación, almacena esta información en el modelo de minería de datos. Por lo tanto, el modelo de minería de datos no contiene los datos de origen reales, sino que contiene la información detectada por el algoritmo. Para obtener más información sobre el procesamiento de modelos de minería de datos, vea Requisitos y consideraciones de procesamiento (minería de datos).

Solo tiene que volver a procesar una estructura de minería si cambia una columna de la estructura o los datos de origen. Si agrega un modelo de minería de datos a una estructura de minería de datos que ya se ha procesado, puede usar la INSERT INTO MINING MODEL instrucción para entrenar el nuevo modelo de minería de datos en los datos existentes.

Dado que la estructura de minería de datos Market Basket contiene una tabla anidada, tendrá que definir las columnas de minería de datos que se entrenarán mediante la estructura de tabla anidada y usar el SHAPE comando para definir las consultas que extraen los datos de entrenamiento de las tablas de origen.

INSERT INTO (instrucción)

Para entrenar la estructura de minería Market Basket y sus modelos de minería asociados, use la instrucción INSERT INTO (DMX). El código en la declaración se puede dividir en las siguientes partes.

  • Identificación de la estructura de minería de datos

  • Enumeración de las columnas de la estructura de minería de datos

  • Definición de los datos de entrenamiento mediante SHAPE

A continuación se muestra un ejemplo genérico de la instrucción 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>]  

La primera línea del código identifica la estructura de minería de datos que va a entrenar.

INSERT INTO MINING STRUCTURE [<mining structure name>]  

Las siguientes líneas del código especifican las columnas definidas por la estructura de minería de datos. Debe enumerar cada columna de la estructura de minería de datos y cada columna debe asignarse a una columna contenida en los datos de consulta de origen. Puede usar SKIP para omitir las columnas que existen en los datos de origen, pero no existen en la estructura de minería de datos. Para obtener más información sobre cómo usar SKIP, vea INSERT INTO (DMX).

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

Las líneas finales del código definen los datos que se usarán para entrenar la estructura de minería. Dado que los datos de origen están contenidos en dos tablas, usará SHAPE para relacionar las tablas.

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

En esta lección, usará OPENQUERY para definir los datos de origen. Para obtener información sobre otros métodos para definir una consulta en los datos de origen, consulte <consulta> de datos de origen.

Tareas de la lección

Realizará la siguiente tarea en esta lección:

  • Procesar la estructura de minería de la cesta del mercado

Procesamiento de la estructura de minería de la cesta del mercado

Para procesar la estructura de minería mediante INSERT INTO

  1. En el Explorador de objetos, haga clic con el botón derecho en la instancia de Analysis Services, seleccione Nueva consulta y, a continuación, haga clic en DMX.

    Se abre el Editor de consultas y contiene una consulta nueva en blanco.

  2. Copie el ejemplo genérico de la instrucción INSERT INTO en la consulta en blanco.

  3. Reemplace lo siguiente:

    [<mining structure>]  
    

    con:

    Market Basket  
    
  4. Reemplace lo siguiente:

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

    con:

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

    En la instrucción , Products hace referencia a la tabla Products definida por la instrucción SHAPE. SKIP se usa para omitir la columna Modelo, que existe en los datos de origen como clave, pero no se usa en la estructura de minería.

  5. Reemplace lo siguiente:

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

    con:

    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]  
    

    La consulta de origen hace referencia al origen de datos AdventureWorksDW2012 definido en el proyecto de ejemplo AdventureWorksDW2012 . Usa este origen de datos para acceder a las vistas vAssocSeqLineItems y vAssocSeqOrders. Estas vistas contienen los datos de origen que se usarán para entrenar el modelo de minería. Si no ha creado este proyecto o estas vistas, consulte Tutorial básico de minería de datos.

    Dentro del comando SHAPE, se utilizará OPENQUERY para definir dos consultas. La primera consulta define la tabla primaria y la segunda define la tabla anidada. Las dos tablas están relacionadas con la columna OrderNumber, que existe en ambas tablas.

    La instrucción completa debe ser la siguiente:

    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. En el menú Archivo , haga clic en Guardar DMXQuery1.dmx Como.

  7. En el cuadro de diálogo Guardar como , vaya a la carpeta adecuada y asigne al archivo Process Market Basket.dmxel nombre .

  8. En la barra de herramientas, haga clic en el botón Ejecutar .

Una vez finalizada la ejecución de la consulta, puede ver los patrones y conjuntos de elementos que se encontraron, ver asociaciones o filtrar por conjunto de elementos, probabilidad o importancia. Para ver esta información, en SQL Server Management Studio, haga clic con el botón derecho en el nombre del modelo de datos y, a continuación, haga clic en Examinar.

En la siguiente lección, creará varias predicciones basadas en los modelos de minería de datos que agregó a la estructura Market Basket.

Lección siguiente

Lección 4: Ejecutando las predicciones de cesta de la compra