Download Bases de Datos: Teoría General y Aplicaciones - U
Document related concepts
Transcript
IN60E – Aplicaciones de Bases de Datos en la Empresa y Minería de Datos Otoño 2008 Bases de Datos: Teoría General y Aplicaciones Universidad de Chile Departamento de Ingeniería Industrial Profesor: Richard Weber (rweber@dii.uchile.cl) Prof. Auxiliar: Gastón L’Huillier (glhuilli@dcc.uchile.cl) 1 Motivación Bases de Datos permiten almacenar datos Datos son utilizados para la generación de Información Información utilizada para generar conocimiento. Aplicaciones de Bases de Datos en la Empresa. Minería de Datos. Proceso KDD. IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 2 Historia – Bases de Datos 1963 – Primera vez utilizado el termino Bases de Datos. 1970 – E.F. Codd propone modelo Entidad – Relación 1974 – IBM desarrolla las bases del lenguaje SQL 1979 – Primeras BD comerciales (Oracle, IBM) 1989 – PostgreSQL (Universidad de California, Berkley) 1995 – MySQL (Suecia) ‘90s – Bases de datos Orientadas a Objetos, Espaciales ‘90s – Knowledge Discovery in Databases (KDD) IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 2000s – Bases de datos XML, VLDBs, SOA, Grid 3 Definiciones Base de Datos: “Un conjunto lógicamente coherente de datos relacionados, construido para una cierta aplicación”. Sistema Administración de Bases de Datos (SABD): “Software que permite a las bases de datos ser definidas, construidas y operarlas”. Diagrama Entidad – Relación (ER): Modelo lógico de la base de datos para representar información de manera estructurada. Structured Query Language (SQL): Lenguaje de consulta estructurado para interactuar con la BD. IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 4 Diagrama Entidad – Relación Representación conceptual de datos estructurado mediante Entidades y Relaciones. Para implementar un modelo ER es necesario: o o Requerimientos del sistema usuario, en cuanto a las salidas, entradas y transformaciones de contenido. Parámetros clave de búsqueda, ordenamiento, tiempos de respuesta (estructura física del modelo). IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 5 Lenguaje de consulta SQL Permite obtener cualquier conjunto de datos presentes en una base de datos relacional mediante una sentencia. SELECT [DISTINCT | ALL] {* | [column_expression [AS new_name]] [,...] } FROM table_name [alias] [, ...] FROM Especifica las tablas que se usaran [WHERE condition] WHERE Establece los filtros. [GROUP BY column_list] SELECT Especifica las columnas que se [ HAVING condition] consultaran. [ORDER BY column_list] GROUP BY Permite agrupar los datos. HAVING Permite generar filtros sobre los grupos de datos. ORDER BY Especifica el orden de los datos. IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 6 ACID – Control de concurrencia en BDs Atomicidad: o Consistencia: o Los datos son consistentes antes que una transacción se inicie, y la transacción siempre abandona los datos en un estado consistente. Aislamiento (Isolation): o Grupo lógico de una o más sentencias de una operación indivisible o atómica. (i.e. Se realizan todas las sentencias o no se realiza ninguna). Transacciones son invisibles para las demás transacciones. Durabilidad: o Después que la transacción se ejecute, los efectos que causa en la base de datos persiste, aún así si el sistema falla (caídas de sistema). IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 7 …en las Empresas: Escenario Actual [1] Application Screen Scrape Application Download File Application Message Queue Sockets Transaction File Application Sockets RPC Application ORB Screen Scrape Screen Scrape Transaction File CICS Gateway Download File Application Message Application Transaction File Application ORB APPC Application Message Queue Application Transaction File Message Queue CICS Gateway Screen Scrape Message Download File APPC IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 RPC 8 …en las Empresas: Escenario Actual [2] BDs interactúan sin excepciones con todos los departamentos y áreas dentro de las empresas. Marketing Toda transacción realizada en una Proyectos empresa queda registrada en algún tipo de BD. Finanzas RRHH Concepto de BD es más amplio que un SABD relacional. Ventas Ordenes Servicios Producción Cadena de Suministro IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 Compras 9 Bases de datos Operacionales: On Line Transactional Processing (OLTP) Operaciones transaccionales del día a día. Responden a la gran cantidad de transacciones presentes en las empresas. Transacciones cortas de poca información. Aplicaciones Ejemplos: o o o o o o Files Excel, XML Enterprise Resource Planning (ERPs) Manufacturing Resource Planning (MRPs) Portales y aplicaciones Web (miles o millones de usuarios cada día) Transacciones Bancarias (Instituciones Financieras) Interacción con Puntos de Ventas (POS) OLTP integrados con Web Services (SOA) IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 10 OLTP en Instituciones Bancarias Coordinación de transacciones en cajeros automáticos como depósitos, transferencias, saldos y retiros de dinero. Pagos en supermercados con tarjetas de débito o crédito. Compras de productos o mercadería a través de internet. IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 11 OLTP en Retail y Tiendas Comerciales Coordinación de la información en Puntos de Venta (POS) Integración de sitios E-Commerce y POS con bodegas Interacción transaccional con bancos e instituciones financieras (Redbank, VISA, MasterCard). IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 12 OLTP, Web Services y SOA Sistemas operacionales integrados con Web Services (WS). SOA: Arquitectura Orientada a los Servicios. Orquestación de WS permite integrar servicios que proveen distintas empresas Caso MapCity y servicios logísticos Caso crédito bancario. Otros ejemplos: o o o Sinacofi Publiguías Dicom IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 13 Aplicaciones[1]: Grid Computing Alta disponibilidad al distribuir el almacenamiento en varios puntos dentro de la grilla. Mayor capacidad de procesamiento al integrar distintos servidores para realizar operaciones. Computación distribuida. Storage Grid Database Grid IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 14 Aplicaciones[1]: Grid Computing Ejemplos: o Real Application Cluster (Oracle) • o DeRemate.com Sistemas 24x7 – Instituciones financieras Computación Distribuida o SETI@home (Search for Extraterrestrial Intelligence) • o TSP distribuido (instancia de 48 ciudades) • o http://seti.astroseti.org/setiathome/ http://bob.myisland.as/tsp/ Rossetta@home (Funciones y Estructuras de Proteínas) • http://boinc.bakerlab.org/rosetta/ IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 15 Aplicaciones[2]: Bases de datos XML XML: Extensible Markup Languaje Permite integrar de manera natural distintos sistemas presentes en las empresas, mejorando la compatibilidad entre aplicaciones. Utilizado actualmente en gran cantidad de empresas disminuyendo complejidad de comunicación entre sistemas. IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 16 Aplicaciones[4]: VLDBs VLDBs: “Very Large Data Bases”. Manejo de grandes volúmenes de información (Información > 10 TB). Aplicaciones: o Costanera Norte (Intelligent Transport Systems) • o ALMA Project • o http://www.alma.nrao.edu/ NCBI – Genomas varios • o Manejo de imágenes ( flujo > 5 TB diarios) http://www.ncbi.nlm.nih.gov/sites/gquery Google IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 17 Aplicaciones[5]: Knowledge Discovery in Databases (KDD) IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 18 Aplicaciones[6]: Data Warehousing IN60E – Aplicaciones de Bases de Datos para la Empresa y Minería de Datos - Otoño 2008 19