miércoles, 14 de octubre de 2015

TRANSFORMACIONES DTS

Una transformación DTS consiste en una o más funciones u operaciones aplicadas a un conjunto de datos antes de que éstos lleguen al destino. No se modifica el origen de datos. Por ejemplo, puede extraer una subcadena de una columna de datos de origen y copiarla a la tabla de destino. La función de subcadena concreta es la transformación asignada a la columna de origen. También puede buscar filas con determinadas características (por ejemplo, valores de datos específicos en columnas) y aplicar las funciones únicamente a los datos de dichas filas. Las transformaciones facilitan la implementación de la validación de datos complejos, la limpieza de datos y las conversiones durante el proceso de importación y exportación. Con una columna de datos, puede:  
• Manipular datos de columna.  
Por ejemplo, puede cambiar el tipo, el tamaño, la escala, la precisión o la compatibilidad con valores NULL de una columna. 
•Aplicar funciones programadas como secuencias de comandos ActiveX. 
Estas funciones pueden aplicar transformaciones especializadas o incluir lógica condicional. Por ejemplo, puede programar con un lenguaje de secuencias de comandos una función que examine los datos de una columna para buscar valores superiores a 1000, de forma que siempre que se encuentre uno de estos valores, se escriba el valor -1 en la tabla de destino, y para las filas que tengan valores de columna inferiores a 1000, se copie dicho valor a las tablas de destino.  
• Elegir una de las transformaciones proporcionadas por DTS.  
Por ejemplo, una función que cambie el formato de datos de entrada con formato de cadena o fecha, varias funciones de conversión de cadenas y una función que copia el contenido de un archivo especificado a una columna de origen o una columna de destino. 
• Programe sus propias transformaciones como objetos COM y aplíquelas a una columna de datos. 

FLUJO DE TRABAJO DEL PAQUETE DTS 
Puede definir la secuencia de ejecución de pasos en un paquete con:  
• Restricciones de precedencia que permiten vincular dos tareas en función de si se ejecuta la primera, si se ejecuta correctamente o si se produce un error. Puede utilizar restricciones de precedencia para generar bifurcaciones condicionales en un flujo de trabajo. Los pasos sin restricciones se ejecutan inmediatamente y se pueden ejecutar varios pasos en paralelo. 
• Secuencias de comandos ActiveX para modificar el flujo de trabajo.  
CONECTIVIDAD 
DTS se basa en la arquitectura OLE DB, que permite copiar y transformar datos de distintos orígenes. Por ejemplo:  
• SQL Server y Oracle directamente, con proveedores OLE DB nativos.
• Orígenes ODBC, con el Proveedor Microsoft OLE DB para ODBC. 
• Access 2000, Excel 2000, Microsoft Visual FoxPro®, dBase, Paradox, HTML y otros orígenes de datos de archivo adicionales.  
• Archivos de texto, con el proveedor OLE DB integrado de DTS para archivos sin formato. 
• Microsoft Exchange Server, Microsoft Active Directory™ y otros orígenes de datos no relacionales. 
• Otros orígenes de datos proporcionados por terceros.  
La funcionalidad de DTS puede estar limitada a causa de las capacidades de las bases de datos específicas, los controladores ODBC y los proveedores OLE DB. 

CONCEPTOS BÁSICOS DE DTS

USO DE LOS DTS COMO HERRAMIENTA PARA MANIPULAR DATOS 

Muchas organizaciones tienen que centralizar sus datos para mejorar la toma de decisiones corporativas. Sin embargo, los datos podrían estar almacenados en muchos formatos diferentes y en distintas ubicaciones. Los Servicios de transformación de datos (DTS) permiten satisfacer esta necesidad crucial de la empresa. Para ello, proporcionan un conjunto de herramientas que permiten extraer, transformar y consolidar datos de distintos orígenes en uno o varios destinos compatibles con la conectividad DTS. Para crear soluciones de transferencia de datos personalizadas para las necesidades específicas de la empresa, utilice las herramientas de DTS para generar gráficamente paquetes DTS o programe un paquete con el modelo de objetos de DTS.


PAQUETES DTS 
Los paquetes DTS son conjuntos organizados de conexiones, tareas DTS, transformaciones DTS y restricciones de flujo de trabajo reunidas mediante programación o una herramienta de DTS y guardadas en Microsoft® SQL Server™, Meta Data Services de Microsoft SQL Server 2000, un archivo de almacenamiento estructurado o un archivo de Microsoft Visual Basic®.  
Cada paquete contiene uno o más pasos que se ejecutan de forma secuencial o en paralelo cuando se ejecuta el paquete. Cuando se ejecuta el paquete, se conecta con los orígenes de datos apropiados, copia los datos y los objetos de base de datos, transforma los datos y notifica los sucesos a otros usuarios o procesos. Puede modificar los paquetes, protegerlos mediante contraseña, programar su ejecución y obtener su versión. 
TAREAS DTS 
Una tarea DTS es un conjunto discreto de funcionalidad, ejecutada como un único paso de un paquete. Cada tarea define un elemento de trabajo que debe realizarse como parte de la transferencia de datos y el proceso de transformación de datos, o como un trabajo que debe ejecutarse. DTS proporciona varias tareas que forman parte del modelo de objetos de DTS y a las que se puede tener acceso gráficamente (a través del Diseñador DTS) o mediante programación. Estas tareas, que puede configurar de forma individual, cubren una amplia gama de situaciones de copia de datos, transformación de datos y notificación. Por ejemplo:  

• Importación y exportación de datos.  
DTS puede importar datos de un archivo de texto o de un origen de datos OLE DB (por ejemplo, una base de datos de Microsoft Access 2000) en SQL Server. De forma alternativa, puede exportar datos desde SQL Server a un destino de datos OLE DB (por ejemplo, una hoja de cálculo Microsoft Excel 2000). DTS también permite la carga de datos de alta velocidad desde archivos de texto a tablas de SQL Server. 
• Transformación de datos.  
El Diseñador DTS incluye la tarea Transformar datos, que permite seleccionar datos de una conexión de origen de datos, asignar las columnas de datos a un conjunto de transformaciones y enviar los datos transformados a una conexión de destino. El Diseñador DTS también contiene una tarea de consulta controlada por datos que permite asignar datos a consultas parametrizadas. 

• Copia de objetos de base de datos. 
Con DTS, puede transferir, además de los datos, índices, vistas, inicios de sesión, procedimientos almacenados, desencadenadores, reglas, valores predeterminados, restricciones y tipos de datos definidos por el usuario. Además, puede generar secuencias de comandos para copiar los objetos de base de datos. 

• Intercambio de mensajes con otros usuarios y paquetes. 
DTS incluye una tarea Enviar correo que permite enviar un mensaje de correo electrónico en caso de que se realice correctamente un paso de un paquete o si se produce un error. DTS también incluye una tarea Ejecutar paquete, que permite que un paquete ejecute otro paquete como un paso del paquete original, y una tarea Cola de mensajes, que permite utilizar Message Queue Server para el intercambio de mensajes entre paquetes. 
• Ejecución de un conjunto de instrucciones Transact-SQL o secuencias de comandos Microsoft ActiveX® en un origen de datos.  
Las tareas de ejecución de SQL y de secuencia de comandos ActiveX permiten escribir instrucciones SQL y código de secuencia de comandos, y ejecutarlo como un paso del flujo de trabajo de un paquete. 
Como DTS está basado en un modelo COM ampliable, puede crear sus propias tareas personalizadas. Puede integrar las tareas personalizadas en la interfaz de usuario del Diseñador DTS y guardarlas como parte del modelo de objetos de DTS. 

MICROSOFT SQL SERVER ANALYSIS SERVICES

Analysis Services de Microsoft® SQL Server™ 2000 constituye una eficaz herramienta OLAP que se puede utilizar con los datos almacenados en diversas bases de datos, incluidas las de SQL Server, Microsoft Access y Oracle.   

INTRODUCCIÓN A ANALYSIS SERVICES  
Analysis Services de Microsoft® SQL Server™ 2000 incluyen el procesamiento analítico en línea (OLAP) y la minería de datos. 

ANALYSIS SERVER  
Analysis Server es el componente de servidor de Analysis Services de Microsoft® SQL Server™ 2000. Se ha diseñado específicamente para crear y mantener estructuras de datos multidimensionales y para proporcionar datos multidimensionales en respuesta a las consultas del cliente.  Al ejecutar el programa de instalación de Analysis Services, puede elegir instalar el componente Analysis Server. El nombre de Analysis Server coincide con el del equipo en la red. Para conectar a Analysis Server, las aplicaciones cliente deben especificar este nombre en la cadena de conexión. Los usuarios finales suelen introducir un nombre para indicar el Analysis Server al que desean conectarse.  
Al instalar Analysis Server también se crea el objeto de Analysis Server.  Analysis Server es el objeto raíz de la jerarquía de objetos. Como objeto raíz, Analysis Server es el primer objeto que se crea y al que el resto de objetos de Analysis Services se subordinan. Una vez creado el Analysis Server, los siguientes objetos en crearse son las bases de datos. 
La herramienta principal para administrar Analysis Server y sus objetos subordinados es Analysis Manager, que proporciona una completa interfaz de usuario.  Cada Analysis Server dispone de un depósito llamado Depósito de Analysis Services. Este depósito almacena los metadatos (esto es, las definiciones) de los objetos definidos en Analysis Server. De manera predeterminada, el Depósito de Analysis Services en el equipo donde se ejecuta Analysis Server es MSMDREP.MDB. No obstante, se puede migrar el Depósito de Analysis Services a una base de datos de SQL Server.  Cada Analysis Server dispone de una carpeta Datos asociada, que almacena las estructuras multidimensionales para los objetos definidos en Analysis Server. Estas estructuras están contenidas en archivos que se crean al procesar los objetos. Éstas son las estructuras a las que hace referencia para resolver consultas enviadas a Analysis Server. Algunas de estas estructuras contienen agregados.  
Importante  La carpeta Datos también contiene los archivos de seguridad que controlan el acceso de los usuarios finales a los objetos de Analysis Server. Por este motivo, la carpeta Datos debe estar protegida contra acceso no autorizado. La ubicación de la carpeta Datos se especifica durante la instalación, y se puede cambiar. Puede ver cuál es esta ubicación y cambiarla en el cuadro de diálogo Propiedades. También puede establecer otras propiedades de Analysis server en este cuadro de diálogo.  El servicio asociado a Analysis server es MSSQLServerOLAPService. De manera predeterminada, este servicio se inicia automáticamente e inicia una sesión como cuenta del sistema. Puede mantener el servicio MSSQLServerOLAPService en la aplicación Servicios, que se encuentra en el Panel de control de Microsoft Windows NT® 4.0 o en la carpeta Herramientas administrativas de Windows® 2000.

OPCIONES DEL ALMACENAMIENTO MÚLTIPLE DE DATOS  
Analysis Services ofrece tres modos de almacenamiento para dimensiones, particiones y cubos:  
• OLAP multidimensional (MOLAP)  Los datos subyacentes de un cubo se almacenan con los datos de agregación en una estructura multidimensional de alto rendimiento. El sistema de almacenamiento MOLAP proporciona un rendimiento y compresión de datos excelentes.

• OLAP relacional (ROLAP)  Los datos subyacentes de un cubo se almacenan en una base de datos relacional con los datos de agregados. El sistema de almacenamiento ROLAP le permitirá sacar el máximo partido de la inversión que ha realizado en tecnología relacional y en herramientas de administración de datos empresariales. 

• OLAP híbrido (HOLAP)  Los datos subyacentes de un cubo se almacenan en una base de datos relacional y los datos de agregación se almacenan en una estructura multidimensional de alto rendimiento. El sistema de almacenamiento HOLAP ofrece las ventajas de MOLAP para las agregaciones sin necesidad de duplicar los datos de detalle subyacentes.  




INTRODUCCION A LA TECNOLOGIA OLAP

En un modelo de datos OLAP, la información es vista como cubos, los cuales consisten de categorías descriptivas (dimensiones) y valores cuantitativos (medidas). El modelo de datos multidimensional simplifica a los usuarios formular consultas complejas, arreglar datos en un reporte, cambiar de datos resumidos a datos detallados y filtrar o rebanar los datos en subconjuntos significativos.

Por ejemplo, las dimensiones típicas de un cubo que contenga información de ventas incluirían: tiempo, región, producto, canal, organización y escenario (planeado o real). Las medidas típicas incluirían: ventas en dólares (u otra moneda), unidades vendidas, número de personas, ingresos y gastos. Aunque en ocasiones se utilizan indistintamente, los términos almacén de datos y proceso analítico en línea (OLAP, Online Analytical Processing) se aplican a diferentes componentes de sistemas conocidos como sistemas de ayuda a la toma de decisiones o sistemas de inteligencia empresarial. Los componentes de estos tipos de sistemas incluyen bases de datos y aplicaciones que proporcionan las herramientas que necesitan los analistas para tomar decisiones en relación con el soporte técnico de la organización. Un almacén de datos es una base de datos que contiene la información que, normalmente, representa el historial empresarial de una organización.

Estos datos históricos se utilizan para realizar análisis que apoyen las decisiones empresariales a diferentes niveles, desde el diseño estratégico a la evaluación del rendimiento de una unidad determinada de la organización. Los datos contenidos en un almacén de datos se encuentran organizados para permitir el análisis más que para procesar transacciones en tiempo real como ocurre en los sistemas de proceso de transacciones en línea (OLTP, Online Transaction Processing).  La tecnología OLAP permite un uso más eficaz de los almacenes de datos para el análisis en línea, lo que proporciona respuestas rápidas a consultas analíticas complejas e iterativas. Los modelos de datos multidimensionales de OLAP y las técnicas de agregados de datos organizan y resumen grandes cantidades de datos para que puedan ser evaluados con rapidez mediante el análisis en línea y las herramientas gráficas. La respuesta a una consulta realizada sobre datos históricos a menudo suele conducir a consultas posteriores en las que el analista busca respuestas más concretas o explora posibilidades. Los sistemas OLAP proporcionan la velocidad y la flexibilidad necesarias para dar apoyo al analista en tiempo real.  Cabe indicar que la Tecnología OLAP tiene como base el proceso de transacciones en línea (OLTP). A continuación veremos una breve definición del concepto OLTP y sus diferencias marcadas con la tecnología OLAP que desarrollaremos en el curso. 

TECNOLOGIA OLTP 

En muchas ocasiones, un almacén de datos se utiliza como el fundamento de un sistema de ayuda para la toma de decisiones. Los almacenes de datos se han diseñado para superar algunos de los problemas que una organización encuentra cuando intenta realizar un análisis estratégico mediante la misma base de datos que utiliza para realizar el proceso de transacciones en línea (OLTP). 
Normalmente, los sistemas OLTP: 
• Admiten el acceso simultáneo de muchos usuarios que agregan y modifican datos. 
• Representan el estado, en cambio constante, de una organización, pero no guardan su historial. 
• Contienen grandes cantidades de datos, incluidos los datos extensivos utilizados para comprobar transacciones.
• Tienen estructuras complejas. 
• Se ajustan para dar respuesta a la actividad transaccional. 
• Proporcionan la infraestructura tecnológica necesaria para admitir las operaciones diarias de la empresa.  A continuación se enumeran algunas de las dificultades que se suelen encontrar al utilizar bases de datos OLTP para realizar análisis en línea:  
• Los analistas carecen de la experiencia técnica necesaria para crear consultas "ad hoc" contra la compleja estructura de datos.
• Las consultas analíticas que resumen grandes volúmenes de datos afectan negativamente a la capacidad del sistema para responder a las transacciones en línea. 
• El rendimiento del sistema cuando está respondiendo a consultas analíticas complejas puede ser lento o impredecible, lo que causa un servicio poco eficiente a los usuarios del proceso analítico en línea. • Los datos que se modifican con frecuencia interfieren en la coherencia de la información analítica. 
• La seguridad se complica cuando se combina el análisis en línea con el proceso de transacciones en línea.  El almacén de datos proporciona una de las claves para resolver estos problemas al organizar los datos para analizarlos. Los almacenes de datos:  
• Pueden combinar datos de orígenes heterogéneos en una única estructura homogénea. 
• Organizan los datos en estructuras simplificadas buscando la eficiencia de las consultas analíticas más que del proceso de transacciones. 
• Contienen datos transformados que son válidos, coherentes, consolidados y con el formato adecuado para realizar el análisis. 
• Proporcionan datos estables que representan el historial de la empresa.
• Se actualizan periódicamente con datos adicionales, no con transacciones frecuentes. 
• Simplifican los requisitos de seguridad. 
• Proporcionan una base de datos organizada para OLAP, no para OLTP. Un puesto de datos es un formato especial de almacén de datos que suele contener un subconjunto de datos de la empresa orientado a un tema determinado y apropiado para una función empresarial específica.

TECNOLOGIA OLAP

Mientras que los almacenes y puestos de datos son los almacenes donde se analizan los datos, el Proceso analítico en línea (OLAP) es la tecnología que permite a las aplicaciones de cliente el acceso eficiente a estos datos. OLAP proporciona muchas ventajas a los usuarios que realizan análisis, por ejemplo: 
 • Un modelo de datos intuitivo y multidimensional que facilita la selección, recorrido y exploración de los datos.
 • Un lenguaje analítico de consulta que proporciona la capacidad de explorar las complejas relaciones existentes entre los datos empresariales. 
• Un precálculo de los datos consultados con más frecuencia que permite una rápida respuesta a las consultas ad hoc. 
Una de las herramientas que incluyen el procesamiento analítico en línea (OLAP) y la minería de datos más utilizadas es  Microsoft SQL Server Analysis Services, el contenido del curso se desarrollará usando esta herramienta, a continuación estudiaremos los conceptos principales de esta tecnología.