virtual dataport 4.1 guÍa del administradorhelp.denodo.com/platform-docs/4.1/denodovirtual... ·...

153
VIRTUAL DATAPORT 4.1 GUÍA DEL ADMINISTRADOR Update 2 (17 Mar. 2008)

Upload: others

Post on 17-Jun-2020

15 views

Category:

Documents


0 download

TRANSCRIPT

  • VIRTUAL DATAPORT 4.1 GUÍA DEL ADMINISTRADOR

    Update 2 (17 Mar. 2008)

  • NOTA Este documento es confidencial y propiedad de denodo technologies (en adelante denodo). Ninguna de las partes del documento puede ser copiada, fotografiada, fotocopiada, transmitida electrónicamente, almacenada en un sistema de gestión documental o reproducida mediante cualquier otro mecanismo sin la autorización previa o por escrito de denodo.

    copyright © 2008 Queda prohibida la reproducción total o parcial de este documento sin la autorización por escrito de denodo technologies

  • Virtual DataPort 4.1 Guía del Administrador

    ÍNDICE

    PREFACIO........................................................................................................................................................................... I ALCANCE..................................................................................................................................................................... I QUIÉN DEBERÍA USAR ESTE DOCUMENTO.......................................................................................................... I RESUMEN DE CONTENIDOS.................................................................................................................................... I

    1 INTRODUCCIÓN ..................................................................................................................................... 2

    2 ARQUITECTURA GENERAL................................................................................................................... 3 2.1 NIVEL FÍSICO .......................................................................................................................................... 4 2.2 NIVEL LÓGICO......................................................................................................................................... 5

    2.2.1 Módulo de Datos: Caché........................................................................................................................... 6 2.3 NIVEL DE USUARIO ............................................................................................................................... 6

    3 INSTALACIÓN Y CONFIGURACIÓN INICIAL ..................................................................................... 8

    4 EJECUCIÓN ............................................................................................................................................. 9 4.1 EJECUCIÓN DE LA HERRAMIENTA DE ADMINISTRACIÓN GRÁFICA DE VIRTUAL DATAPORT 9 4.2 DOCUMENTACIÓN Y AYUDA EN LÍNEA.......................................................................................... 11

    5 ADMINISTRACIÓN DEL SERVIDOR .................................................................................................. 12 5.1 CONFIGURACIÓN DEL SERVIDOR..................................................................................................... 12

    5.1.1 Puerto ...................................................................................................................................................... 12 5.1.2 Pool de Threads....................................................................................................................................... 13 5.1.3 Configuración de la Caché ...................................................................................................................... 14 5.1.4 Limitación de peticiones concurrentes ................................................................................................... 16 5.1.5 Configuración por defecto de Proxy http ................................................................................................ 16 5.1.6 Configuración de los parámetros de “swapping” a disco ...................................................................... 17 5.1.7 Configuración de Parámetros de Ejecución de Procedimientos Almacenados ...................................... 18 5.1.8 Configuración de Internacionalización por defecto ................................................................................ 20

    5.2 CONFIGURACIÓN DE LOGS ................................................................................................................ 20 5.3 EXPORTACIÓN / IMPORTACIÓN DE METADATOS DEL SERVIDOR............................................ 20

    6 CREACIÓN VISUAL DE VISTAS.......................................................................................................... 22 6.1 ACCESO A LA HERRAMIENTA GRÁFICA DE ADMINISTRACIÓN ................................................ 22 6.2 CREACIÓN Y MANEJO DE PROYECTOS .......................................................................................... 22

    6.2.1 Cambiar elementos a otros proyectos .................................................................................................... 23 6.3 IMPORTACIÓN DE DATASOURCES Y CREACIÓN DE RELACIONES BASE................................ 24

    6.3.1 Importación de Fuentes de tipo JDBC .................................................................................................... 24 6.3.2 Importación de Fuentes de Tipo Web Service........................................................................................ 26 6.3.3 Eliminación de una fuente de datos ....................................................................................................... 28 6.3.4 Creación de Relaciones Base partiendo de una Base de Datos............................................................. 28 6.3.5 Viendo el esquema de una vista............................................................................................................. 29 6.3.6 Creación de Relaciones Base partiendo de un Web Service ................................................................. 32

    6.4 CREACIÓN VISUAL DE VISTAS.......................................................................................................... 34 6.4.1 Creación de Vistas de Tipo Unión........................................................................................................... 34 6.4.2 Viendo el Esquema de una vista............................................................................................................. 36

  • Virtual DataPort 4.1 Guía del Administrador

    6.4.3 Creación de Vistas de tipo Join .............................................................................................................. 37 6.4.4 Creación de Vistas de tipo Selección ..................................................................................................... 40 6.4.5 Creación de vistas de tipo Agregación ................................................................................................... 50 6.4.6 Creación de Vistas de tipo Proyección.................................................................................................... 55 6.4.7 Aplanamiento de campos de tipo array de registros.............................................................................. 57 6.4.8 Modo de visualización en forma de árbol............................................................................................... 62 6.4.9 Ejecución de vistas y uso de VQL Shell .................................................................................................. 63 6.4.10 Traza de Ejecución de una Sentencia ..................................................................................................... 67 6.4.11 Sustitución de la Definición de Una Vista .............................................................................................. 69

    6.5 OTROS TIPOS DE FUENTES................................................................................................................ 70 6.5.1 Tipos de rutas en Virtual DataPort.......................................................................................................... 70 6.5.2 Fuentes ODBC ......................................................................................................................................... 72 6.5.3 Fuentes XML ........................................................................................................................................... 74 6.5.4 Fuentes Web ........................................................................................................................................... 75 6.5.5 Fuentes de ficheros delimitados............................................................................................................. 76 6.5.6 Fuentes Google Mini............................................................................................................................... 78 6.5.7 Fuentes Aracne ....................................................................................................................................... 82 6.5.8 Fuentes LDAP .......................................................................................................................................... 88 6.5.9 Fuentes CUSTOM.................................................................................................................................... 89 6.5.10 Fuentes JDBC/ODBC a través de SQL Query.......................................................................................... 93 6.5.11 Propiedades de Configuración de Fuentes de Datos.............................................................................. 97

    6.6 CONFIGURACIÓN AVANZADA DE VISTAS...................................................................................... 98 6.6.1 Configuración de Internacionalización.................................................................................................... 99 6.6.2 Configuración de la cache de una vista.................................................................................................. 99 6.6.3 Configuración de swapping .................................................................................................................. 100 6.6.4 Edición del Plan de Ejecución ............................................................................................................... 100 6.6.5 Capacidades de consulta ...................................................................................................................... 102 6.6.6 Propiedades de Configuración de Vistas .............................................................................................. 104 6.6.7 Propiedades de Configuración para tipos específicos de Vistas.......................................................... 106

    6.7 PROCEDIMIENTOS ALMACENADOS.............................................................................................. 106 6.7.1 Importación de Procedimientos Almacenados ..................................................................................... 106 6.7.2 Ejecución de Procedimientos Almacenados ......................................................................................... 108 6.7.3 Uso de Procedimientos Almacenados en la Creación de Vistas .......................................................... 110

    7 PUBLICACIÓN DE SERVICIOS WEB................................................................................................ 111 7.1 INVOCACIÓN DE LOS SERVICIOS WEB REST EXPORTADOS .................................................... 114 7.2 CONFIGURACIÓN DE LAS CONEXIONES EN LOS WEB SERVICES EXPORTADOS................. 115

    8 BASES DE DATOS, USUARIOS Y PERMISOS EN VIRTUAL DATAPORT................................... 117 8.1 BASES DE DATOS EN VIRTUAL DATAPORT ................................................................................. 117 8.2 ESTRUCTURA DE USUARIOS Y PERMISOS EN VIRTUAL DATAPORT...................................... 117

    8.2.1 Tipos de usuarios .................................................................................................................................. 117 8.2.2 Tipos de permisos ................................................................................................................................. 117

    8.3 ADMINISTRACIÓN GRÁFICA DE BASES DE DATOS, USUARIOS Y PERMISOS..................... 119 8.3.1 Creación de Bases de Datos ................................................................................................................. 119 8.3.2 Configuración y Borrado de Bases de Datos ........................................................................................ 120 8.3.3 Creación de usuarios............................................................................................................................. 121 8.3.4 Modificación y Borrado de usuarios ..................................................................................................... 123

    9 MONITORIZACIÓN DEL SERVIDOR DATAPORT ........................................................................... 127 9.1 UTILIZANDO JCONSOLE................................................................................................................... 127 9.2 INFORMACIÓN GENERAL SOBRE EL SERVIDOR.......................................................................... 132 9.3 INFORMACIÓN GENERAL SOBRE DATASOURCES...................................................................... 133

  • Virtual DataPort 4.1 Guía del Administrador

    9.4 INFORMACIÓN SOBRE LA CACHE.................................................................................................. 133 9.5 INFORMACIÓN Y EVENTOS SOBRE EL ACCESO AL CATÁLOGO (SENTENCIAS DDL) .......... 134 9.6 INFORMACIÓN Y EVENTOS SOBRE LA EJECUCIÓN DE SENTENCIAS DML .......................... 135 9.7 INFORMACIÓN Y EVENTOS SOBRE TRANSACCIONES.............................................................. 137

    10 ARQUITECTURAS EN CLUSTER / BACKUP DE SERVIDORES..................................................... 139 10.1 INSTALACIÓN DE LAS UTILIDADES............................................................................................... 139 10.2 USO DEL SCRIPT PING...................................................................................................................... 139 10.3 USO DE LOS SCRIPTS IMPORT / EXPORT PARA BACKUP Y/O REPLICACIÓN ....................... 140

    11 APÉNDICES......................................................................................................................................... 142 DRIVERS JDBC ...................................................................................................................................................... 142

    BIBLIOGRAFÍA ............................................................................................................................................................. 144

  • Virtual DataPort 4.1 Guía del Administrador

    ÍNDICE DE FIGURAS Figura 1 Arquitectura de Virtual DataPort .............................................................................................................. 4 Figura 2 Autenticación en la herramienta de administración .............................................................................. 10 Figura 3 Configuración de puertos........................................................................................................................ 13 Figura 4 Configuración de cache........................................................................................................................... 15 Figura 5 Configuración de peticiones concurrentes ............................................................................................. 16 Figura 6 Configuración de Proxy HTTP.................................................................................................................. 17 Figura 7 Configuración de Swapping.................................................................................................................... 18 Figura 8 Configuración de Ejecución de Sentencias dentro de Procedimientos Almacenados ........................... 19 Figura 9 Creación de un Nuevo proyecto.............................................................................................................. 23 Figura 10 Importación de una Fuente de Datos JDBC............................................................................................ 25 Figura 11 Configuración del Pool de conexiones JDBC.......................................................................................... 26 Figura 12 Importación de una fuente de datos de tipo Web Service..................................................................... 27 Figura 13 Esquemas y tablas de una fuente JDBC................................................................................................. 28 Figura 14 Aceptación del esquema de una relación base...................................................................................... 29 Figura 15 Esquema de la vista base phone_inc .............................................................................................. 31 Figura 16 Esquema de la vista base internet_inc .................................................................................... 32 Figura 17 Operaciones y parámetros de un Web Service ...................................................................................... 33 Figura 18 Esquema de la vista base average_monthly_sales.............................................................. 34 Figura 19 Construcción de la vista unión de phone_inc e internet_inc ........................................... 35 Figura 20 Esquema de la vista unificada de incidencias: incidences ........................................................... 36 Figura 21 Construcción de Vista join de incidences y average_monthly_sales ......................... 37 Figura 22 Esquema de la vista join incidences_sales ............................................................................. 39 Figura 23 Construcción de la vista selección pref_clients_inc_sales ............................................. 41 Figura 24 Editor de condiciones de selección......................................................................................................... 42 Figura 25 Creación de una constante ..................................................................................................................... 43 Figura 26 Creación de una condición simple .......................................................................................................... 44 Figura 27 Esquema de RevenueSum....................................................................................................................... 45 Figura 28 Editor de valores de tipos compuestos................................................................................................... 46 Figura 29 Creando un valor de tipo getSumRevenuebyTaxIds_IN0 .................................................... 48 Figura 30 Condición con valores de tipos compuestos........................................................................................... 49 Figura 31 Resultado de ejecutar la vista RevenueSum_Selection ......................................................... 50 Figura 32 Creación de la vista de agregación inc_group_by_pref_clients .................................... 51 Figura 33 Creación de vista agregación inc_group_by_pref_clients (2) ........................................ 52 Figura 34 Editor de expresiones de agregación...................................................................................................... 53 Figura 35 Creación de una expresión de agregación.............................................................................................. 54 Figura 36 Editor de expresiones de atributo derivado............................................................................................ 56 Figura 37 La operación getAverageMonthlyRevenue del Web Service sales................................ 58 Figura 38 Vista base creada por defecto para getAverageMonthlyRevenue ...................................... 59 Figura 39 Aplanando el array devuelto por average_revenue_array ................................................... 60 Figura 40 Esquema de salida de average_revenue_array aplanada ................................................... 61 Figura 41 Esquema de la vista aplanada ................................................................................................................ 62 Figura 42 Vista en árbol de incidences_sales ....................................................................................... 63 Figura 43 Ejecutando la vista incidences_sales .................................................................................... 64 Figura 44 Resultado compuesto por una única tupla con un campo de tipo array de registros ............................ 65 Figura 45 Viendo el contenido de un campo de tipo array de registros................................................................. 66 Figura 46 Traza de ejecución de la vista incidences..................................................................................... 68 Figura 47 Traza de ejecución con errores de una vista join ................................................................................... 69 Figura 48 Confirmación de la sustitución de una vista........................................................................................... 70 Figura 49 Proporcionando valores para las variables de interpolación.................................................................. 72 Figura 50 Importación de una fuente de datos ODBC ............................................................................................ 73 Figura 51 Importación de una fuente de datos XML .............................................................................................. 74 Figura 52 Descripción de una fuente XML.............................................................................................................. 75 Figura 53 Importación de un wrapper HTML creado con ITPilot ............................................................................ 76

  • Virtual DataPort 4.1 Guía del Administrador

    Figura 54 Importación de una nueva fuente de ficheros delimitados .................................................................... 77 Figura 55 Descripción de una fuente de tipo ficheros delimitados........................................................................ 78 Figura 56 Importación de una nueva fuente de tipo Google Mini.......................................................................... 79 Figura 57 Descripción de la fuente Google Mini .................................................................................................... 80 Figura 58 Pantalla de creación de vista base en fuentes Google Mini.................................................................. 81 Figura 59 Pantalla de creación de una fuente de datos Aracne............................................................................. 83 Figura 60 Descripción de la fuente Aracne............................................................................................................. 84 Figura 61 Pantalla de creación de vistas base en fuentes Aracne......................................................................... 85 Figura 62 Añadiendo un atributo con los términos más relevantes del campo SEARCHABLECONTENT.............. 87 Figura 63 Creación de un datasource LDAP............................................................................................................ 88 Figura 64 Propiedades del datasource LDAP.......................................................................................................... 89 Figura 65 Importación de un wrapper CUSTOM..................................................................................................... 90 Figura 66 Nueva fuente de datos CUSTOM............................................................................................................ 91 Figura 67 Creación de una vista base en un Datasource CUSTOM ....................................................................... 92 Figura 68 Nueva vista base sobre un datasource CUSTOM................................................................................... 93 Figura 69 Creación de una vista base utilizando una query SQL............................................................................ 94 Figura 70 Editando el valor de las variables de interpolación................................................................................ 95 Figura 71 Especificación de alias............................................................................................................................ 96 Figura 72 Pantalla de configuración avanzada de la vista average_monthly_sales............................ 99 Figura 73 Editando el Plan de Ejecución de una vista .......................................................................................... 101 Figura 74 Formulario de búsqueda para una tienda de libros .............................................................................. 103 Figura 75 Método de búsqueda para una tienda de libros................................................................................... 104 Figura 76 Importación de un Procedimiento Almacenado.................................................................................... 107 Figura 77 Propiedades de un procedimiento almacenado.................................................................................... 108 Figura 78 Ejecución del procedimiento almacenado CalculateAvgRevenue........................................ 109 Figura 79 Resultado de la ejecución del procedimiento almacenado CalculateAvgRevenue.............. 110 Figura 80 Publicación de un Web Service ............................................................................................................ 111 Figura 81 Operaciones generadas para inc_grouped_by_pref_clients ...................................... 112 Figura 82 Creación de una base de datos............................................................................................................. 119 Figura 83 Descripción de una base de datos........................................................................................................ 120 Figura 84 Asignar privilegios sobre una base de datos........................................................................................ 121 Figura 85 Creación de un usuario de tipo normal ................................................................................................. 122 Figura 86 Creación de un usuario de tipo LDAP ................................................................................................... 123 Figura 87 Descripción de un usuario..................................................................................................................... 124 Figura 88 Asignación de privilegios a un usuario a nivel de base de datos ........................................................ 125 Figura 89 Asignación de privilegios a un usuario a nivel de vista y/o procedimiento almacenado .................... 126 Figura 90 Conexión a DataPort desde jConsole.................................................................................................... 128 Figura 91 MBeans de Virtual DataPort ................................................................................................................. 129 Figura 92 Pestaña Attributes del Mbean RequestsManagementInfo.................................................................. 130 Figura 93 Detalle de una consulta en jConsole .................................................................................................... 131 Figura 94 Detalle de una notificación en jConsole ............................................................................................... 132

  • Virtual DataPort 4.1 Guía del Administrador

    ÍNDICE DE TABLAS Tabla 1 Conversiones entre tipos de dato DataPort y tipos de parámetros de servicios web ......................... 114 Tabla 2 Drivers JDBC ......................................................................................................................................... 142 Tabla 3 Drivers MySQL, IBM, Microsoft y Sybase ............................................................................................ 142

  • Virtual DataPort 4.1 Guía del Administrador

    Prefacio i

    PREFACIO

    ALCANCE

    Denodo Virtual Data Port permite que las aplicaciones de negocio puedan acceder fácilmente a vistas integradas de distintas fuentes de información heterogéneas y distribuidas, estructuradas y no estructuradas. Este documento introduce al lector mediante ejemplos a la instalación, configuración y administración de Denodo Virtual DataPort, incluyendo la creación de vistas unificadas sobre fuentes de datos heterogéneas y distribuidas.

    QUIÉN DEBERÍA USAR ESTE DOCUMENTO

    Este documento está dirigido a desarrolladores y administradores que quieran conocer con detalle cómo instalar, configurar y administrar Virtual DataPort, incluyendo la creación de vistas unificadas de datos sobre fuentes de información heterogéneas y distribuidas, estructuradas y no estructuradas. La información detallada precisa para desarrollar aplicaciones que utilicen Virtual Data Port se proporciona en la Guía del Desarrollador.

    RESUMEN DE CONTENIDOS

    Más concretamente, en este documento:

    • Se presentan los conceptos fundamentales de las soluciones de integración de información basadas en Virtual DataPort.

    • Se describen los procesos necesarios para instalar y configurar Virtual Data Port.

    • Se describe detalladamente mediante ejemplos cómo utilizar las herramientas de administración visual de Virtual Data Port para construir vistas unificadas sobre información de fuentes distribuidas y heterogéneas.

  • Virtual DataPort 4.1 Guía del Administrador

    Introducción 2

    1 INTRODUCCIÓN

    Hoy en día, y para soportar sus propios procesos de negocio, toda organización de cierta entidad dispone de multitud de sistemas de información desarrollados a lo largo del tiempo y que hacen uso de distintas fuentes de datos. Habitualmente, dichas fuentes están desarrolladas sobre tecnologías diferentes (bases de datos relacionales, servicios web, documentos XML, hojas de cálculo, ficheros planos...), de acuerdo a modelos de datos muy heterogéneos, e incluyen tanto información estructurada como no estructurada. El desarrollo de nuevos servicios para los clientes o la optimización de los procesos de negocio de la empresa exigen construir nuevos sistemas que necesitarán datos almacenados en esos repositorios de información heredados. Otra importante tendencia a considerar es la expansión de Internet, ejemplo paradigmático de dispersión de información y heterogeneidad de formatos. Sus contenidos son en muchas ocasiones un complemento fundamental para los sistemas corporativos. Especialmente si consideramos que, además, clientes, proveedores y competencia acostumbran ya a ofrecer interfaz web para dar acceso a información de mucho interés. Virtual DataPort es una solución global para la integración en tiempo real de fuentes de información heterogéneas y dispersas, estructuradas y no estructuradas. Para ello combina varias funcionalidades que gozan de importantes sinergias: Virtual DataPort integra aquella información que es relevante para la empresa, sin importar su procedencia y formato, incorpora esa información en su sistema de información, en tiempo real o con precargas configurables, y facilita la construcción de servicios telemáticos de alto valor estratégico y funcional, tanto corporativos como de negocio, imposibles de concebir sin su aplicación. Este documento pretende servir como guía técnica al software Virtual DataPort. Pretende ilustrar su capacidad de desarrollar soluciones que integren fuentes de información dispersas, y heterogéneas, con una estructura débil (fuentes estructuradas, semiestructuradas y no estructuradas), autónomas y sin un control centralizado.

  • Virtual DataPort 4.1 Guía del Administrador

    Arquitectura General 3

    2 ARQUITECTURA GENERAL

    A grandes rasgos, Virtual DataPort permite que las aplicaciones de negocio puedan tratar una serie de fuentes de información distribuidas y heterogéneas, incluyendo fuentes externas como si su información estuviese contenida en una gran Base de Datos ”Virtual” que permite construir fácilmente vistas que combinen e integren dicha información. Virtual Data Port actúa como un mediador que proporciona una visión estructurada y unificada de los datos contenidos en todas las fuentes de información incluidas en el sistema. El sistema puede tratar fácilmente un amplio abanico de fuentes de información estructuradas, semi-estructuradas y no estructuradas, tales como: Bases de Datos, sitios web, documentos XML, Servicios Web, ficheros de texto plano, hojas de cálculo, índices sobre información no estructurada, etc. El sistema considera cada fuente de datos como una relación dentro de VirtualDataPort y permite utilizar un lenguaje (compatible en gran medida con SQL) llamado Denodo VQL (Virtual Query Language), para crear vistas que combinen arbitrariamente la información de dichas relaciones. En este proceso, Virtual DataPort es capaz de tratar con fuentes cuyas capacidades de consulta son limitadas (por ejemplo, en la mayor parte de fuentes web, sólo son permitidas las consultas que pueden realizarse a través de algún tipo de formulario HTML). Además, el motor de consulta de Virtual DataPort es capaz de consultar información no estructurada y combinarla de la forma deseada con información estructurada y semi-estructurada. Cuando el sistema recibe una consulta VQL sobre una vista unificada definida previamente, genera un plan de ejecución que consistirá en una lista de subconsultas que serán enviadas en tiempo real a las diversas fuentes involucradas, y una serie de operaciones de combinación de los datos obtenidos de cada fuente. Además, Virtual DataPort incluye un sistema (llamado módulo de cache) que permite al administrador decidir el mecanismo de actualización de los datos de las fuentes:

    • El sistema podrá acceder a los datos de las fuentes en tiempo real proporcionando así información totalmente actualizada.

    • Pueden crearse y configurarse caches para las fuentes o vistas que se desee.

    Virtual DataPort también permite la actualización de las fuentes de datos, siempre que éstas sean capaces de soportar transacciones. El sistema de integración de información proporcionado por Virtual DataPort se modela en 3 niveles independientes: la capa de usuario, la capa lógica y la capa física (wrappers). En la Figura 1 se muestra una visión general de la arquitectura del sistema. A continuación se describen cada uno de estos niveles.

  • Virtual DataPort 4.1 Guía del Administrador

    Arquitectura General 4

    Figura 1 Arquitectura de Virtual DataPort

    2.1 NIVEL FÍSICO

    El nivel físico tiene como misión conseguir que las fuentes de datos se comporten de cara a los niveles superiores de la arquitectura como relaciones con una estructura definida de acuerdo al modelo común de datos utilizado por DataPort. Estas labores son realizadas a través de los llamados wrappers. Un wrapper extrae información de una fuente, interpreta los resultados obtenidos, y los devuelve al sistema en el formato esperado por DataPort. También, en los casos en los que la fuente lo permite, un wrapper inserta, actualiza y/o borra información en una fuente. Los wrappers hacen posible que Virtual DataPort pueda tratar de manera consistente todas las fuentes externas, sin preocuparse de sus particularidades específicas. Para ello, proporciona la implementación de diferentes tipos de wrappers –uno por cada tipo de fuente externa-. Virtual DataPort soporta directamente los siguientes tipos de wrappers:

    • Bases de datos: Extraen datos desde una Base de Datos Remota vía JDBC u ODBC. También insertan, actualizan y/o borran datos en los casos en los que las fuentes lo permitan.

    • Servicios Web: Extraen datos realizando invocaciones a operaciones definidas por servicios web.

    • XML: Son aquellos que permiten extraer datos encapsulados en ficheros XML, siguiendo una cierta DTD o esquema, o sin esquema ni DTD asociado. Los documentos XML pueden ser accedidos en el disco local o a través de protocolos como http y FTP. Otra utilidad de este tipo de wrapper es la importación de servicios web de tipo REST.

    • Ficheros planos: Extraen datos de ficheros planos en formato CSV (Comma Separated Values) o similar. Los documentos CSV pueden ser accedidos en el disco local o a través de protocolos como http y FTP.

  • Virtual DataPort 4.1 Guía del Administrador

    Arquitectura General 5

    • ITPilot: Permiten acceder a información contenida en fuentes Web semi-estructuradas, permitiendo tratarlas de forma similar a como si fuesen bases de datos estructuradas. Los wrappers de este tipo son generados utilizando Denodo ITPilot [ITPILOT].

    • Aracne: Denodo Aracne [ARCN] permite el crawling, filtrado, indexación y búsqueda de información no estructurada contenida en repositorios tales como la web, bases de datos relacionales, sistemas de ficheros locales o servidores de correo electrónico. Los índices creados con Denodo Aracne pueden ser importados directamente en DataPort para su consulta y combinación conjunta con información estructurada y semi-estructurada.

    • Google Mini: Google Mini [GMINI] es la solución corporativa de Google para el crawling, indexación y búsqueda de información contenida en la web. Los índices creados con Google Mini pueden ser importados directamente en Denodo DataPort para su consulta y combinación conjunta con información estructurada y semi-estructurada.

    • CUSTOM (también denominados wrappers de tipo MY): Extraen la información de una fuente, a través de una implementación Java proporcionada por el administrador de Virtual DataPort. Este tipo de wrapper permite la construcción ad-hoc de un wrapper para una fuente específica. Los wrappers CUSTOM también pueden permitir la inserción, actualización y/o borrado de datos.

    Los wrappers para bases de datos, servicios web, ficheros planos, XML, Aracne y Google Mini son creados automáticamente por Virtual DataPort al importar las fuentes de información correspondientes (véase sección 6.2). Los wrappers para fuentes web semi-estructuradas pueden ser creados con Denodo ITPilot [ITPILOT].

    2.2 NIVEL LÓGICO

    El nivel lógico, tiene como responsabilidad integrar y combinar las relaciones exportadas por los diferentes wrappers para componer el esquema global del sistema. Esta combinación se realiza mediante la definición de vistas, expresadas en el lenguaje Denodo VQL [VQL], sobre las relaciones exportadas por los wrappers del nivel físico. Estas relaciones, que representan a las fuentes del sistema, se denominan relaciones base (o, también vistas base). Una vez creadas las relaciones base representando las fuentes del sistema, el administrador puede crear vistas que las combinen entre sí como se desee, creando de esta manera las vistas del esquema global (o también vistas derivadas). Es importante resaltar que este proceso puede realizarse de manera recursiva en varios pasos: una vista derivada puede ser utilizada como base para la creación de nuevas vistas, permitiendo así combinaciones de complejidad arbitraria. Una vez creadas las vistas del esquema global combinando la información de las fuentes, el nivel lógico es capaz de responder consultas expresadas en VQL tanto sobre las vistas derivadas como sobre las relaciones base. El lenguaje de consultas VQL se basa en SQL, incorporando diversas extensiones para manejar información heterogénea y distribuida. Por ejemplo, VQL incluye diversas construcciones que facilitan la consulta de información no estructurada y su combinación con información estructurada. Cuando el sistema recibe una consulta, comprueba si es resoluble en función de las capacidades de consulta de las fuentes, elabora los posibles planes de ejecución, selecciona el más óptimo, y ejecuta la consulta devolviendo a la capa superior los resultados obtenidos. La capa lógica de Virtual DataPort también permite la actualización de las fuentes de datos mediante operaciones INSERT/UPDATE/DELETE, siempre que éstas sean capaces de soportar transacciones. En la capa lógica se pueden diferenciar los siguientes módulos:

  • Virtual DataPort 4.1 Guía del Administrador

    Arquitectura General 6

    • Generador de Planes de Consulta: En primer lugar, el generador de planes decide si la consulta recibida puede o no ser contestada, de acuerdo a las capacidades de consulta soportadas por las fuentes. En caso afirmativo debe generar los posibles planes de ejecución para la consulta.

    • Optimizador: Tiene como misión seleccionar el plan de ejecución óptimo de entre todos los posibles (obtenidos por el Generador de Planes de Consulta). Para ello tendrá en cuenta tanto la materialización de cada uno de los planes activados, como su complejidad. También se consideran las capacidades de consulta ofrecidas por las fuentes, de manera que se puedan delegar a las mismas las operaciones que puedan realizar localmente, obteniéndose así una ejecución más eficiente y un menor trasiego de datos a través de la red. Otros aspectos tenidos en cuenta son las estrategias de ejecución más óptimas para las operaciones de join.

    • Motor de Ejecución de Consultas: Una vez seleccionado el plan óptimo, el motor de ejecución se encarga de ponerlo en práctica, ejecutando las sub-consultas precisas sobre las fuentes e integrando los resultados obtenidos para generar la respuesta global. A su vez, el motor de ejecución tiene en cuenta qué información de las fuentes está ya precargada en el módulo de caché, de manera que se evitan accesos innecesarios a las fuentes de datos, logrando así una mayor eficiencia.

    2.2.1 Módulo de Datos: Caché

    Tal y como ya se ha comentado, Virtual DataPort dispone de un sistema (llamado módulo cache) para almacenar copias locales de los datos de las fuentes que se desee. Esta caché (también llamada warehouse) se almacena en una Base de Datos Relacional accesible vía JDBC. DataPort incluye una base de datos Apache Derby [DERBY] embebida que puede funcionar como cache sin necesidad de software adicional. También es posible utilizar para este propósito las siguientes bases de datos externas: My SQL [MYSQL] y Oracle [ORCL]. Véase el Apéndice: Drivers JDBC para consultar los formatos adecuados para los drivers JDBC incluidos /o utilizados habitualmente con la caché de DataPort. El sistema generará y mantendrá automáticamente una tabla en la Base de Datos caché por cada relación base o vista para la que la cache haya sido configurada. A medida que se vayan realizando consultas, las tablas se irán rellenando con las tuplas obtenidas de las fuentes hasta el momento. Además, cada vista mantendrá una descripción de las tuplas actualmente contenidas en la caché, de forma que el gestor pueda saber qué consultas sobre la relación son resolubles con datos disponibles localmente. Cada vista en la caché tendrá asociado un tiempo de expiración, de manera que las tuplas “caducadas” no serán consideradas en las consultas y serán borradas periódicamente de forma automática. Este mecanismo permite además realizar precargas periódicas de datos de manera muy sencilla, simplemente escribiendo una consulta describiendo los datos a precargar y planificando temporalmente la repetición de dicha consulta con el intervalo temporal deseado. La caché también puede inhabilitarse para una consulta concreta o para las relaciones o fuentes que se desee, de manera que siempre es posible acceder a la información de las fuentes en tiempo real.

    2.3 NIVEL DE USUARIO

    El nivel del usuario se ocupa de implementar la interfaz entre el usuario y el gestor Virtual DataPort. Es, por lo tanto, responsabilidad suya proporcionar los medios para que un usuario pueda establecer una sesión con el gestor, enviarle consultas y obtener los resultados correspondientes de las mismas.

  • Virtual DataPort 4.1 Guía del Administrador

    Arquitectura General 7

    El nivel del usuario recibe la consulta emitida por el usuario en el lenguaje de consultas externo VQL y la traduce a álgebra relacional antes de entregársela al nivel lógico. Cuando el nivel lógico devuelve una respuesta para la consulta efectuada, es también responsabilidad de este nivel proporcionársela al usuario a través de las interfaces de conexión definidas a tal efecto (ver Guía del Desarrollador [DEV] de Virtual DataPort). Denodo Virtual DataPort puede ser accedido vía JDBC, ODBC, a través del uso de Servicios Web (ver sección 7) y a través de la API nativa (DataPort API).

  • Virtual DataPort 4.1 Guía del Administrador

    Instalación Y Configuración Inicial 8

    3 INSTALACIÓN Y CONFIGURACIÓN INICIAL

    La Guía de Instalación de la Plataforma Denodo [DENINST] proporciona toda la información necesaria para instalar Denodo Virtual Dataport, incluyendo los requisitos mínimos de hardware y software, e instrucciones para la utilización de la herramienta de instalación y para la configuración inicial del sistema.

  • Virtual DataPort 4.1 Guía del Administrador

    Ejecución 9

    4 EJECUCIÓN

    Para arrancar y detener el servidor de Virtual DataPort, puede utilizarse:

    • El Centro de Control de la Plataforma Denodo (ver Guía de Instalación de la Plataforma Denodo [DENINST]), que permite, entre otras funcionalidades, arrancar y detener todos los servidores y herramientas de la Plataforma Denodo.

    • Ejecutar el script: $DENODO_HOME/bin/vqlserver.sh startup (vqlserver.bat startup en Windows) para arrancar el servidor. Para detener el servidor deben utilizarse los accesos directos correspondientes o bien ejecutar $DENODO_HOME/bin/vqlserver.sh shutdown (vqlserver.bat shutdown en Windows)

    Si se desea utilizar el sistema caché, debe haberse configurado correctamente en la herramienta de administración de Virtual DataPort (ver sección 5.1.3) y, en caso de utilizar un gestor de Base de datos externo para almacenar la cache, debe haberse arrancado previamente La primera vez que se ejecuta Virtual DataPort utilizando caché, se generan de forma automática las tablas necesarias para su funcionamiento. Para ejecutar la herramienta de administración de Virtual DataPort, se dispone de las siguientes opciones:

    • .Utilizar el acceso directo correspondiente en el Centro de Control de la Plataforma Denodo [DENINST].

    • Utilizar el script: $DENODO_HOME/bin/vdpadmin.sh (vdpadmin.bat o vdpadmin.exe en Windows).

    4.1 EJECUCIÓN DE LA HERRAMIENTA DE ADMINISTRACIÓN GRÁFICA DE VIRTUAL DATAPORT

    Una vez se ha ejecutado la herramienta de administración gráfica de Virtual DataPort el primer paso es autenticarse contra un servidor DataPort sobre el que se desean realizar las labores de administración (ver Figura 2). Para ello es necesario introducir la uri del servidor, un login de usuario y una contraseña. El formato de la uri del servidor es el siguiente: //nombre_maquina:puerto/base_de_datos (e.g. //localhost:9999/admin) donde:

    • nombre_maquina es el nombre de la máquina dónde reside el servidor. • puerto es el número del puerto de ejecución del servidor • base_de_datos (opcional) es la base de datos de Virtual DataPort a la que se desea conectar. Al

    instalar un servidor Virtual DataPort se crea una base de datos por defecto llamada admin.

  • Virtual DataPort 4.1 Guía del Administrador

    Ejecución 10

    Figura 2 Autenticación en la herramienta de administración

    Para más detalles sobre los conceptos de base de datos y usuario en Virtual DataPort, véase la sección 7. Si es la primera vez que accede al servidor, puede utilizar el usuario de tipo administrador creado por defecto (login de usuario “admin” con clave de acceso “admin”). Es recomendable cambiar la contraseña de este usuario la primera vez que se conecte a un servidor. Para ello, debe utilizarse la opción ‘Change password’ del menú ‘File’ de la aplicación. Es posible conectarse al servidor en dos modos: modo de administración de una base de datos y modo de administración del servidor. Al modo de administración de una base de datos se accede cuándo la uri del servidor especifica una base de datos y además el usuario utilizado no es de tipo administrador. Este modo permite gestionar las fuentes, relaciones base y vistas unificadas que forman parte de una base de datos determinada del servidor DataPort. El modo de administración del servidor está reservado a los usuarios de tipo administrador y, en este caso, no es imprescindible que la uri suministrada especifique una base de datos. Este modo permite realizar tareas tales como:

    • Crear, modificar o borrar bases de datos (ver sección 7). • Crear, modificar o borrar usuarios, así como gestionar sus priviliegios de acceso a bases de datos y vistas

    (ver sección 7). • Configurar el sistema cache (ver sección 5.1.3). • Configurar la política de “ swapping” del servidor (ver sección 6.6.3). • Configurar el pool de threads del servidor (ver sección 5.1.2). • Configurar los puertos de ejecución y parada del servidor (ver sección 5.1.1). • Configuración de opciones de internacionalización (ver sección 5.1.7).

  • Virtual DataPort 4.1 Guía del Administrador

    Ejecución 11

    Si la URI especificada incluye una base de datos y el usuario es administrador será posible realizar tanto las tareas de gestión del servidor como las de la base de datos indicada.

    4.2 DOCUMENTACIÓN Y AYUDA EN LÍNEA

    La herramienta de administración gráfica de Virtual DataPort dispone de una ayuda en línea en formato web. Para acceder a la ayuda es necesario tener conexión a Internet. Para consultar la ayuda, se debe escoger la opción “Online Help” del menú “Help”. También es posible acceder a información de ayuda contextual acerca de la pantalla actual pulsando sobre el icono ‘?’ que aparece en la parte superior derecha de cada pantalla. La ayuda en línea está organizada por temas según el índice mostrado en la parte izquierda de la pantalla de ayuda. Es posible también realizar búsquedas textuales sobre los contenidos de la ayuda haciendo uso de la pestaña “Find”. Desde el menú “Help” puede accederse también a la página del sitio web de Denodo que contiene la documentación actualizada del producto. Para ello se debe escoger la opción “Denodo Platform Documentation”.

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 12

    5 ADMINISTRACIÓN DEL SERVIDOR

    En esta sección se describen las principales opciones de administración del servidor disponibles en Denodo Virtual DataPort. En primer lugar se detalla cómo utilizar la herramienta de administración y creación visual de vistas para configurar diversos aspectos del servidor de Virtual DataPort. Posteriormente se describe cómo configurar los logs de la aplicación. Finalmente, se describe cómo exportar los metadatos del servidor para propósitos de respaldo (“backup”) y/o migración a otras instalaciones de Virtual DataPort.

    5.1 CONFIGURACIÓN DEL SERVIDOR

    Para gestionar las bases de datos, usuarios y permisos de un servidor Virtual DataPort es necesario acceder a la herramienta de administración en modo de administración de servidor, lo que implica hacerlo con un usuario de tipo administrador. Si es la primera vez que accede al servidor, puede utilizar el usuario de tipo administrador creado por defecto (login de usuario “admin” con clave de acceso “admin”). Los parámetros de configuración del servidor pueden agruparse como se indica en los siguientes apartados: puerto,

    sistema de multithreading, cache, encolado de consultas, configuración de Proxy HTTP, parámetros de “ swapping” a disco, parámetros de ejecución de procedimientos almacenados y configuración de internacionalización.

    5.1.1 Puerto

    El servidor DataPort utiliza tres números de puerto para sus comunicaciones con los clientes: el puerto de ejecución del servidor, el puerto de parada del servidor y un puerto auxiliar. Estos puertos pueden configurarse seleccionando la opción “Server Configuration – Server Port” (ver Figura 3). NOTA: En el caso de que la conexión entre los clientes y el servidor DataPort deba atravesar un cortafuegos, será necesario configurar el software del cortafuegos para permitir el acceso al puerto de ejecución y al puerto auxiliar.

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 13

    Figura 3 Configuración de puertos

    Los cambios de puerto tendrán efecto la siguiente vez que se relance el servidor de Virtual Data Port.

    5.1.2 Pool de Threads

    Tal y cómo ya se ha comentado, el motor de ejecución de consultas de Virtual DataPort opera de forma concurrente sobre las fuentes de información. La implementación de la concurrencia se lleva a cabo mediante un subsistema de multithreading, que puede configurarse a través de la herramienta de administración de Virtual Data Port. Para configurar el subsistema de multithreading de un servidor Virtual DataPort es necesario acceder a “Server Configuration - Threads Pool”. Los parámetros configurables son los siguientes:

    • Max Threads: Número máximo de threads manejados en un determinado instante de tiempo por el Pool (por defecto 300).

    • Expiration Time: Tiempo máximo que un thread no utilizado permanece en el Pool (por defecto, 600.000 milisegundos)).

    • Sleep Time: Indica cada cuanto tiempo se chequean los threads no utilizados en el Pool, para eliminar los que superen expirationTime (por defecto, 300.000 milisegundos).

    • Timeout: Tiempo máximo permitido por el Pool para la ejecución de uno de sus threads (por defecto, 600.000 milisegundos).

    • Checkout Time: Tiempo máximo que se espera por un thread libre. Si se supera este tiempo se produce una excepción (por defecto, 30.000 miliseguntos).

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 14

    Los cambios de configuración tendrán efecto de forma inmediata.

    5.1.3 Configuración de la Caché

    Tal y como ya se ha comentado, Virtual DataPort dispone de un sistema (llamado módulo cache) para almacenar copias locales de los datos de las fuentes que se desee en una base de datos JDBC. Para configurar un servidor para utilizar cache es necesario acceder a la pestaña “Server Configuration”, escoger la opción “Cache” (ver Figura 4) y marcar la opción “Cache status on”. Adicionalmente, es necesario especificar los datos para crear un DataSource JDBC (ver sección 6.3.1) para la cache. Esto involucra especificar:

    • Gestor de base de datos JDBC que se utilizará como cache. DataPort incluye una base de datos Apache Derby [DERBY] embebida que puede actuar como cache, evitando la necesidad de software adicional. Para utilizarla, debe seleccionarse la opción “Embedded Derby Server” en el seleccionable “DB Adapter”, y no será necesario rellenar más campos. También es posible utilizar una base de datos externa: en la versión actual se soportan los gestores Oracle y MySQL.

    • URI a la base de datos utilizada como cache. • Login y contraseña del usuario utilizado para acceder a la Base de datos de cache. Si se utiliza un gestor de

    base de datos externo, es necesario asegurarse de que el usuario escogido dispone de permisos de lectura y escritura en la base de datos especificada, incluyendo la creación y borrado de tablas e índices.

    • Si se marca la opción ‘Test Connection’ (recomendado), el sistema se conectará a la fuente para obtener su fabricante y número de versión. Esta información podrá ser utilizada para optimizar el acceso a la fuente en función de sus características específicas. Si no se marca esta opción, se utilizará una configuración genérica.

    • También es posible acceder a la opción ‘Pool Configuration’ para configurar los parámetros del pool de conexiones sobre la cache (ver sección 6.3.1).

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 15

    Figura 4 Configuración de cache

    Es posible también consultar y/o configurar los siguientes parámetros del funcionamiento de la cache: • Maintainer Period: especifica (en segundos) el período de ejecución de la tarea de mantenimiento de la

    cache. La tarea de mantenimiento es la encargada de realizar el borrado de entradas caducadas en la caché. Si el valor proporcionado es 0 o negativo, la tarea de mantenimiento no se ejecutará nunca.

    • Time To Live: especifica (en segundos) el tiempo de expiración por defecto de las entradas de la cache. Si se ha escogido la opción de utilizar la base de datos embebida para almacenar la cache, es posible fijar ciertos parámetros de configuración para ella mediante la opción “Embedded Derby Server Configuration”:

    • Enable Remote Access: permite que la base de datos embebida pueda ser accedida por clientes JDBC externos, además de por DataPort. Esto puede ser útil para propósitos de auditoría o monitorización.

    • Server Port: permite cambiar el puerto en el que se ejecuta la Base de Datos embebida. Una vez que la cache ha sido activada y configurada ya es posible configurar vistas del sistema para que la utilicen (ver sección 6.6.2). Por otra parte, si se desea inhabilitar la cache, basta seleccionar la opción “Cache off” en el panel “Cache” de la pestaña “Server Configuration”. Los cambios de configuración tendrán efecto de forma inmediata excepto cuando se cambie el gestor de caché, que exige reinicio del servidor. Es posible especificar una configuración de cache específica para cada Base de Datos del servidor DataPort (ver sección 8.3.2).

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 16

    5.1.4 Limitación de peticiones concurrentes

    Es posible limitar el número de peticiones que un servidor DataPort atenderá de forma concurrente. Cuando se alcance el límite, las nuevas peticiones serán encoladas y se ejecutarán de acuerdo a su orden de llegada a medida que vayan terminando peticiones previas. Limitar el número de peticiones concurrentes es muy aconsejable en entornos de carga elevada, ya que previene la degradación de las prestaciones de la máquina ante picos bruscos de peticiones. Para configurar este comportamiento, es necesario acceder a la pestaña “Server Configuration” y escoger la opción “Concurrent Requests” (ver Figura 5). Es posible configurar los siguientes parámetros:

    • Activar o desactivar la limitación de peticiones concurrentes. Si no está activada, el servidor intentará ejecutar todas las peticiones en el momento de recibirlas.

    • Número máximo de peticiones concurrentes. El servidor DataPort atenderá de forma concurrente, como máximo, el número indicado en este parámetro.

    • Número máximo de peticiones en espera. Número máximo de peticiones encoladas esperando a ser ejecutadas. Al alcanzarse este número de peticiones en espera, las nuevas peticiones serán descartadas.

    Figura 5 Configuración de peticiones concurrentes

    5.1.5 Configuración por defecto de Proxy http

    Varios tipos de DataSources en VDP pueden utilizar rutas HTTP para acceder a los datos de la fuente. Es posible configurar las preferencias de Proxy por defecto para estas conexiones accediendo a la pestaña “Server Configuration” y escogiendo la opción “HTTP Proxy” (ver Figura 6). Los parámetros que es posible configurar son: • Máquina. Nombre de la máquina que actua como Proxy.

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 17

    • Puerto. Número de puerto en el que se ejecuta el servidor de Proxy. • Login. Identificador de usuario con el que es necesario autenticarse en el Proxy. Si el Proxy no requiere

    autenticación, debe dejarse en blanco. • Contraseña. Contraseña de acceso para el usuario especificado en el parámetro anterior. Si el Proxy no

    requiere autenticación, debe dejarse en blanco. En la configuración de la ruta http utilizada por cada DataSource, es posible especificar configuraciones de Proxy distintas de la fijada por defecto. Véase la sección 6.5.1.

    Figura 6 Configuración de Proxy HTTP

    5.1.6 Configuración de los parámetros de “ swapping” a disco

    Para evitar desbordamientos de memoria, Virtual DataPort puede hacer “ swapping” a disco de los resultados intermedios generados durante el proceso de ejecución de una vista o consulta.

    Para configurar los parámetros de “ swapping” de un servidor es necesario acceder a la pestaña “Server Configuration” y escoger la opción “Swapping” (ver Figura 7).

    Para habilitar o deshabilitar el “ swapping” a nivel global deben utilizarse, respectivamente, las opciones “Swapping status on” (opción por defecto) o “ Swapping status off” .

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 18

    Figura 7 Configuración de Swapping

    Es posible también consultar y/o configurar los siguientes parámetros del funcionamiento del “ swapping” :

    • Tamaño máximo de cada resultado intermedio (megabytes). Durante la ejecución de una vista o consulta, DataPort realizará “ swapping” a disco cuando algún resultado intermedio producido durante la ejecución supere el tamaño máximo especificado en este parámetro. Como norma general, se recomienda que el valor especificado no sea mayor que la tercera parte de la memoria disponible para la máquina virtual JAVA en la que se ejecuta el servidor DataPort.

    • Tamaño máximo de los bloques escritos a disco (kbytes). Si DataPort realiza swapping de un resultado intermedio, realizará la escritura en disco utilizando bloques de, como máximo, el tamaño especificado.

    La configuración general de swapping puede también ser específica para cada Base de Datos del servidor DataPort (ver sección 8.3.2). Si el swapping está activado a nivel global, es posible activarlo y configurarlo para una vista (véase sección 6.6.3). También es posible configurarlo dinámicamente para una consulta determinada utilizando la cláusula CONTEXT de VQL (ver la Guía Avanzada de VQL [VQL]). Los cambios de configuración tendrán efecto de forma inmediata.

    5.1.7 Configuración de Parámetros de Ejecución de Procedimientos Almacenados

    DataPort permite escribir procedimientos almacenados utilizando el lenguaje JAVA (ver sección 6.7 y Guía Avanzada de VQL [VQL]). Los procedimientos almacenados pueden ejecutar sentencias en el servidor DataPort. La ejecución de dichas sentencias hace uso de diveros parámetros de configuración.

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 19

    Para modificar los parámetros de configuración de las sentencias ejecutadas dentro de un procedimiento almacenado, es necesario acceder a la pestaña “Server Configuration” y escoger la opción “Stored Procedures” (ver Figura 8).

    Figura 8 Configuración de Ejecución de Sentencias dentro de Procedimientos Almacenados

    Es posible modificar los siguientes parámetros:

    • Query Timeout: Máximo tiempo (en milisegundos) que el procedimiento almacenado esperará a que termine la ejecución de una sentencia. Si se indica el valor 0, entonces el procedimiento esperará el tiempo necesario hasta que finalice la ejecución.

    • Chunk Size: DataPort puede devolver los resultados de la ejecución de una sentencia en bloques, de forma que no es necesario esperar a que la ejecución de una consulta termine para disponer de las tuplas que ya se hayan obtenido. Este parámetro establece el número máximo de resultados que conforman un bloque. Si Virtual DataPort tiene disponibles suficientes resultados para completar un bloque, los devolverá al procedimiento almacenado sin esperar por más resultados. Los siguientes resultados se devolverán en nuevos bloques. Si no se especifica (o recibe el valor 0), entonces todos los resultados de la consulta se devolverán en un único bloque.

    • Chunk Timeout: Este parámetro establece el máximo tiempo (en milisegundos) que el servidor esperará antes de devolver un nuevo bloque. Si se sobrepasa este tiempo, Virtual DataPort devolverá el bloque actual, incluso aunque no se haya alcanzado el número de tuplas especificado en el parámetro Chunk Size. Si no se especifica (o recibe el valor 0), el servidor devuelve todos los resultados conjuntamente al finalizar la ejecución de la sentencia.

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 20

    5.1.8 Configuración de Internacionalización por defecto

    La configuración de internacionalización del servidor DataPort especifica aspectos tales como zonas horarias, lenguajes o monedas. Por ejemplo, la moneda que se utilizará por defecto en los valores de tipo Money viene especificada por esta propiedad. DataPort incluye configuraciones de internacionalización típicas y, además, permite la creación de nuevas configuraciones ad-hoc. Véase la Guía Avanzada de VQL [VQL] para más información. Es posible también especificar una configuración de internacionalización específica para cada Base de Datos del servidor DataPort (ver sección 8.3.2). También es posible especificar una configuración de internacionalización distinta para una relación base del sistema (ver sección 6.6.1). Por último, la herramienta de administración gráfica de DataPort tiene también su propia configuración de internacionalización, que puede cambiarse en el menú “View-Preferences”.

    5.2 CONFIGURACIÓN DE LOGS

    El software Virtual DataPort hace uso del sistema de log de Jakarta-log4j[LOG4J]. Este sistema permite controlar los mensajes de log con distintos niveles de granularidad, y es totalmente configurable haciendo uso de ficheros de configuración externos. Para modificar el fichero de configuración de log es necesario tener algún conocimiento acerca de log4j. Brevemente, Log4j permite definir una serie de categorías sobre las que especificar el nivel de log de forma independiente. Log4j define diferentes niveles de log que, ordenados de mayor a menor nivel de detalle son: DEBUG, INFO, WARN, ERROR y FATAL. NOTA: En sistemas en producción es recomendable utilizar un nivel de log ERROR. Niveles inferiores degradan el rendimiento del sistema y sólo son aconsejables para tareas de depuración. Por defecto, los logs del servidor Virtual DataPort aparecen en la ruta DENODO_HOME/logs/vdp donde DENODO_HOME se refiere a la ruta base de instalación) y los de la herramienta de administración en DENODO_HOME/logs/vdp-admin. En en la ruta DENODO_HOME/conf/vdp se encuentra el fichero de configuración de logs log4j.xml del servidor DataPort. Este fichero es conforme a Log4j. Entre otras posibilidades, se permite modificar la ruta donde se almacenan los ficheros de log y el nivel de log de las categorías definidas en la aplicación. Para más información, véase la documentación de Log4j. La herramienta de administración de DataPort también posee un fichero de configuración log4j.xml en la ruta DENODO_HOME/conf/vdp-admin

    5.3 EXPORTACIÓN / IMPORTACIÓN DE METADATOS DEL SERVIDOR

    Desde el menú “File” de la herramienta de administración gráfica de Virtual DataPort, puede utilizarse la opción “Export …” para exportar todos los metadatos del servidor a un fichero VQL. Se exportarán los metadatos de todas las bases de datos del servidor, junto con sus usuarios y los permisos sobre las mismas. Para hacer uso de esta opción, el usuario debe ser de tipo administrador. Ejecutando el fichero VQL obtenido, podrán recrearse totalmente los metadatos del servidor DataPort en su estado en el momento de la exportación. Esta funcionalidad es especialmente útil para propósitos de respaldo (“backup”) y/o migración a otras instalaciones de Virtual DataPort.

  • Virtual DataPort 4.1 Guía del Administrador

    Administración del Servidor 21

    También es posible exportar solamente los metadatos de la base de datos activa utilizando la opción “Export Database”. En este caso, es suficiente con tener permisos sobre la base de datos a exportar. La exportación de una base de datos puede realizarse también desde su pantalla de configuración (ver sección 8.3.2). DataPort también proporciona scripts para programar la realización de copias de respaldo automáticas (ver sección 10.3). Para importar los metadatos exportados, basta con ejecutar en el servidor el fichero VQL obtenido durante la exportación. Esto puede hacerse utilizando la utilidad VQL Shell de la herramienta de administración de DataPort (ver sección 6.4.9.1) o utilizando el script de importación incluido con las utilidades para realizar y restaurar copias de respaldo (ver sección 10.3). Se aconseja fuertemente que la importación de metadatos en un servidor DataPort se realice siempre en modo single user (ver Guía Avanzada de VQL[VQL]).

  • Virtual DataPort 4.1 Guía del Administrador

    Creación Visual de Vistas 22

    6 CREACIÓN VISUAL DE VISTAS

    En esta sección se describe cómo utilizar la herramienta de administración gráfica de Virtual DataPort para crear gráficamente vistas unificadas de datos procedentes de diversas fuentes heterogéneas. Como guía en la descripción del proceso utilizaremos el siguiente ejemplo: Ejemplo: Información unificada de incidencias y ventas de clientes. Una operadora de telecomunicaciones ofrece, entre otros, servicios de telefonía e Internet a sus clientes. La información sobre las incidencias notificadas en el servicio de telefonía se encuentra en una base de datos relacional que es accedida a través de JDBC. La información sobre las incidencias notificadas en el servicio de Internet se encuentra almacenada en otra base de datos relacional accedida también a través de JDBC. En nuestro ejemplo, el jefe del departamento de sistemas desea realizar un seguimiento del número de incidencias (ya sea de telefonía o Internet) notificadas por los clientes con mayor volumen de ventas, con el objetivo de detectar si es necesario tomar medidas para incrementar la satisfacción de los mismos. La información sobre el volumen de ventas de los clientes es gestionada por otro departamento de la operadora. Dicho departamento ofrece al resto de departamentos una interfaz Web Service para acceder a dicha información. En este ejemplo veremos cómo Virtual DataPort puede utilizarse para construir una vista unificada de datos que permita solucionar la necesidad del departamento de sistemas, permitiendo obtener el número total de incidencias de los clientes con mayor volumen de ventas. En la ruta DENODO_HOME/samples/vdp/incidences se encuentran scripts SQL para la creación en MySQL 4.1 y Oracle 9.0.1 de las tablas utilizadas en el ejemplo. También se incluye un fichero WSDL con la descripción del servicio web utilizado, así como un fichero .war con una implementación del mismo que ha sido probado con Tomcat 5.x [TOM]y Axis 1.x [AXIS].

    6.1 ACCESO A LA HERRAMIENTA GRÁFICA DE ADMINISTRACIÓN

    El primer paso es acceder a la herramienta en modo de administración de una base de datos (ver sección 4.1). Si no ha creado aún una base de datos propia y usuarios propios (véase sección 7), puede utilizar la base de datos (llamada admin) y el usuario (admin) creados por defecto al instalar un servidor DataPort. Para la realización de las acciones que se estudiarán a lo largo del ejemplo, es necesario haber accedido a la herramienta con un usuario con privilegios suficientes sobre la base de datos de Virtual DataPort sobre la que se está trabajando (ver sección 7). Los usuarios de tipo administrador (como el usuario por defecto admin) disponen de todos los privilegios.

    6.2 CREACIÓN Y MANEJO DE PROYECTOS

    Los diferentes componentes (datasources, relaciones base y vistas) que pueden crearse mediante la herramienta de administración de DataPort se agrupan en proyectos.

    Al iniciar la herramienta por primera vez sólo existirá un proyecto llamado ‘ Default’ . Para crear un nuevo proyecto debe seleccionarse la pestaña ‘ Project Management’ y pulsar en la opción ‘ new’ (ver Figura 9).

  • Virtual DataPort 4.1 Guía del Administrador

    Creación Visual de Vistas 23

    En esta pantalla se debe especificar un nombre para el proyecto y, opcionalmente, una descripción del mismo. Al

    pulsar ‘ ok’ se creará el nuevo proyecto. En nuestro ejemplo crearemos un nuevo proyecto al que llamaremos ‘VDPExample’ .

    Figura 9 Creación de un Nuevo proyecto

    Puede editarse un proyecto haciendo click sobre el nombre del mismo en el menú desplegable de la parte izquierda

    de la pantalla o borrarse haciendo uso de la opción ‘ drop’ . Si se elimina un proyecto, los elementos que contenga se mueven automáticamente al proyecto ‘ default’ . NOTA: estos proyectos sólo existen en la herramienta cliente utilizada para crearlos.

    6.2.1 Cambiar elementos a otros proyectos

    Tal y como se verá en apartados posteriores, al crear un nuevo datasource o una nueva vista, el nuevo elemento creado podrá ser asignado a uno de los proyectos existentes. Si más adelante se desea mover el elemento a otro proyecto, deben realizarse las siguientes acciones:

    1. Desplegar los menús de la izquierda de la pantalla hasta localizar el elemento deseado. Los datasources estarán accesibles desde la pestaña ‘ Data Sources’ mientras que las vistas lo estarán desde la pestaña ‘ Query Builder’ .

    2. Hacer click con el botón derecho del ratón sobre el elemento que se desea mover y utilizar la opción ‘Move to Project’ para seleccionar el proyecto destino.

  • Virtual DataPort 4.1 Guía del Administrador

    Creación Visual de Vistas 24

    6.3 IMPORTACIÓN DE DATASOURCES Y CREACIÓN DE RELACIONES BASE

    El primer paso para la realización de nuestro ejemplo es la importación de las fuentes involucradas y la creación de las relaciones base (también llamadas vistas base) que representarán dentro de DataPort la información necesaria para la construcción de las vistas unificadas. Para realizar estas tareas es necesario acceder a la pestaña ‘Data Sources’ de la herramienta de administración. Comenzaremos viendo cómo importar fuentes de tipo ‘Base de datos’ lo que nos permitirá importar las bases de datos de incidencias de nuestro ejemplo (sección 6.3.1). Posteriormente se tratará el caso de la importación de fuentes de tipo Web Service (sección 6.3.2), lo que en nuestro ejemplo nos servirá para importar la información sobre ventas. La sección 6.3.3 describe como eliminar fuentes de datos una vez añadidas. Las diferencias con la importación de otros tipos de fuentes de datos, así como determinados aspectos avanzados, se tratarán más adelante en la sección 6.4.11. Una vez añadidas las fuentes de datos, se tratará la creación de relaciones base desde las mismas. En la sección 6.3.4 se trata de la creación de relaciones base desde fuentes de tipo Base de Datos, mientras que en la sección 6.3.6 se aborda el caso de la creación de relaciones base desde Web Services. El caso de otros tipos de fuentes, así como determinados aspectos avanzados, será comentado más adelante en la sección 6.4.11.

    6.3.1 Importación de Fuentes de tipo JDBC

    Para crear una nueva fuente de datos (DataSource) es necesario acceder a la pestaña “Data Sources” en la parte izquierda de la herramienta. Al hacerlo aparecerá una lista de los proyectos creados y debe hacerse click sobre el

    proyecto al que desea añadirse la nueva fuente. En nuestro ejemplo, seleccionaremos el proyecto ‘ VDPExample’ que hemos creado anteriormente. A continuación, podrá desplegarse el menú “Relational DBs”. Al desplegarse dicho menú, aparecerá la lista de bases de datos externas añadidas actualmente como fuentes en la base de datos de Virtual DataPort clasificadas en función de si el acceso a la misma se realiza a través de JDBC o de ODBC. Para añadir una nueva base de datos JDBC a la lista es necesario hacer click en la opción ‘New’ que aparece al lado de la lista de bases de datos JDBC. Se accederá entonces a la pantalla de creación de una nueva fuente de datos de este tipo (ver Figura 10). En esta pantalla se solicitarán los siguientes datos:

    • Nombre con el que se denominará a la fuente de datos (Data Source) dentro de Virtual DataPort. En nuestro ejemplo, al añadir la base de datos de incidencias del servicio de teléfono podemos utilizar el nombre phone_center. Al añadir la base de datos de incidencias del servicio de Internet podemos utilizar el nombre internet_center.

    • Adaptador de base de datos. En este seleccionable es posible escoger uno de los gestores de bases de datos para los que DataPort incluye un adaptador. También se incluye un adaptador “Generic” que puede utilizarse con los gestores JDBC para los que no existe un adaptador específico. Los adaptadores específicos permiten diversas optimizaciones en el acceso a cada gestor, por lo que es preferible utilizarlos cuando sea posible. Si se marca la opción “Choose automatically” (recomendado), DataPort escogerá automáticamente el adaptador a utilizar mediante una conexión a la base de datos. Al seleccionar un adaptador, se rellenarán de forma automática los dos campos siguientes con sus valores correctos (Ruta al

    fichero .jar y nombre de la clase del driver JDBC) y el campo “ Uri de acceso” se rellenará con una “plantilla” para la uri de conexión al gestor seleccionado. En el Apéndice: Drivers JDBC se listan los drivers JDBC incluidos y/o utilizados habitualmente con DataPort.

    • Ruta al fichero .jar que contiene el driver JDBC a utilizar (opcional). En caso de que se vaya a utilizar un driver JDBC que no venga incluido con DataPort, este campo permite especificar una librería .jar

  • Virtual DataPort 4.1 Guía del Administrador

    Creación Visual de Vistas 25

    externa que contenga el driver deseado. Si no se especifica, se deberá utilizar un driver disponible en el CLASSPATH actual del servidor DataPort.

    • Nombre de la clase del Driver JDBC a utilizar. Por ejemplo, para una base de datos MySQL podría utilizarse típicamente el valor com.mysql.jdbc.Driver. Véase el Apéndice: Drivers JDBC para consultar los detalles acerca de los drivers JDBC incluidos y/o utilizados habitualmente con DataPort.

    • Uri de acceso a la base de datos. En nuestro ejemplo suponiendo que se utiliza una base de datos MySQL donde la base de datos de incidencias se llama phone_center, y que esta se encuentra en la máquina acme escribiríamos: jdbc:mysql://acme/phone_center. Véase el Apéndice: Drivers JDBC para consultar los formatos adecuados para los drivers JDBC incluidos /o utilizados habitualmente con DataPort

    • Login de usuario para acceso a la base de datos externa. • Contraseña del usuario para el acceso a la base de datos externa. • Si se marca la opción ‘Choose automatically’ (recomendado), el sistema se conectará a la base de datos

    para obtener automáticamente el adaptador más adecuado. Si se marca esta opción, también se selecciona automáticamente la opción “Test Connection”.

    • Finalmente, si se marca la opción ‘Test Connection’, el sistema efectuará una conexión de prueba a la fuente. Esto permite comprobar que la base de datos está accesible para el servidor DataPort.

    Figura 10 Importación de una Fuente de Datos JDBC

    Opcionalmente es posible utilizar la opción ‘Driver Properties’ para añadir propiedades (pares campo-valor) que se añadirán a la URI de conexión. También puede accederse también a la opción “Connections Pool Configuration” para configurar diversos parámetros del pool de conexiones que Virtual DataPort utilizará para optimizar el acceso a la base de datos externa (ver Figura 11). Los parámetros que pueden ser configurados son:

  • Virtual DataPort 4.1 Guía del Administrador

    Creación Visual de Vistas 26

    • Initial Size: Número de conexiones con las que se desea inicializar el pool. Se establecen y crean un número de conexiones en estado “idle” (ociosas), listas para ser utilizadas.

    • Max Active: Número máximo de conexiones activas que puede gestionar el pool al mismo tiempo (cero implica sin límite).

    • Ping Query: Consulta SQL utilizada por el pool para verificar el estado de las conexiones que se encuentran cacheadas. Es preciso que la consulta consuma pocos recursos en la base de datos y exista la tabla en cuestión.

    • Test Connection: Si se activa esta propiedad y se ha especificado una ping query, cada conexión que se recupera del pool de conexiones es validada mediante la ejecución de la ping query.

    NOTA: A partir de la versión 3.5 de Virtual DataPort, el resto de parámetros que eran configurables en versiones anteriores han dejado de serlo. Para nuestro ejemplo, dejaremos todos los parámetros con su valor por defecto para ambas bases de datos.

    Figura 11 Configuración del Pool de conexiones JDBC

    Una vez que se pulse el botón ‘Ok’ en la pantalla de creación de la fuente de datos, ésta aparecerá ya en la lista mostrada en el menú de la parte izquierda de la pantalla.

    6.3.2 Importación de Fuentes de Tipo Web Service

    Siguiendo con nuestro ejemplo, el siguiente paso es añadir la fuente de datos (Data Source) que nos permite acceder a la información de ventas. Tal y cómo se ha comentado, esta fuente es de tipo Web Service. Para crear una nueva fuente de datos (DataSource) representando a un Web Service es necesario acceder a la pestaña “Data Sources”, y tras seleccionar el proyecto al que deseamos añadir la nueva fuente (VDPExample, en

  • Virtual DataPort 4.1 Guía del Administrador

    Creación Visual de Vistas 27

    nuestro ejemplo), hacer click en la opción ‘New’ que aparece al lado de la lista de Web Services actuales. Se accederá entonces a la pantalla de creación de una nueva fuente de datos de tipo Web Service (ver Figura 12). En esta pantalla se solicitarán los siguientes datos:

    • Nombre con el que se denominará a la fuente de datos dentro de Virtual DataPort. En nuestro ejemplo, al añadir el servicio web de ventas podemos utilizar el nombre sales.

    • Ruta al fichero WSDL conteniendo la especificación del servicio web. En nuestro ejemplo, la ruta podría ser $DENODO_HOME/samples/vdp/incidences/sales.wsdl. También es posible especificar una URL http.

    • En caso de que el acceso al servicio web requiera autenticación, debe indicarse el identificador de usuario y contraseña a utilizar, así como el protocolo de autenticación utilizado. DataPort soporta dos modos de autenticación en Servicios Web:

    o HTTP. Se utilizará autenticación http en modo básico [HTTP-AUTH]. o WSS. WSS (Web Services Security) [WSS] es una norma para la implementación de

    funcionalidades de seguridad en aplicaciones basadas en el uso de Servicios Web. WS-Security ofrece un mecanismo para asociar contenido con información de seguridad. Actualmente, DataPort soporta el perfil de autenticación llamado “Username Token” [WSS-UT].

    • Si el acceso se realiza a través de un Proxy, debe especificarse el nombre de la máquina y el puerto donde se ejecuta el servidor Proxy. Si el Proxy es autenticado, deberán especificarse también un identificador de usuario y una contraseña válidos. También es posible utilizar la configuración de Proxy http por defecto (ver sección 5.1.5) marcando la opción “Default”.

    Figura 12 Importación de una fuente de datos de tipo Web Service

  • Virtual DataPort 4.1 Guía del Administrador

    Creación Visual de Vistas 28

    6.3.3 Eliminación de una fuente de datos

    Una vez que se ha añadido una fuente de datos es posible eliminarla haciendo clic en la opción ‘drop’ que aparece al lado de la fuente en la lista del desplegable DataSources. Si existen otros elementos del catálogo de DataPort (e.g. vistas) que dependen de la fuente, se mostrará un mensaje al usuario avisando de que el borrado se realizará en cascada. Si el usuario decide proseguir con la operación, los elementos dependientes del datasource serán también eliminados. Si el usuario que está realizando la operación no dispone de los permisos adecuados sobre todos los elementos involucrados, la operación de borrado fallará

    6.3.4 Creación de Relaciones Base partiendo de una Base de Datos

    Una vez añadida una fuente de datos al sistema es posible crear relaciones base desde ella. Para ello, debe pulsarse sobre la fuente de datos en la lista de la parte izquierda de la pantalla, accediendo así a los contenidos de la misma. En el caso de fuentes de tipo base de datos, al realizar esta acción se mostrará un árbol con los diversos esquemas de los que consta la base de datos externa, permitiendo ver también las tablas de las que consta así cómo los campos que componen las mismas (ver Figura 13).

    Figura 13 Esquemas y tablas de una fuente JDBC

    Al lado de cada tabla de la base de datos externa aparece la opción ‘Create base view’. Si se pulsa este botón, el sistema generará automáticamente el esquema de una relación base a partir de la tabla seleccionada y se mostrará al usuario (ver Figura 14). Si se desea, es posible modificar en este momento el nombre de la relación base, y el

    nombre y el tipo de los atributos que la componen. Mediante el seleccionable ‘ Target Project ’ puede especificarse el proyecto al que desea asignarse la nueva vista. En nuestro ejemplo, seleccionaremos el proyecto ‘VDPExample’. Para crear la vista base, basta pulsar ‘ok’. Si se desea crear la vista base e importar una nueva del

  • Virtual DataPort 4.1 Guía del Administrador

    Creación Visual de Vistas 29

    mismo datasource, puede pulsarse ‘Ok and import new view’, lo cuál creará la vista y volverá a la pantalla donde se muestra el árbol con los distintos esquemas y tablas de la base de datos externa. Una vez aceptado su esquema, la nueva relación base podrá verse en la parte izquierda de la pantalla colgando de la fuente (base de datos, en este caso) a la que pertenece la tabla utilizada. En nuestro ejemplo crearemos una relación base para la tabla phone_inc de la base de datos de telefonía y otra para la tabla internet_inc de la base de datos de Internet. phone_inc permite acceder a los datos de las incidencias registradas en el servicio de telefonía. Incluye campos que representan el CIF del cliente (taxId) que ha notificado la incidencia, un identificador de incidencia (pinc_id), una descripción de la misma (description), el momento temporal en el que se produjo (time), un tipo de incidencia (inc_type) y un campo específico adicional (specific_field3). Los atributos de interne