base de datos

16
Base de datos Se le llama base de datos a los bancos de información que contienen datos relativos a diversas temáticas y categorizados de distinta manera, pero que comparten entre sí algún tipo de vínculo o relación que busca ordenarlos y clasificarlos en conjunto. 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. Existen programas denominados sistemas gestores de bases de datos, abreviado DBMS, que permiten almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las propiedades de estos DBMS, así como su utilización y administración, se estudian dentro del ámbito de la informática. Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas; También son ampliamente utilizadas en entornos científicos con el objeto de almacenar la información experimental. Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran protegidos por las leyes de varios países. Por ejemplo en España, los datos personales se encuentran protegidos por la Ley Orgánica de Protección de Datos de Carácter Personal (LOPD), en México

Upload: gustavoht

Post on 02-Dec-2015

214 views

Category:

Documents


1 download

DESCRIPTION

BASE DE DATOS

TRANSCRIPT

Page 1: Base de Datos

Base de datos 

Se le llama base de datos a los bancos de información que contienen datos relativos a diversas temáticas y categorizados de distinta manera, pero que comparten entre sí algún tipo de vínculo o relación que busca ordenarlos y clasificarlos en conjunto.

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.

Existen programas denominados sistemas gestores de bases de datos, abreviado DBMS, que permiten almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las propiedades de estos DBMS, así como su utilización y administración, se estudian dentro del ámbito de la informática.

Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas; También son ampliamente utilizadas en entornos científicos con el objeto de almacenar la información experimental.

Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran protegidos por las leyes de varios países. Por ejemplo en España, los datos personales se encuentran protegidos por la Ley Orgánica de Protección de Datos de Carácter Personal (LOPD), en México por la Ley Federal de Transparencia y Acceso a la Información Pública Gubernamental y en Argentina la Ley de Protección de Datos Personales.

Características

- Independencia de los Datos. Es decir, que los datos no dependen del programa y por tanto cualquier aplicación puede hacer uso de los datos.

- Reducción de la Redundancia. Llamamos redundancia a la existencia de duplicación de los datos, al reducir ésta al máximo conseguimos un mayor aprovechamiento del espacio y además evitamos que existan inconsistencias entre los datos. Las inconsistencias se dan cuando nos encontramos con datos contradictorios.

Page 2: Base de Datos

- Seguridad. Un SBD debe permitir que tengamos un control sobre la seguridad de los datos.

- Se visualiza normalmente como una tabla de una hoja de cálculo, en la que los registros son las filas y las columnas son los campos, o como un formulario.

- Permite realizar un listado de la base de datos.

- Permiten la programación a usuarios avanzados.

Aplicaciones Bases De Datos1. banca: información de clientes, cuentas, transacciones, préstamos, etc.2. líneas aéreas: Clientes, horarios, vuelos, destinos, etc. (1ras bases distribuidas geográficamente)3. universidades: Estudiantes, carreras, horarios, materias, etc.4. transacciones de tarjeta de crédito: para comprar con tarjetas de crédito y la generación de los extractos mensuales.5. telecomunicaciones: para guardar registros de llamadas realizadas, generar facturas mensuales, mantener el saldo de las tarjetas, telefónicas de prepago y almacenar información sobre las redes. 

Tipos de base de datos

1.-Bases de datos estáticasÉstas son bases de datos de sólo 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.  Por ejemplo la empresa IBM se dedico al desarrollo de la computadora y a hecho grandes impactos en el área informática2.-Bases de datos dinámicasÉstas 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.3.-Bases de datos bibliográficasSolo contienen un subrogante (representante) de la fuente primaria, que permite localizarla. Un registro típico de una base de datos bibliográfica contiene información sobre el autor, fecha de publicación, editorial, título, edición, de una

Page 3: Base de Datos

determinada publicación, etc. Puede contener un resumen o extracto de la publicación original, pero nunca el texto completo, porque si no, estaríamos en presencia de una base de datos a texto completo (o de fuentes primarias —ver más abajo). Como su nombre lo indica, el contenido son cifras o números. Por ejemplo, una colección de resultados de análisis de laboratorio, entre otras.4.-Bases de datos deductivasUn sistema de base de datos deductiva, 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. 5.-Base de datos de redÉste 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.6.-Bases de datos transaccionalesSon 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.7.-Bases de datos relacionalesÉste es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. 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.8.-Bases de datos multidimensionalesSon bases de datos ideadas para desarrollar aplicaciones muy concretas, como creación de Cubos OLAP. 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

Page 4: Base de Datos

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.9.-Bases de datos orientadas a objetosEste modelo, bastante reciente, y propio de los modelos informáticos orientados 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.10.-Bases de datos documentalesPermiten la indexación a texto completo, y en líneas generales realizar búsquedas más potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases de datos.

Ventajas del uso de base de datos

1. 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 (si se tiene el privilegio).  Ejemplo: comparar un Centro de Cómputos tradicional en COBOL vs uno que utilice una Base de Datos.

Page 5: Base de Datos

2. Compartir los Datos - Usuarios de distintas oficinas pueden compartir datos si están autorizados.  Esto implica que si un dato cambia de contenido como por ejemplo la dirección de un cliente, todos los usuarios que pueden acceder ese dato, verán inmediatamente el cambio efectuado.  Ejemplo: Explicar cómo trabajaba un Centro de Cómputos tradicional con un Sistema Estudiantil que tenga sub-sistemas de Registro, Asistencia Económica, Estudio y Trabajo, Matrícula, etc.

3. 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 debido a su idiosincracia.  Tradicionalmente se diseñaba y programa según la necesidad de cada departamento por separado. Ejemplo: Explicar cómo en diferentes departamentos utilizaban diferentes herramientas y estructuras de datos para su sistema particular y como esto afectaba a los otros departamentos.

4. Se refuerza la estandarización - Debido a lo que se mencionó previamente, es más fácil estandarizar procesos, formas, nombres de datos, formas, etc.5. Redundancia controlada - Debido al sistema tradicional de archivos independientes, los datos se duplicaban constantemente lo cual creaba mucha duplicidad de datos y creaba un problema de sincronización cuando se actualizaba un dato en un archivo en particular.  Ejemplo: En el sistema de Registro y de Asistencia Económica pasaba mucho eso.  El método que utilizaron para resolver el problema  fue el de periódicamente actualizar el archivo de Asistencia Económica, con el archivo de registraduria (principal).  Lo cual trae como consecuencia, uso innecesario de los recursos de la computadora.  Ojo!, la redundancia se controla, no se elimina por completo.

Page 6: Base de Datos

6. Consistencia - Al controlarse la redundancia, cuando actualizas un dato, todos los usuarios autorizados de la Base de Datos pueden ver el cambio independientemente de que estén trabajando en distintos sistemas.

7. Integridad - La base de datos tiene la capacidad de validar ciertas condiciones cuando los usuarios entran datos y rechazar entradas que no cumplan con esas condiciones.  El DBA (Data Base Administrador) es responsable de establecer esas validaciones.

8. Seguridad - El DBA al tener control central de los Datos, la Base de Datos le provee mecanismos que le permiten crear niveles de seguridad para distintos tipos de Usuarios.  En COBOL esta opción tendría que programarse.

9. Flexibilidad y rapidez al obtener datos - Aquí el usuario puede fácilmente obtener información de la Base de Datos con tan solo escribir unas breves oraciones.  Esto evita el antiguo y burocrático proceso de llenar una petición al Centro de Cómputos para poder obtener un informe. Ejemplo: Explicar como ocurría ese proceso.

10. 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.

11. Mejora el mantenimiento de los programas - Debido a que los datos son independientes de los programas (a diferencia de Cobol), si ocurre un cambio en la estructura de una tabla (archivo), el código no se afecta.  Ejemplo: Explicar el problema de Cobol cuando ocurre un cambio de campo en un archivo aún con el uso de librerías.

Page 7: Base de Datos

12. Independencia de los Datos - Debido a lo que se mencionó previamente, los datos pueden modificarse para por ejemplo mejorar el "performance" de la Base de Datos y como consecuencia, no se tiene que modificar los programas.

Desventajas del uso de base de datos

1. Tamaño - Al proveer todas las ventajas anteriormente nombradas, 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.

2. Complejidad - Debido a la cantidad de operaciones y a las capacidades del DBMS,  se convierte en un producto complejo de entender.  Esto requiere que los programadores y los analistas deben tomar cursos que los adiestren para poder comprender las capacidades y limitaciones del DBMS

3. Costo - Los productos de Bases de Datos (Oracle, DB2, Etc.) son productos caros.  Esto sin contar los adiestramientos del personal del centro de cómputos y de los usuarios.  Ejemplo: Explicar el costo envuelto en implantar FRS en la Universidad.

4. 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, etc. Si se pretende correr la Base de Datos con el mínimo de requerimientos, esta posiblemente se degrada y el "response time" al usuario se va a afectar grandemente.

5. En caso de allá, el impacto es mayor - Si un componente de la Base de Datos sufre un desperfecto, se detiene las operaciones del producto por completo.  En el caso de un ambiente no centralizo en Cobol, el

Page 8: Base de Datos

impacto casi siempre afecta al departamento en donde ocurrió el problema únicamente.

6. Complejo el recuperar los datos - En caso de un accidente que corrompa la Base de datos, el proceso de recuperación  y de devolver a  la Base de Datos su estado anterior al problema, es mucho más complejo de ejecutar que en sistemas tradicionales.

Independencia lógica y física de datosLa Independencia Física De Datos debe permitir la realización de estructuras de almacenamiento de datos en forma independiente de su estructura lógica en la realidad Ventajas: los cambios en la estructura lógica no implican cambios en la de

almacenamiento, las consideraciones sobre el mejor manejo de los datos almacenados quedan a cargo del SMBD y los cambio en la estructura de almacenamiento no implican cambios en los Programas de Aplicación.

La Independencia lógica De Datos: debe permitir una cierta independencia entre los datos vistos por las aplicaciones y la estructura lógica de ellos en la realidad. Ventajas: soporte de la evolución de los datos y que cada grupo de trabajo vea esos datos como cada grupo lo desea.La capacidad para modificar una definición de esquema en un nivel sin que afecte a una definición de esquema en el siguiente nivel más alto se llama Independencia de datos.Existen 2 niveles de independencia de datos:

Independencia física de datos: Es la capacidad de modificar el esquema físico sin provocar que se vuelvan a escribir los programas de aplicación. Las modificaciones en el nivel físico son ocasionalmente necesarias para mejorar el funcionamiento.Independencia lógica de datos: Capacidad de modificar el esquema conceptual sin provocar que se vuelvan a escribir los programas de aplicación. Las modificaciones en el nivel lógico son necesarias siempre que la estructura lógica de la base de datos se altere.

Relación entre los sistemas de información y las bases de datos

La base de datos es un sistema de almacenamiento y de solución de los problemas. Nos permite acceder rápidamente a la información almacenada que se modifica con el tiempo, además permite operaciones como actualización, borrado

Page 9: Base de Datos

y adición de datos y operaciones fundamentales de consulta y a su vez responde a la necesidades de la empresa la cual está haciendo uso de este sistema porque permite diseñar, crear y mantener cada uno de los componentes necesario para asegurar un funcionamiento óptico. El sistema de información monitorea las actividades o movimientos de una empresa u organización, Su hardware es importante para su funcionamiento y es fundamental conocer sus procedimientos básicos los cuales son entrada, almacenamiento, procesamiento y salida de información para así tener una mayor facilidad a la hora de manejar o ingresar en él, además nos brinda una ayuda cuando queremos tener la información que necesitamos de manera rápida.

La base de datos y el sistema de información nos permiten acceder de manera eficaz Son redes donde se almacena información y al mismo tiempo es ordenada y almacenada.

Sistema de gestión de bases de datosUn sistema de gestión de bases de datos (SGBD) es un conjunto de programas que permiten el almacenamiento, modificación y extracción de la información en una base de datos, además de proporcionar herramientas para añadir, borrar, modificar y analizar los datos. Los usuarios pueden acceder a la información usando herramientas específicas de interrogación y de generación de informes, o bien mediante aplicaciones al efecto.

Estos sistemas también proporcionan métodos para mantener la integridad de los datos, para administrar el acceso de usuarios a los datos y para recuperar la información si el sistema se corrompe. Permiten presentar la información de la base de datos en variados formatos. La mayoría incluyen un generador de informes. También pueden incluir un módulo gráfico que permita presentar la información con gráficos y tablas.

Hay muchos tipos distintos según cómo manejen los datos y muchos tamaños distintos de acuerdo a si operan en computadoras personales y con poca memoria o grandes sistemas que funcionan en mainframes con sistemas de almacenamiento especiales.

Generalmente se accede a los datos mediante lenguajes de interrogación, lenguajes de alto nivel que simplifican la tarea de construir las aplicaciones. También simplifican la interrogación y la presentación de la información. Un SGBD permite controlar el acceso a los datos, asegurar su integridad, gestionar el acceso concurrente a ellos, recuperar los datos tras un fallo del sistema y hacer copias de

Page 10: Base de Datos

seguridad. Las bases de datos y los sistemas para su gestión son esenciales para cualquier área de negocio, y deben ser gestionados con esmero.

Arquitectura

La arquitectura de un SGBD especifica sus componentes (incluyendo su descripción funcional) y sus interfaces. Trata de conceptos distintos que la arquitectura de la base de datos. Los componentes principales de un SGBD son:

Interfaces externos - Medios para comunicarse con el SGDB en ambos sentidos (E/S) y explotar a todas sus funciones. Pueden afectar a la base de datos o a la operación del SGBD, por ejemplo:

operaciones directas con la base de datos: definición de tipos, asignación de niveles de seguridad, actualización de datos, interrogación de la base de datos...

operaciones relativas a la operación del SGBD: copia de seguridad y restauración, recuperación tras una caída, monitoreo de seguridad, gestión del almacenamiento, reserva de espacio, monitoreo de la configuración, monitoreo de prestaciones, afinado...

los interfaces externos bien pueden ser utilizados por usuarios (p.e. administradores) o bien por programas que se comunican a través de un API.

Intérprete o procesador del lenguaje - La mayor parte de las operaciones se efectúan mediante un lenguaje de base de datos. Existen lenguajes para definición de datos, manipulación de datos (p.e. SQL), para especificar aspectos de la seguridad y más. Las sentencias en ese lenguaje se introducen en el SGBD mediante el interfaz adecuado. Se procesan las expresiones en dicho lenguaje (ya sea compilado o interpretado) para extraer las operaciones de modo que puedan ser ejecutadas por el SGBD.

Optimizador de consultas - Realiza la optimización de cada pregunta y escoge el plan de actuación más eficiente para ejecutarlo.

Motor de la base de datos - Realiza las operaciones requeridas sobre la base de datos, típicamente representándolo a alto nivel.

Mecanismo de almacenamiento - Traduce las operaciones a lenguaje de bajo nivel para acceder a los datos. En algunas arquitecturas el mecanismo de almacenamiento está integrado en el motor de la base de datos.

Motor de transacciones - Para conseguir corrección y fiabilidad la mayoría de las operaciones internas del SGBD se realizan encapsuladas dentro de transacciones. Las transacciones pueden ser especificadas externamente al SGBD para encapsular un grupo de operaciones. El motor de transacciones sigue la ejecución de las transacciones y gestiona su

Page 11: Base de Datos

ejecución de acuerdo con las reglas que tiene establecidas (p. eg., control de concurrencia y su ejecución o cancelación).

Gestión y operación de SGBD - Comprende muchos otros componentes que tratan de aspectos de gestión y operativos del SGBD como monitoreo de prestaciones, gestión del almacenamiento, mapas de almacenamiento.

Lenguajes de bases de datos que usan los usuarios

Lenguaje de Definición de Datos (DDL): Conjunto de sentencias que permiten la definición de la estructura de la base de datos.Ejemplo: CREATE TABLE (en SQL)Lenguaje de Manipulación de Datos (DML): Sentencias que permiten insertar, borrar, actualizar, recuperar, organizar toda la información que se encuentra almacenada en la base de datos. Son instrucciones que uno crea o llamados a procedimientos.Ejemplo: APPEND FROM (en FOXPRO)Lenguaje Procedimental (PL): Son lenguajes donde se dice lo que se quiere y cómo se debe hacer lo que se quiere.Lenguaje no Procedimental (PNL): Son lenguajes donde se dice lo que se quiere y no cómo se debe hacer lo que se quiere.