BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... ·...

75
BASE DE DATOS

Transcript of BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... ·...

Page 1: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASE DE DATOS

Page 2: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

HISTORIADE LAS B.D.

Page 3: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Tuvieron sus orígenes en 1960 - 1962, cuando se empezaron ausar las maquinas que codificaban la información entarjetas perforadas por medio de agujeros. Las bases dedatos se crean con el objetivo de almacenar grandescantidades de datos que antes se almacenaba en libros, loque era lento, costoso y complejo (cualquier actualización arealizar, había que hacerla en cada uno de los libros en losque apareciera dicha información a modificar).

Las primeras bases de datos manejaban ficheros que eranalmacenados en tarjetas o soportes magnéticos. Cuando losordenadores evolucionan, aparecen las cintas y los discos, ala vez que las maquinas son dotadas de mucha maspotencia y facilidad de manipulación, es por tanto en esemomento cuando las bases de datos comienzan a serrealmente útiles.

Page 4: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

En 1970 se convoca una Conferencia de Lenguajes deProgramación y se establece un modelo llamadoCODASYL (Modelo para el tratamiento de bases dedatos que fue publicado por E. Cod en 1970. Cod,propuso una forma de organizar las bases de datosmediante un modelo matemático lógico.

Una vez creado este modelo se crea un modeloestándar de actuación.

Page 5: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

¿QUÉ ES UNA BASE DE DATOS?

Abreviada B.D.D

1-Un conjunto de información

almacenada en memoria auxiliar que

permite acceso directo y un conjunto de

programas que manipulan esos datos

2-Es un conjunto de datos

pertenecientes a un mismo contexto y

almacenados sistemáticamente para su

posterior uso

Page 6: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

B.D.D. EN LA VIDA COTIDIANA

Las B.D.D se usan tan ampliamente que se

pueden encontrar en organizaciones de todos los

tamaños e incluso en su hogar.

Ejemplos:

-Cuando compras objetos por internet.

-Cuando pagas con tarjeta de crédito.

-Al hacer las compras del supermercado.

Page 7: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

TIPOS DE BASE DEDATOS

Page 8: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Las bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto que se esté

manejando, o la utilidad de la misma.

Page 9: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Según la variabilidad de los datosalmacenados:

* Bases de datos estáticas

* Bases de datos dinámicas

Page 10: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS ESTÁTICAS

Éstas son bases de datos de sólo lectura,utilizadas primordialmente paraalmacenar datos históricos queposteriormente se pueden utilizar paraestudiar el comportamiento de unconjunto de datos a través del tiempo,realizar proyecciones y tomar decisiones.

Page 11: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS DINÁMICAS

Éstas son bases de datos donde la informaciónalmacenada se modifica con el tiempo,permitiendo operaciones como actualización,borrado y adición de datos, además de lasoperaciones fundamentales de consulta. Unejemplo de esto puede ser la base de datosutilizada en un sistema de información de unatienda de abarrotes, una farmacia, un videoclub.

Page 12: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Según el contenido:

* Bases de datos bibliográficas.

* Bases de datos de texto completo.

* Bases de datos o "bibliotecas" de información química o biológica.

Page 13: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS BIBLIOGRÁFICAS

Un registro típico de una base de datos bibliográficacontiene información sobre el autor, fecha depublicación, editorial, título, edición, de unadeterminada publicación, etc.

Page 14: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS DE TEXTO COMPLETO

Almacenan las fuentes primarias, como

por ejemplo, todo el contenido de todas

las ediciones de una colección de revistas

científicas.

Page 15: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS O "BIBLIOTECAS" DE

INFORMACIÓN QUÍMICA O BIOLÓGICA

Son bases de datos que almacenan diferentes tipos deinformación proveniente de la química, las ciencias de la vida omédicas. Se pueden considerar en varios subtipos:

* Las que almacenan secuencias de nucleótidos o proteínas.

* Las bases de datos de rutas metabólicas.

* Bases de datos de estructura, comprende los registros de datosexperimentales sobre estructuras 3D de biomoléculas.

* Bases de datos clínicas.

* Bases de datos bibliográficas (biológicas, químicas, médicas yde otros campos): Medline.

Page 16: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

MODELOS DE BASE DE

DATOS.

Page 17: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

MODELOS DE LAS B.D.D.

Es una descripción de algo conocido comocontenedor de datos (algo en donde se guardala información), así como de los métodos paraalmacenar y recuperar información de esoscontenedores.

Los modelos de datos son abstracciones quepermiten la implementación de un sistemaeficiente de base de datos, por lo general sonalgoritmos y conceptos matemáticos.

Page 18: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS JERÁRQUICAS

Estas son bases de datos que almacenan suinformación en una estructura jerárquica.

Son especialmente útiles en el caso de aplicacionesque manejan un gran volumen de información y datosmuy compartidos permitiendo crear estructurasestables y de gran rendimiento.

Su principal limitación de este modelo es suincapacidad de representar eficientemente laredundancia de datos

Page 19: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASE DE DATOS DE RED

Su diferencia fundamental hacia la B.D.D jerárquicaes la modificación del concepto de nodo, en este tipode base de dato se permite que un mismo nodotenga varios padres.

Fue una gran mejora con respecto al modelojerárquico, ya que ofrecía una solución eficiente alproblema de redundancia de datos; pero, aun así, ladificultad que significa administrar la información eneste modelo hizo que su principal usuario seanprogramadores.

Page 20: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS TRANSACCIONALES

Son bases de datos cuyo único fin es elenvío y recepción de datos a grandesvelocidades.

Estas bases son muy poco comunes yestán dirigidas por lo general al entornode análisis de calidad, datos deproducción e industrial

Page 21: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS RELACIONALESEn este modelo, el lugar y la forma en que se almacenen los

datos no tienen relevancia (a diferencia de otros modeloscomo el jerárquico y el de red). Esto tiene la considerableventaja de que es más fácil de entender y de utilizar para unusuario esporádico de la base de datos. La información puedeser recuperada o almacenada mediante consultas que ofrecenuna amplia flexibilidad y poder para administrar lainformación.

El lenguaje más habitual para construir las consultas a basesde datos relacionales es SQL

Page 22: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS MULTIDIMENSIONALES

Son bases de datos ideadas paradesarrollar aplicaciones muy concretas,como creación de cubos OLAP.Básicamente no se diferencian demasiadode las bases de datos relacionales

Page 23: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS ORIENTADAS A OBJETOS

Este modelo, bastante reciente, trata de almacenaren la base de datos los objetos completos.

Esta es una base de datos que incorpora todos losconceptos importantes del paradigma de objetos:

-Encapsulación

-Herencia

-Polimorfismo

Una operación se especifica en dos partes. La interfaz(o signatura) y la implementación (o método)

Page 24: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS DOCUMENTALES

Permiten la indexación a textocompleto, y en líneas generales realizarbúsquedas más potentes.

Tesaurus es un sistema de índicesoptimizado para este tipo de bases dedatos.

Page 25: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS DEDUCTIVAS

También llamadas bases de datoslógicas.

Es un sistema de base de datos perocon la diferencia de que permite hacerdeducciones a través de inferencias. Sebasa principalmente en reglas y hechosque son almacenados en la base de datos.

Page 26: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

ESTRUCTURA DE UNA

BASE DE DATOS.

Page 27: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

La estructura de una base de datos hacereferencia a los tipos de datos, los vínculos orelaciones y las restricciones que debencumplir esos datos (integridad de datos yredundancia de datos).

La estructura de una base de datos es diseñada o descripta empleando algún tipo de modelo de datos.

Page 28: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Un ejemplo a modo de descripción de la estructura de una base de datos puede ser:

ALUMNO:Numero de alumno (entero de 6 números)Nombre (cadena de 30 caracteres)Apellido (cadena de 30 caracteres) Año de nacimiento (entero de 4 números)Especialidad (entero de 3 números).

Page 29: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

INTEGRIDAD Y

SEGURIDAD DE

DATOS

Page 30: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

INTEGRIDAD DE DATOS

Integridad: conjunto de seguridades que son utilizadaspara mantener los datos correctos.

Fuente de Error: estas fuentes de error se origina si elprograma de entrada de datos no esta validado. Ej: fallasde hardware, actualizaciones incompletas, defectos delsoftware, inserción de datos no válidos, erroreshumanos.

Una técnica que usa la BD de una entrada de datos noválida es la validación.

Page 31: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Validación: es proteger los datos, validar los datos en laentrada de datos. Existen tipos de validaciones:

Tipo de Dato: es si se define un campo como carácter òchar y no puede ingresar números enteros.

Valor de Dato: si se define un valor entero se puedeespecificar un rango y no se puede pasar de ese valor.

Valores Claves / No Nulos: asegura registros únicos ycuyos valores no sean nulos.

Integridad Referencial: asegura a la BD, que no existaregistros hijos sin sus registros padres correspondientes.

Page 32: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

SEGURIDAD DE LOS DATOS

Se presentan cuando no es posible establecer claves deacceso y resguardo en forma uniforme para todo elsistema, facilitando así el acceso a intrusos.

La seguridad de los datos se puede definir en lassiguientes aspectos:

Objeto a asegurar: el primer objeto a asegurar son losobjetos, programas y finalmente al esquema.

Codificación de Claves: el DBMS provee la seguridad delos Login (usuario y password).

Control de Acceso: se especifican seguridades contraaccesos indicados orientado a personas no autorizada.

Page 33: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

GESTORES DE BASES

DE DATOS

Page 34: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

GESTORES DE BASE DE DATOS

Son un tipo de software muy especifico, dedicado aservir de interfaz entre la base de datos, el usuario y lasaplicaciones que la utilizan. Los hechos general de lossistemas de gestor de base de datos es el de manejar demanera clara, sencilla y ordenada un conjunto de datosque posteriormente se convertirán en informaciónrelevante para una organización.

Los sistemas de gestores de base de datos mas usadosson: ORACLE, D2 de IBM, SQL SERVER, MYSQL,POSTGRESQL.

Page 35: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

OBJETIVOS Abstracción de la información: Ahorran a los usuarios detalles

acerca del almacenamiento físico de los datos.

Independencia: La independencia de los datos consiste en lacapacidad de modificar el esquema (físico o lógico) de unabase de datos sin tener que realizar cambios en lasaplicaciones que se sirven de ella.

Seguridad: La información almacenada en una base de datospuede llegar a tener un gran valor. Los SGBD deben garantizarque esta información se encuentra segura de permisos ausuarios y grupos de usuarios, que permiten otorgar diversascategorías de permisos.

Page 36: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Manejo de transacciones: Una transacción es un programaque se ejecuta como una sola operación. Esto quiere decirque luego de una ejecución en la que se produce una fallaes el mismo que se obtendría si el programa no se hubieraejecutado. Los SGBD proveen mecanismos para programarlas modificaciones de los datos de una forma mucho mássimple que si no se dispusiera de ellos.

Tiempo de respuesta: Lógicamente, es deseable minimizarel tiempo que el SGBD tarda en darnos la informaciónsolicitada y en almacenar los cambios realizados.

Page 37: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

VENTAJAS

Proveen facilidades para la manipulación de grandesvolúmenes de datos.

Simplifican la programación de equipos de consistencia.

Manejando las políticas de respaldo adecuadas, garantizanque los cambios de la base serán siempre consistentes sinimportar si hay errores correctamente.

Page 38: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Organizan los datos con un impacto mínimo en el código delos programas.

Bajan drásticamente los tiempos de desarrollo y aumentan lacalidad del sistema desarrollado si son bien explotados por losdesarrolladores.

Usualmente, proveen interfaces y lenguajes de consulta quesimplifican la recuperación de los datos.

Page 39: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

DESVENTAJAS Típicamente, es necesario disponer de una o más personas

que administren de la base de datos, en la misma forma enque suele ser necesario en instalaciones de cierto portedisponer de una o más personas que administren los sistemasoperativos. Esto puede llegar a incrementar los costos deoperación en una empresa.

Si se tienen muy pocos datos que son usados por un únicousuario por vez y no hay que realizar consultas complejassobre los datos, entonces es posible que sea mejor usar unaplanilla de cálculo.

Page 40: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Complejidad, los software muy complejos y las personas quevayan a usarlo deben tener conocimiento de lasfuncionalidades del mismo para poder aprovecharlo almáximo.

Tamaño, la complejidad y la gran cantidad de funciones quetienen hacen que sea un software de gran tamaño, querequiere de gran cantidad de memoria para poder correr.

Coste del hardware adicional: los requisitos de hardware paracorrer un SGBD por lo general son relativamente altos, por loque estos equipos pueden llegar a costar gran cantidad dedinero.

Page 41: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

LENGUAJES DE

PROGRAMACIÓN

Page 42: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

LENGUAJES DE PROGRAMACIÓN

DELPHI

Delphi es un entorno de Programación visual orientado a objetos paradesarrollo rápido de aplicaciones de propósito general, incluyendoaplicaciones cliente / servidor. Desarrollo de bases de datos multiniveldimensionable, auténtica capacidad de reutilización orientada a objetos ycompilador de código original de alto rendimiento.

COBOL

El Cobol es un lenguaje de alto nivel compilado y orientado hacia la gestiónde empresas y de ahí viene su nombre. Lenguaje común orientado hacialos negocios. Aunque existen diferentes versiones es el más estándarexistiendo en leves diferencias entre una y otra versión.

Page 43: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

PASCAL

El Pascal es un lenguaje compilado de orientación generalseudocientifica, se trata de un lenguaje de finales de la década delos 70 que surgió como alternativa al Basic y al Fortran. Al igual queel Cobol se trata de un lenguaje estructurado

LENGUAJE C

El Lenguaje C es un lenguaje de nivel medio, es decir, sin ser unlenguaje de alto nivel como COBOL, BASIC o Pascal, tampoco es unLenguaje Ensamblador.

HTML

HTML (Hyper Text Markup Language) es un lenguaje sencillo quepermite describir hipertexto, es decir, texto presentado de formaestructurada, con enlaces (hyperlinks)que conducen a otrosdocumentos o fuentes de información relacionadas, y coninserciones multimedia (gráficos, sonido...).

Page 44: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASE DE DATOS

PARALELAS

Page 45: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASES DE DATOS PARALELAS

Hace 15 años los sistemas paralelos de base de datoshan estado casi descartados incluso por algunos de susmas firmes defensores.

Actualmente están comercializados con éxito porprácticamente todos los fabricantes de bases de datos.

Page 46: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASE DE DATOS PARALELAS

Un SGBD que se ejecuta sobre múltiplesprocesadores y discos que han sido diseñadospara ejecutar operaciones en paralelo, cuandosea posible, con el propósito de mejorar elrendimiento.

Page 47: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Los sistemas paralelos de base de datosconstan de varios procesadores y variosdiscos conectados a través de una red deinterconexión de alta velocidad. Paramedir el rendimiento de los sistemas debase de datos existen 2 medidasprincipales:

La productividad

El tiempo de respuesta

Page 48: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

La productividad (throughput) que seentiende como el número de tareas quepueden completarse en un intervalo detiempo determinado.

El tiempo de respuesta (response time)que es la cantidad de tiempo que necesitapara completar una única tarea a partirdel momento en que se envíe.

Page 49: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

ARQUITECTURA

Existen cuatro arquitecturas de sistemas

paralelos:

De memoria compartida: Todos losprocesadores comparten una memoria común.

De discos compartidos: Todos los procesadorescomparten un conjunto de discos común.

Sin compartimiento: Los procesadores nocomparten ni memoria ni disco.

Jerárquica: Este modelo es un híbrido de lasarquitecturas anteriores.

Page 50: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

FACTORES NEGATIVOS DEL PARALELISMO

Estos pueden atenuar tanto la ganancia de velocidad

como la ampliabilidad:

Costes de inicio. El inicio de un único proceso llevaasociado un coste de inicio.

Interferencia. Como los procesos que se ejecutan en unsistema paralelo acceden con frecuencia a recursoscompartidos, pueden sufrir un cierto retardo comoconsecuencia de la esta.

Sesgo. Al dividir cada tarea en un cierto número depasos paralelos se reduce el tamaño del paso medio.Normalmente es difícil dividir una tarea en partesexactamente iguales, entonces se dice que la forma dedistribución de los tamaños es sesgada.

Page 51: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

PARALELISMO DE E/S

Las relaciones se dividen entre los discosdisponibles para que se pueda realizar larecuperación de datos mas rápidamente.Hay 3 técnicas de división:

- División por turno rotatorio

- División por asociación

- División por rangos

Page 52: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Turno rotatorio: asegura una distribución de lastuplas entre los discos, por ello, cada disco tieneaproximadamente el mismo numero de tuplasque los demás.

División por asociación:Se escogen variosatributos del esquema de la relación y sedesignan como atributos de división. Se escogeuna función de asociación cuyo rango es{0,1,…,n-1}.

División por rangos: Se distribuye rangoscontinuos de valores de los atributos a cadadisco.

Page 53: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

PARALELISMO ENTRE CONSULTAS

• Se ejecutan en paralelo entre si diferentesconsultas o transacciones. La productividad detransacciones puede aumentarse con esta formade paralelismo.

• Es las forma mas sencilla de paralelismo que sepermite en los sistemas de bases de datos.

Page 54: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

PARALELISMO EN CONSULTAS

Se refiere a la ejecución en paralelo de unaúnica consulta en varios procesadores y discos.Hay 2 tipos de paralelismo en consultas:

- Paralelismo en operaciones

- Paralelismo entre operaciones

Page 55: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

- Paralelismo en operaciones: se utiliza paraejecutar operaciones relacionales, como laordenación, selección, proyección, y reunión.

- Paralelismo entre operaciones: se puedeacelerar el procesamiento de consultasejecutando en paralelo las diferentesoperaciones de las expresiones de lasconsultas.

Page 56: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASE DE DATOS

DISTRIBUIDAS

Page 57: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

BASE DE DATOS DISTRIBUIDA

Una base de datos distribuida (BDD) es un conjunto de múltiples bases dedatos lógicamente relacionadas las cuales se encuentran distribuidas entrediferentes sitios interconectados por una red de comunicaciones, loscuales tienen la capacidad de procesamiento autónomo lo cual indica quepuede realizar operaciones locales o distribuidas. Un sistema de Bases deDatos Distribuida (SBDD) es un sistema en el cual múltiples sitios de basesde datos están ligados por un sistema de comunicaciones de tal formaque, un usuario en cualquier sitio puede acceder los datos en cualquierparte de la red exactamente como si los datos estuvieran siendo accedidosde forma local.En un sistema distribuido de bases de datos se almacenan en variascomputadoras.

Page 58: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

VENTAJAS

Refleja una estructura organizacional - los fragmentos dela base de datos se ubican en los departamentos a losque tienen relación.

Autonomía local - un departamento puede controlar losdatos que le pertenecen.

Disponibilidad - un fallo en una parte del sistema soloafectará a un fragmento, en lugar de a toda la base dedatos.

Page 59: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Rendimiento - los datos generalmente se ubican cercadel sitio con mayor demanda, también los sistemastrabajan en paralelo, lo cual permite balancear la cargaen los servidores.

Economía - es más barato crear una red de muchascomputadoras pequeñas, que tener una solacomputadora muy poderosa.

Modularidad - se pueden modificar, agregar o quitarsistemas de la base de datos distribuida sin afectar a losdemás sistemas (módulos).

Page 60: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

DESVENTAJAS

Complejidad - Se debe asegurar que la base de datos seatransparente, se debe lidiar con varios sistemasdiferentes que pueden presentar dificultades únicas.

Seguridad - se debe trabajar en la seguridad de lainfraestructura así como cada uno de los sistemas.

Integridad - Se vuelve difícil mantener la integridad,aplicar las reglas de integridad a través de la red puedeser muy caro en términos de transmisión de datos.

Page 61: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Falta de experiencia - las bases de datos distribuidas son uncampo relativamente nuevo y poco común por lo cual noexiste mucho personal con experiencia o conocimientosadecuados.

Diseño de la base de datos se vuelve más complejo, eldiseño de una base de datos distribuida debe considerar lafragmentación, replicación y ubicación de los fragmentos ensitios específicos.

Page 62: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

USUARIOS Y

ADMINISTRADORES

Page 63: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

USUARIOS DE BASE DE DATOS

Las personas que trabajan con una basede datos se pueden catalogar comousuarios o administradores de base dedatos.

Page 64: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Hay 4 tipos de usuarios:

Usuarios normales

Programadores de aplicaciones

Usuarios sofisticados

Usuarios especializados

Page 65: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

USUARIOS NORMALES

• Son usuarios no sofisticados que interactúancon el sistema mediante la innovación dealguno de los programas de aplicaciónpermanente que se ha escrito previamente.

• Los usuarios normales pueden también leerinformes generados de la base de datos.

Page 66: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

PROGRAMADORES DE APLICACIONES

Son profesionales informáticos queescriben programas de aplicación.

Los programadores de aplicacionespueden elegir entre muchas herramientaspara desarrollar interfaces de usuario.

Page 67: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Las herramientas de desarrollo rápido deaplicaciones (DRA) permiten al programadorconstruir formularios e informes sin construirun programa.

Hay lenguajes llamados “lenguajes de cuartageneración” que incluyen característicasespeciales para facilitar la generación deformularios y presentación de datos en lapantalla.

Page 68: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

USUARIOS SOFISTICADOS

Interactúan con el sistema sin programasescritos. En su lugar, ellos forman susconsultas en un lenguaje de consulta debase de datos.

Page 69: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

USUARIOS ESPECIALIZADOS

Son usuarios sofisticados que escribenaplicaciones de base de datosespecializadas que no son adecuadas enel marco de procesamiento de datostradicional.

Page 70: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Entre estas aplicaciones están:

Sistemas de diseño asistido por computador

Sistemas de bases de conocimientos ysistemas expertos

Sistemas que almacenan los datos con tipos dedatos complejos

Sistemas de modelado de entorno

Page 71: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

ADMINISTRADOR DE BASE DE DATOS

Es la persona que llevan un controlcentralizado sobre el sistema, tanto de losdatos como de los programas queacceden a esos datos.

Page 72: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Las funciones del administrador de base de

datos incluyen las siguientes:

Definición del esquema: el administrador crea elesquema original de la base de datos escribiendo unconjunto de instrucciones de definición de datos

Definición de la estructura y del método de acceso.

Page 73: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Modificación del esquema y de la organización: losadministradores realizan cambio en el esquema y enla organización para reflejar las necesidadescambiantes de la organización o para alterarla ymejorar el rendimiento.

Page 74: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

Concesión de autorización para el acceso a losdatos: permite al administrador determinar aque parte de la base de datos puede accedercada usuario .

Mantenimiento rutinario: algunos ejemplosde actividades rutinarias de mantenimientodel administrador son:

Page 75: BASE DE DATOS - comunidad.ingenet.com.mxcomunidad.ingenet.com.mx/ingjacquez/files/2010/10/... · tienda de abarrotes, una farmacia, un videoclub. ... de datos relacionales es SQL.

- Copia de seguridad periódica de la base de datos,para prevenir la perdida de datos en caso dedesastres.

- Asegurarse de que haya suficiente espacio libre endisco para las operaciones normales y aumentar elespacio según sea necesario.

- Supervisión de los trabajos que se ejecuten en la basede datos