Anuncios

viernes, 30 de marzo de 2018

SSIS con filas duplicadas - Cómo evitarlas en Excel u otro formato

Introducción de como evitar filas duplicadas usando SSIS

En este nuevo artículo mostraremos cómo eliminar filas duplicadas de Excel utilizando SSIS. Para logarlo, utilizaremos un componente externo denominado SSIS Package from Melissa Data.

Requisitos


  1. SQL Server Integration Services (que se instala con SQL Server)
  2. El instalador del paquete de Melissa 
  3. SSDT instalado


Presentación de Melissa Data


Dicho componente incluye varias Tareas de SSIS entre las cuales se tienen las siguientes:


  1. MatchUp es la tarea que se utilizará en este ejemplo. Se usa para eliminar datos duplicados.
  2. El componente Contact Verify valida la información de contacto verificando que la dirección sea válid, que sea coherente la ciudad y estado, valida el correo electrónico, si existen palabras raras o sospechosas y mucho más.
  3. El Fuzzy Match compara datos de acuerdo a diferentes algoritmos de comparación como ser el algoritmo de Jaro, N-Gram, MDKeyboard y muchos más.
  4. El Generalized Cleanser se usa para estandarizar datos respecto a mayúsculas, minúsculas, abreviaciones y mucho más.
  5. GlobalVerify se usa para verificar las direcciones internacionales en más de 240 países. Traduce caracteres en caracteres nativos. Incluye la latitud y longitud a geocódigos internacionales de direcciones postales.
  6. IPlocator permite obtener la latitud, longitud, ciudad, país de acuerdo con el IP.
  7. Personator es una tarea que sirve para verificar que la dirección, correo electrónico y teléfono coinciden.
  8. Profiler nos permite analizar los datos y verificar que tengan la calidad como para entrar a un almacén de datos conocido también como un Data Warehouse.
  9. Property se usa cuando necesitamos ver información sobre una propiedad de parcela. Nos muestra su precio, metros cuadrados, hipotecas y dimensiones.
  10. SmartMover se aplica a Canadá y EE.UU. se aplica para gente que se traslada de dirección.

Detectar datos duplicados

En el instalador de Melissa Data para SSIS, se tienen interesantes ejemplos de cada componente. En esta ocasión, mostraremos el ejemplo MatchUp para detectar datos duplicados.

En el instalador de Melissa vaya al ejemplo de MatchUp. En mi caso, el ejemplo está en la siguiente dirección abra el archivo MatchUp.sln:


 El ejemplo utiliza un Data Flow. Realice un doble clic en la tarea:
Luego de hacer doble click veremos en la página de Data Flow  que incluye un archivo de texto que es el Input. El MatchUp es el que realizará la tarea de ordenar los datos similares e identificará los datos que son duplicados:



Se tiene el siguiente archivo de texto con 500 filas:
En el Matchcode se selecciona los datos que se analizarán si son duplicados y son la dirección (address), apellido (last name), first name (nombre):

 La página de Field Mapping se usa para indicar el tipo de columna de acuerdo con los tipos de dato de Melissa Data para que entienda que tipo de información contiene:

La sección de Options mostrará datos importantes MD_DupCount contará los datos duplicados. 



Survivorship/Pass Though mostrará los tipos de datos, precisión, el largo de las cadenas:

 Los datos duplicados serán detectados rápidamente por la herramienta y la columna MD DupeCount contará los duplicados existentes los datos serán agrupados según las columnas con datos comunes:


Si ejecutamos el paquete, un archivo txt se generará con los datos agrupados.


El presente ejemplo hizo el análisis de datos duplicados usando un archivo de texto. Sin embargo, se pueden verificar datos duplicados de diferentes tipos de datos incluyendo MS Excel.

Conclusiones

Melissa Data incluye importantes herramientas que ayudan a detectar datos duplicados, malas direcciones, datos basura y mucho más.


Referencias