DUODECIMO 2015
Anabel Moreno J.
APLICACIONES CON BASE DE DATOS BACHILLERATO EN TECNOLOGÍA INFORMÁTICA Facilitador: Lic. Anabel Moreno J.
Grupo: XII C
Fecha: del 9 al 20 de marzo
Resumen #1
Introducción “Son sistemas de información interactivos, que se basan en el computador y que utilizan modelos de decisión y base de datos especializadas para apoyar los procesos de toma de decisiones…” (James O´ Brien. 2003). Un sistema de información es un conjunto de componentes que se unen e interactúan entre sí para formar un todo en base a un mismo objetivo. Es importante que todos los componentes estén interrelacionados entre sí para que todo el sistema pueda funcionar. Al desarrollar un Sistema de Información, se utiliza una metodología que permita la aplicación de procedimientos lógicos, procesos creativos desarrollados a través de una serie de fases o de los siguientes pasos: Definición: Requiere que el problema sea definido y comprendido claramente para que pueda ser analizado con todo detalle. Análisis: Una vez definido el problema se deberán organizar los datos de tal manera que sean susceptibles de usar en los cálculos siguientes. Diseño: Se proponen soluciones a los problemas a resolver, por lo que se realiza una toma de decisiones aplicando los conocimientos adquiridos y utilizando los datos existentes. Codificación: La solución se escribe en la sintaxis del lenguaje de alto nivel y se obtiene un programa. Depuración: El programa se actualiza y modifica cada vez que sea necesario, se comprueba rigurosamente y se eliminan todos los errores que puedan aparecer. Mantenimiento: de acuerdo a la necesidad de los usuarios finales. En el Diseño del sistema, es particularmente importante el tema Bases de Datos en la etapa de diseño del desarrollo de un sistema de información, debido a que la misma comprende el diseño de: Procedimientos precisos de captura de datos Formularios y pantallas para ingresar datos Interfaz con el usuario (mensajes, menús, uso del ratón o mouse, etc.) Base de datos que almacenará aquellos datos requeridos por quien toma las decisiones en la organización. Salidas del sistema impresas y en pantalla (consultas, listados, etc.).
Origen de las base de datos (BD) Desde tiempos remotos los datos han sido registrados por el hombre en algún tipo de soporte (piedra, madera, papel, cintas magnéticas, discos, etc.) debido a su importancia los datos tomaban la categoría de información útil, la cual debía ser administrada de manera responsable y eficaz. Las "base de datos" (BD) son una herramienta indispensable en la actual sociedad de la información, su utilidad no sólo se debe a que es un conjunto de datos almacenados de alguna forma determinada, en una BD también existen una cantidad de elementos que ayudan a organizar sistemáticamente, relacionar, proteger, y administrar de manera eficiente los datos. Antes que aparezcan los conceptos actuales de BD, y las herramientas que permiten su eficaz y correcta administración, los datos se almacenaban en los llamados archivos planos los cuales no tenían estructura, sólo se conocían los campos y registros o filas y columnas. El origen de las BD se da frente a la necesidad de almacenar grandes cantidades de información para su posterior consulta. Breve desarrollo histórico 1950: Uso de las cintas magnéticas, las cuales son un tipo de medio o soporte de almacenamiento de información que se graba en pistas sobre una banda plástica con un material magnetizado, generalmente óxido de hierro. 1960: Uso de los discos, este soporte podía consultar la información directamente, sin la necesidad de saber dónde estaban los datos en el disco. Nace el modelo de base de datos Jerárquica, el cual enlaza los registros en forma de estructura de árbol. También se desarrolla el modelo de base de datos de Red, en el cual la principal diferencia era que un nodo tenga varios padres. 1970: Edgar Frank Codd, da los conceptos de las Base de Datos Relacionales, que se basan en relaciones las cuales se podían considerar en forma lógica como Tuplas, propuestos en "Las doce reglas de Codd", diseñado para definir qué requiere un sistema de administración de base de datos, a partir de estos aportes se desarrolló la base de datos Oracle. El lenguaje más habitual para las consultas a base de datos relacionales es el SQL. 1980: Las base de datos relacionales logran posicionarse en el mercado de base de datos con sus sistema tablas, filas, columnas, además se dan diversas investigaciones paralelas como las base de datos orientada a Objetos Siglo XXI: actualmente las bases de datos tienen una amplia capacidad de almacenamiento y están orientadas a que cumplan con el protocolo establecido, los cuales permiten el almacenamiento de gran cantidad de datos que tengan mayor visibilidad y fácil acceso.
1. DEFINICIÓN DE BASE DE DATOS “Base de Datos es un conjunto de datos relacionados entre sí y que tienen un significado implícito”. Ramez Elmasri y Shamkant B. Navathe “Base de datos es un almacenamiento de datos formalmente definido, controlado centralmente para intentar servir a múltiples y diferentes aplicaciones. La base de datos es una fuente significativa de datos que son compartidos por numerosos usuarios para diversas aplicaciones”. Kendall y Kendall Una base de datos o banco de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En este sentido; una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta. Actualmente, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital, siendo este un componente electrónico, y por ende se ha desarrollado y se ofrece un amplio rango de soluciones al problema del almacenamiento de datos. Las bases de datos son importantes para la toma de decisiones y para ejercer acciones, actualmente se pueden considerar a los programas informáticos como entes que manipulan datos (Sistemas operativos, sgbd, etc.), otras definiciones: Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada. Un sistema de base de datos es una colección de archivos interrelacionados. 1.1 TIPOS DE BASES DE DATOS Las bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto que se esté manejando, o la utilidad de la misma. Por ejemplo: 1.1.1 Bases De Datos Estáticas: Estas son bases de datos de solo lectura, utilizadas primordialmente para almacenar datos históricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del tiempo, realizar proyecciones y tomar decisiones. 1.1.2 Bases De Datos Dinámicas: Estas son bases de datos donde la información almacenada se modifica con el tiempo, permitiendo operaciones como actualización, borrado y adición de datos, además de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de información de un supermercado, una farmacia, un videoclub o una empresa. 1.2 MODELOS DE BASES DE DATOS Un modelo de datos es básicamente una "descripción" de algo conocido como contenedor de datos (algo en donde se guarda la información), así como de los métodos para almacenar y recuperar información de esos contenedores. Los modelos de datos no son cosas físicas: son abstracciones que permiten la implementación de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos matemáticos. Se pueden clasificar de acuerdo a su modelo de administración de datos: 1.2.1. Bases De Datos Jerárquicas: Éstas son bases de datos que, como su nombre indica, almacenan su información en una estructura jerárquica. En este modelo los datos se organizan en una forma similar a un árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos. El nodo que no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento. Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.
1.2.2. Base De Datos De Red: Este es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerárquico). Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa administrar la información en una base de datos de red ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales. 1.2.3. Bases De Datos Transaccionales: Son bases de datos cuyo único fin es el envío y recepción de datos a grandes velocidades, estas bases son muy poco comunes y están dirigidas por lo general al entorno de análisis de calidad, datos de producción e industrial, es importante entender que su fin único es recolectar y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicación de información no es un problema como con las demás bases de datos, por lo general para poderlas aprovechar al máximo permiten algún tipo de conectividad a bases de datos relacionales. 1.2.4. Bases De Datos Relacionales: Éste es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Su idea fundamental es el uso de "relaciones". Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados "tuplas". Esto es pensando en cada relación como si fuese una tabla que está compuesta por registros (las filas de una tabla), que representarían las tuplas, y campos (las columnas de una tabla). En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable ventaja de que es más fácil de entender y de utilizar para un usuario esporádico de la base de datos. La información puede ser recuperada o almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la información. Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como normalización de una base de datos. 1.2.5. Bases De Datos Multidimensionales: Son bases de datos ideadas para desarrollar aplicaciones muy concretas, básicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos relacional podría serlo también en una base de datos multidimensional), la diferencia está más bien a nivel conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla, o bien representan métricas que se desean estudiar. 1.2.6. Bases De Datos Orientadas a Objetos: Este modelo, bastante reciente, y propio de los modelos informáticos enfocado a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento). Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos: Encapsulación - Propiedad que permite ocultar la información al resto de los objetos, impidiendo así accesos incorrectos o conflictos. Herencia- Propiedad a través de la cual los objetos heredan comportamiento dentro de una jerarquía de clases. Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos. En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos invocando a
dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podría denominarse independencia entre programas y operaciones. 1.2.7. Bases De Datos Documentales: Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más potentes. 1.2.8. Bases De Datos Deductivas: es un sistema de base de datos pero con la diferencia de que permite hacer deducciones a través de inferencias. Se basa principalmente en reglas y hechos que son almacenados en la base de datos. Las bases de datos deductivas son también llamadas bases de datos lógicas, a raíz de que se basa en lógica matemática. 1.3 VENTAJAS Y DESVENTAJAS DE LAS BASE DE DATOS 1.3.1 Ventajas del uso de bases de datos Independencia de los datos y los programas y procesos. Permite modificar los datos, excepto el código de aplicaciones. Menor redundancia, es decir, no es necesario la repetición de datos. Solamente se indica la manera en la que se relacionan éstos. Obtener más información de la misma cantidad de data. La base de datos facilita al usuario obtener más información debido a la facilidad que provee esta estructura para proveer datos a los usuarios. Integridad de los datos, lo que genera mayor dificultad de perder la información o de realizar incoherencias con los datos. Mayor seguridad en los datos. Al permitir restringir el acceso a los usuarios, cada tipo de éstos tendrá la posibilidad de acceder a ciertos elementos. Coherencia de los resultados. Al recolectar y almacenarse la información una sola vez, en los procedimientos se utilizan los mismos datos, razón por la que los resultados son coherentes. Datos más documentados. Gracias a los metadatos que permiten detallar la información de la base de datos. Acceso simultaneo a los datos, facilitando controlar el acceso de usuarios de manera concurrente. Balance de Requerimientos Conflictivos. Para que la Base de Datos trabaje apropiadamente, necesita de una persona o grupo que se encargue de su funcionamiento. El título para esa posición es Administrador de Base de Datos y provee la ventaja de que Diseña el sistema tomando en mente la necesidad de cada departamento de la empresa. Por lo tanto se beneficia mayormente la empresa aunque algunos departamentos podrían tener leves desventajas. Tradicionalmente se diseñaba y programa según la necesidad de cada departamento por separado. Reducción del espacio de almacenamiento, debido a una mejor estructuración de los datos. Acceso a los datos más eficiente. La organización de los datos produce un resultado más óptimo en rendimiento. Igualmente, en el caso de empresas, usuarios de distintas oficinas pueden compartir datos si están autorizados. Reducción del espacio de almacenamiento, gracias a una mejor estructuración de los datos. Se refuerza la estandarización. Debido a que es más fácil estandarizar procesos, formas, nombres de datos, formas, etc. Flexibilidad y rapidez al obtener datos. El usuario puede obtener información de la Base de Datos con escribir breves oraciones. Esto evita el antiguo proceso de llenar una petición al Centro de Cómputos para poder obtener un informe. Aumenta la productividad de los programadores, debido a que los programadores no se tienen que preocupar por la organización de los datos ni de su validación, se pueden concentrar en resolver otros problemas inmediatos, mejorando de ese modo su productividad.
1.3.2 Desventajas del uso de bases de datos Ausencia de estándares reales, lo cual significa una excesiva dependencia a los sistemas comerciales del mercado. Sin embargo, actualmente un gran sector de la tecnología esta aceptado como estándar de hecho. Requiere personal calificado, debido a la dificultad del manejo de este tipo de sistemas. Esto requiere que los programadores y los analistas deben tomar cursos que los adiestren para poder comprender las capacidades y limitaciones de las Bases de Datos. Instalación costosa, ya que el control y administración de bases de datos requiere de un software y hardware de elevado coste. Además de la adquisición y mantenimiento del Sistema Gestor de Datos (SGBD). Falta de rentabilidad a corto plazo, debido al coste de equipos y de personal, al igual del tiempo que tarda en estar operativa. Tamaño. El Sistema de Manejo de Base de Datos (DBMS) requiere de mucho espacio en disco duro y también requiere de mucha memoria principal (RAM) para poder correr adecuadamente. Requerimientos adicionales de Equipo. El adquirir un producto de Base de Datos, requiere a su vez adquirir equipo adicional para poder correr ese producto como por ejemplo, servidores, memoria, discos duros, entre otros. Si se pretende correr la Base de Datos con el mínimo de requerimientos, esta posiblemente se degrada. 1.4 GESTIÓN DE BASES DE DATOS DISTRIBUIDA (SGBD) La base de datos y el software SGBD pueden estar distribuidos en múltiples sitios conectados por una red. Hay de dos tipos: 1. Distribuidos homogéneos: utilizan el mismo SGBD en múltiples sitios. 2. Distribuidos heterogéneos: Da lugar a los SGBD federados o sistemas multibase de datos en los que los SGBD participantes tienen cierto grado de autonomía local y tienen acceso a varias bases de datos autónomas preexistentes almacenados en los SGBD, muchos de estos emplean una arquitectura cliente-servidor. Estas surgen debido a la existencia física de organismos descentralizados. Esto les da la capacidad de unir las bases de datos de cada localidad y acceder así a distintas universidades, sucursales de tiendas, etcétera. Un SGBD debe permitir: • Definir una base de datos: especificar tipos, estructuras y restricciones de datos. • Construir la base de datos: guardar los datos en algún medio controlado por el mismo SGBD • Manipular la base de datos: realizar consultas, actualizarla, generar informes. 1.4.1 Las características de un Sistema Gestor de Base de Datos SGBD son: • Abstracción de la información. Los SGBD ahorran a los usuarios detalles acerca del almacenamiento físico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario. Así, se definen varios niveles de abstracción. • Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (físico o lógico) de una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella. • Redundancia mínima. Un buen diseño de una base de datos logrará evitar la aparición de información repetida o redundante. De entrada, lo ideal es lograr una redundancia nula; no obstante, en algunos casos la complejidad de los cálculos hace necesaria la aparición de redundancias. • Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula, será necesario vigilar que aquella información que aparece repetida se actualice de forma coherente, es decir, que todos los datos repetidos se actualicen de forma simultánea.
• Seguridad. La información almacenada en una base de datos puede llegar a tener un gran valor. Los SGBD deben garantizar que esta información se encuentra segura frente a usuarios malintencionados, que intenten leer información privilegiada; frente a ataques que deseen manipular o destruir la información; o simplemente ante las torpezas de algún usuario autorizado pero despistado. Normalmente, los SGBD disponen de un complejo sistema de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categorías de permisos. • Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los datos almacenados. Es decir, se trata de proteger los datos ante fallos de hardware, datos introducidos por usuarios descuidados, o cualquier otra circunstancia capaz de corromper la información almacenada. • Respaldo y recuperación. Los SGBD deben proporcionar una forma eficiente de realizar copias de respaldo de la información almacenada en ellos, y de restaurar a partir de estas copias los datos que se hayan podido perder. • Control de la concurrencia. En la mayoría de entornos (excepto quizás el doméstico), lo más habitual es que sean muchas las personas que acceden a una base de datos, bien para recuperar información, bien para almacenarla. Y es también frecuente que dichos accesos se realicen de forma simultánea. Así pues, un SGBD debe controlar este acceso concurrente a la información, que podría derivar en inconsistencias.
SGBD MÁS USADOS Entre los sistemas gestores de base de datos más usados, tenemos entre otros de acuerdo al tipo de licencia, Libres: MySQL: Perteneciente a Sun Microsystems (también existe una versión no libre y más completa). Postgresql. Open Office Database: De Sun Microsystems. SQLite: Con licencia GPL, entre otros. Privativos Oracle Database: Perteneciente a Oracle Corporation. Fox Pro. Magic. Microsoft SQL sever. Microsoft Access. ADABAS: Perteneciente a IBM. Paradox. Sybase ASE, y Sybase ASA, entre otros.
Actividad de Desempeño en el Salón de Clase Tipo Individual
Fecha de Entrega________
1. Elabora un Mapa conceptual sobre el Tema Base de Datos (10pts) 2. Investiga el significado de las siguientes palabras (5 pts) Abstracción__________________________________________________________________________ ____________________________________________________________________________________ ____________________________________________________________________________________ _____ Entidades____________________________________________________________________________ ____________________________________________________________________________________ __________________________________________________________________________________ Claves primarias____________________________________________________________________________ ____________________________________________________________________________________ __________________________________________________________________________________ Llaves foráneas_____________________________________________________________________________ ____________________________________________________________________________________ ____________________________________________________________________________________ Relaciones___________________________________________________________________________ ____________________________________________________________________________________ ____________________________________________________________________________________ Metadatos___________________________________________________________________________ ____________________________________________________________________________________ __________________________________________________________________________________
Criterios de Evaluación 1. Puntualidad 3 puntos 2. Ortografía 2 puntos 3. Contenido 15 puntos Puntos Obtenidos________
Calificación_________
Firma responsable:___________________________
Cumplí con todas las instrucciones y la fecha entrega, para desarrollar la actividad de desempeño: Si No
Respete y escuche la opinión de mis compañeros durante la explicación del tema: Si No Elaboré, el mapa conceptual sin dificultad: Si No Realice la búsqueda de información, y copie mi trabajo cuidando la ortografía Si No
COMENTARIOS ______________________________________________________________________________________ ______________________________________________________________________________________ ______________________________________________________________________________________ __________________________________________________________________________________