Comparación de registros con una base de datos

Este procedimiento describe la forma de cruzar registros en los cuales los registros sospechosos provienen de un origen que podría ser un archivo o base de datos, y los registros candidatos se encuentran en una base de datos con otros registros no relacionados. Para cada registro de entrada, el flujo de datos consulta la base de datos en busca de candidatos para dicho registro, y utiliza luego una etapa Transactional Match para comparar registros. Por último, el flujo de datos escribe las colecciones de registros coincidentes en un archivo de salida.

Nota: Transactional Match solo cruza registros sospechosos con candidatos. No intenta cruzar registros sospechosos con otros registros sospechosos, como se hace en Intraflow Match.
  1. Genere un nuevo flujo de datos en Enterprise Designer.
  2. Arrastre hacia el lienzo una etapa de origen.
  3. Haga doble clic en la etapa de origen y configúrela. Consulte la Guía de Dataflow Designer para obtener instrucciones acerca de cómo configurar etapas de origen.
  4. Arrastre hacia el lienzo una etapa Candidate Finder y conecte a esta la etapa de origen.

    Por ejemplo, si estuviese usando la etapa de origen Read from File, su flujo de datos tendrá el siguiente aspecto:

    Candidate Finder obtiene los registros candidatos que conformarán el conjunto de posibles cruces que Transactional Match evaluará más adelante en el flujo de datos.

  5. Haga doble clic en el lienzo en la etapa Candidate Finder.
  6. En el campo Conexión, seleccione la base de datos que desea consultar para buscar registros candidatos. Si la base de datos que desea no figura en la lista, abra Management Console y defina antes la conexión de la base de datos.
  7. En el campo SQL, ingrese una instrucción SQL SELECT que busca registros candidatos en función del valor en uno de los campos del flujo de datos. Para referenciar los campos del flujo de datos, use el formato ${FieldName}, donde FieldName es el nombre del campo que desea referenciar.

    Por ejemplo, si desea buscar registros en la base de datos, donde el valor en la columna LastName es el mismo que el campo de registros de flujo de datos, Customer_LastName, escribiría una instrucción SQL como la siguiente:

    SELECT FirstName, LastName, Address, City, State, PostalCode 
    FROM Customer_Table 
    WHERE LastName = ${Customer_LastName};
  8. En la ficha Mapa de campo, seleccione los campos del flujo de datos que deben contener los datos de cada columna de base de datos.

    La columna Campos seleccionados lista las columnas de base de datos y Campos de etapa lista los campos del flujo de datos.

  9. Haga clic en Aceptar.
  10. Arrastre hacia el lienzo una etapa Transactional Match y conecte Candidate Finder a esta.

    Por ejemplo, si está utilizando una etapa de entrada Read from File, su flujo de datos tendrá ahora el siguiente aspecto:

    Transactional Match compara los registros sospechosos con los registros candidatos que se obtienen en la etapa Candidate Finder. Transactional Match utiliza reglas de cruce para comparar el registro sospechoso con todos los registros candidatos que tienen el mismo número de grupo de candidatos (asignado en Candidate Finder) a fin de identificar duplicados.

  11. Haga doble clic en el lienzo en la etapa Transactional Match.
  12. En el campo Cargar regla de cruce seleccione una de las reglas de cruce predefinidas, que puede usar como está o bien puede modificarla para que se ajuste a sus necesidades. Si desea crear una nueva regla de cruce sin usar una de las reglas de cruce predefinidas como punto de partida, haga clic en Nueva. Solamente puede tener una regla personalizada en un flujo de datos.
    Nota: La función Opciones del flujo de datos en Enterprise Designer permite exponer la regla de cruce para la configuración durante la ejecución.
  13. Para obtener más información acerca de cómo modificar las otras opciones, consulte Generación de reglas de cruce.
  14. Cuando haya terminado de configurar la etapa Transactional Match, haga clic en Aceptar.
  15. Arrastre hacia el lienzo una etapa receptora y conéctela a la etapa Transactional Match.

    Por ejemplo, si estuviese utilizando la etapa receptora Write to File, su flujo de datos tendría el siguiente aspecto:

  16. Haga doble clic en la etapa receptora y configúrela.

    Para obtener información acerca de cómo configurar etapas receptoras, consulte la Guía de Dataflow Designer.

Ahora cuenta con un flujo de datos que se corresponderá con los registros de dos orígenes de datos.

Ejemplo de Comparación de registros con una base de datos

Como ejecutivo de cuenta de una empresa de ventas por Internet, quiere determinar si un posible cliente ya ha comprado o si es un cliente nuevo.

El siguiente servicio de flujo de datos ofrece una solución a la posible situación empresarial:

Este flujo de datos es un servicio que evalúa datos candidatos que se envían mediante una invocación a API o mediante una invocación de un servicio web. Evalúa los datos contra datos de clientes en una base de datos del cliente para determinar si un candidato es un cliente.

La etapa de entrada está configurada de modo que el flujo de datos acepta los siguientes campos de entrada: AddressLine1, City, Name, PostalCode y StateProvince. AddressLine1 y Name son los campos clave para el procesamiento del flujo de datos de esta plantilla.

La etapa Candidate Finder obtiene los registros candidatos que conformarán los posibles cruces que serán evaluados por la etapa Transactional Match.

La etapa Transactional Match compara registros sospechosos con los posibles registros candidatos que son devueltos en la etapa Candidate Finder. Transactional Match utiliza reglas de cruce para comparar el registro sospechoso con todos los registros candidatos que tienen el mismo número de grupo de candidatos (asignado en Candidate Finder) a fin de identificar duplicados. En este ejemplo, Transactional Match compara LastName con AddressLine1.

La etapa Output devuelve los resultados del flujo de datos a través de una respuesta de API o de un servicio web.