Вы находитесь на странице: 1из 41

BASES DE DATOS Conceptos Bsicos

Ricardo Montiel Gonzaga Universidad Intercultural del Estado de Mxico

Un poco de historia
Sistemas de archivos: Surgieron a raz de la necesidad de almacenamiento de la informacin para su correspondiente reutilizacin (persistencia persistencia) Desventajas: Redundancia de los datos Los archivos estn separados unos de otros (no se pueden combinar fcilmente) Alto costo para la propagacin de cambios Inconsistencia debido a actualizaciones simultneas

Un poco de historia
Procesamiento Usuario del Archivo de Clientes de Clientes Procesamiento de Archivo de Prstamos Archivo de Clientes

Prstamos Usuario del Archivo de Prstamos Por cada prstamo se guarda la informacin del cliente correspondiente: Redundancia

Un poco de historia
Por qu surgieron los sistemas de Bases de Datos? Necesidad de solucionar las debilidades de los sistemas de archivos Capacidades:
Manejo de persistencia Soporte por lo menos de un modelo de datos Soporte de un lenguaje de alto nivel que permita manipular y definir la estructura de la informacin Control de acceso Evitar inconsistencias al compartir la informacin
4

Antes
Dpto. Personal Empleados Dpto. Ventas Clientes Ventas Dpto. Contabilid Cuentas

Inventario
Personal

Ahora
SGBD

BASE DE DATO
Empleados Clientes Ventas Inventario Cuentas
5

Ventas

Contabilidad

Definicin
Una base de datos es un conjunto estructurado de datos coherentes
Coleccin disponible de informacin

Definicin
Una base de datos es un conjunto estructurado de datos coherentes
Coleccin organizada en subconjuntos, en funcin de ligas y de relaciones entre las diferentes informaciones (estructura lgica)
7

Definicin
Una base de datos es un conjunto estructurado de datos coherentes
No hay contradiccin entre los datos ligados, no hay prdida de informacin, aun sabiendo que hay una utilizacin compartida de los datos entre varios usuarios

Definicin
Un Sistema de Gestin de Bases de Datos (SGBD) es un software que permite manipular las bases de datos
Construir Utilizar Mantener Reorganizar
9

Tablas de datos
Nombre-cliente Gonzlez Gmez Lpez Abril Gonzlez Santos Ruprez Gmez dni 19283746 19283746 67789901 96396396 19283746 32112312 24466880 19283746 calle-cliente Arenal Carretas Mayor Preciados Arenal Mayor Ramblas Carretas ciudad-cliente La Granja Cerceda Peguerinos Valsan La Granja Peguerinos Len Cerceda nmero-cuenta C-101 C-215 C-102 C-305 C-201 C-217 C-222 C-201

Campos

Atributos

nmero-cuenta C-101 C-215 C-102 C-305 C-201 C-217 C-222 C-201

saldo 100000 140000 80000 70000 18000 150000 140000 130000

10

Sistema de Gestin de Bases de Datos


Propiedades fundamentales
     Independencia de los datos (OJO es muy importante) Acceso eficiente a los datos Integridad y seguridad de los datos Administracin de los datos Acceso concurrente y recuperacin en caso de crash

Los SGBD deben cumplir con las propiedades ACID para las transacciones:

Atomicity (Atomicidad: las transacciones son atmicas)

Consistency (Consistencia: una transaccin transforma un estado consistente de la BD en otro) Isolation (Aislamiento: las transacciones estn aisladas entre si) Durability (Durabilidad: despus que una transaccin ha sido confirmada ella persiste)
11

Algunas definiciones
Esquema de una Base de Datos Cuando una base de Datos es Datos: diseada interesa definir una estructura para sta. Esta estructura permanece esttica durante un gran perodo de tiempo, aunque puede sufrir modificaciones ocasionales Instancia Es la informacin que en un determinado instante del Instancia: tiempo posee la base de datos y que cambia permanentemente (excepto en algunos tipos de bases de BD particulares)

12

Algunas definiciones
Usuario final: El que interacta con la base de datos, por lo general a travs de aplicaciones e interfaces Usuario especialista: El que disea y programa aplicaciones para usuarios finales. DBA (Database Administrator): El que administra la base de datos. Qu hace?

13

Funciones y componentes principales de un SGBD Peticiones Peticiones


DML planeadas Esquemas externos DML No planeadas Procesador Lenguaje Consulta Procesador DML
Peticiones compiladas

Procesador DDL

Optimizador Esquemas y transformaciones

DDL: lenguaje de definicin de datos DML: lenguaje de manipulacin de datos

Peticiones optimizadas

Manejador de transacciones Manejador de almacenamiento

Bases de datos I

Base de datos Datos y Universidad Nacional de Colombia Metadatos

Fuente: Introduccin a los sistemas de bases de datos C.J. Date 14

Componentes funcionales de un SGBD


Metadatos o Diccionario de Datos (D.D): Contiene el esquema de la B.D, los usuarios, los permisos de acceso, etc. Son datos sobre los datos. Almacena la informacin que permite la traduccin entre los 3 niveles de la Arquitectura ANSI/SPARC* Optimizador de consultas: Define el plan de ejecucin de operaciones solicitadas por los usuarios, de tal manera que se lleven a cabo de la manera ms eficiente posible Manejador de transacciones: Controla el acceso y la concurrencia de operaciones

15

Componentes funcionales de un SGBD


Manejador de almacenamiento tiene dos componentes: -Manejador de archivos recupera desde disco los anejador bloques que contienen la informacin solicitada por una transaccin. -Manejador de buffer anejador mantiene en memoria principal la informacin ms usada y decide cuando llevar a disco alguno de sus bloques.

16

SGBD - Funciones
Soporta DML: Lenguaje para actualizacin,
almacenamiento y recuperacin de datos

Ofrece optimizacin en la bsqueda de la informacin Soporta DDL : Lenguaje para definir los datos Metadatos (DD): Catlogo autodescriptivo, informacin sobre los objetos existentes en el sistema Datos sobre los datos

17

Ventajas de un SGBD
1. 2. 3. 4. 5. Reutilizacin de datos y programas Control de redundancia Estandarizacin En qu sentido? Consistencia (No hay redundancia) Es posible equilibrar las cargas de los requerimientos (establecer prioridades)
18

Ventajas de un SGBD
6. Integridad (Se cumplen las reglas establecidas Por quin?) 7. Seguridad 8. Rapidez de desarrollo 9. Mantenimiento y reingeniera: cambios en la estructura de datos sin cambiar los programas que los usan (hasta cierto punto)

19

Desventajas de un SGBD
1. Tamao 2. Susceptibilidad a fallas (Discutible) 3. Complejidad en la recuperacin a fallas (Discutible) 4. Puede llegar a trabajar en forma lenta debido a la cantidad de verificaciones que debe hacer
20

Sistemas Manejadores de Base de Datos (SMBD)


Es un programa o conjunto de aplicaciones utilizado para almacenar, manipular y recuperar informacin en una BD. El propsito principal de estos sistemas es:
Facilitar el proceso de definir, construir y manipular bases de datos.

Sistemas Manejadores de Base de Datos (SMBD)


Principales funciones:
Definir la base de datos. Crear y organizar las bases de datos. Manejar los datos de acuerdo a las peticiones de los usuarios. Mantener un registro del uso de las bases de datos. Realizar respaldo y recuperacin. Mantener seguridad e integridad de las bases de datos.

Sistemas manejadores ms utilizados


 Oracle
Inicia en los aos 70s con el nombre de Rational Software. Es desarrollado por la corporacin Oracle. Entre sus caractersticas se pueden destacar:
Integridad referencial Portabilidad Compatibilidad Soporte multiplataforma

Ventajas:
Uso de particiones para mejorar la eficiencia en la replicacin de base de datos. Administracin de bases de datos distribuidas. El software del servidor puede ejecutarse en diversos sistemas operativos. Gran cantidad de documentacin.

Sistemas manejadores ms utilizados


Sql Server
Desarrollado por la compaa Microsoft. Este sistema est basado en el lenguaje Transact-SQL. Principales caractersticas:
Escalabilidad, estabilidad y seguridad. Soporta procedimientos almacenados. Permite trabajar en modo cliente-servidor. Permite administrar informacin de otros servidores de datos.

Sistemas manejadores ms utilizados


DB2 Nace en los aos 70 bajo la firma de la empresa IBM. Principales caractersticas:
Manejo de objetos grandes. Variada escalabilidad. Integridad referencial.

Ventajas:
Tablas de resumen. Tablas replicadas. Respaldos y seguridad de datos. Portabilidad. Es confiable y posee un muy buen soporte tcnico.

Sistemas manejadores ms utilizados


Informix
Creado por Informix Software Inc. Incluye un RDBMS (sistema administrador de base de datos relacionales) basado en SQL. Caractersticas
Gestiona mltiples bases de datos remotas desde una nica consola. Utiliza plataforma NT y UNIX. Opcin de conectar datos relacionales de pginas web. Cumple con los niveles de seguridad. Utiliza un manejador relacional de base de datos orientado a objetos (ORDBMS).

Sistemas manejadores ms utilizados


MySQL
Creada por la empresa sueca MySQL AB. Es un sistema manejador de base de datos relacional, licenciado bajo la GPL de la GNU. Probablemente es el manejador ms usado en el mundo del software libre, debido a su gran rapidez y facilidad de uso. Caractersticas
Aprovecha la potencia de sistemas multiprocesador, gracias a su implementacin multihilo. Soporta gran cantidad de tipos de datos para las columnas. Dispone de API's en gran cantidad de lenguajes (C, C++, Java, PHP, entre otros). Portabilidad entre sistemas. Mantiene un buen nivel de seguridad en los datos.

Motores de Base de Datos


Es una pieza de software que es utilizada por los sistemas manejadores de base de datos para crear, consultar, modificar y borrar datos. Es el ncleo del SMBD, ya que controla el flujo de los datos y sobre l se ejecutan la sentencias de manejo de los mismos.

Motores de Base de Datos


Algunos ejemplos de los motores de bases de datos:
Oracle (diferentes S.O) Sql Server (principalmente sistemas Windows) Informix (Mundo UNIX) DB2 (AS/400 de IBM) MySQL (LINUX, Windows) Postgrex (LINUX) SyBase (Mundo UNIX)

Tamao Mximo BD

Tamao Mximo Tablas

Tamao Mximo Filas

Tamao Mximo Columnas por Fila

Tamao Mximo Blob/Clob

Tamao Mximo del Caracter

Tamao Mximo del Entero

Valor Mnim o de Date

Valor Mxim o de Date

Tamao Mximo del nombre de la columna

DB2

512 TB (512 TiB)

512 TB

32,677 B

1012 2 GB

32 KB (32 KiB) 2 GB 6

64 bits

9999

128

Microsoft 524,258 TB SQL Server (32,767 files * 16 TB ) MySQL 5 Ilimitado

524,258 TB

Ilimitado

30000 2 GB

126 bits 2

9999

128

2 GB (Win32 FAT32) hasta 16 TB (Solaris)

64 KB 3

4096 4

4 GB (longtext, longblob)

64 KB (texto)

64 bits

1000

9999

64

Oracle

Ilimitado (4 GB * bloque por espacio de tabla)

4 GB *

Ilimitado

1000 Ilimitado

4000 B

126 bits

-4712

9999

30

PostgreSQ L

Ilimitado

32 TB

1.6 TB

250-1600 dependiend o del tipo

1 GB

1 GB

Ilimitado

-4713 587489 7

63

Lenguajes de Base de Datos


Lenguaje de definicin de datos (DDL)
Es un lenguaje de definicin de datos que es proporcionado por el sistema manejador de base de datos. Permite a los usuarios llevar a cabo las tareas de definicin de las estructuras que almacenarn los datos as como de los procedimientos o funciones que permitan consultarlos.

Lenguajes de Base de Datos


Lenguaje de manipulacin de datos (DML)
Es un lenguaje que permite la manipulacin de datos y registros en una base de datos, este es aportado por el SMBD. Se clasifican en dos grandes grupos:
Lenguajes de consulta procedimentales
El usuario da instrucciones al sistema para que realice una serie de procedimientos u operaciones en la base de datos para calcular un resultado final.

Lenguajes de consulta no procedimentales


El usuario describe la informacin deseada sin un procedimiento especfico para obtener esa informacin.

Lenguajes de Base de Datos


SQL (Structured Query Language)
Es un lenguaje de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en stas. Es un lenguaje declarativo de "alto nivel" o "de no procedimiento, lo que permite una alta productividad en codificacin y la orientacin a objetos.

Lenguajes de Base de Datos


Lenguaje Transact-Sql
Transact-SQL (T-SQL) es el lenguaje de programacin del SQL Sever, a travs de l podemos realizar muchas operaciones relacionadas con el SQL sin tener que volver a pasar por cdigo ASP o VB. No se utiliza dentro de estos lenguajes sino en desde los llamados Stored Procedures (SP) que estn en la propia base de datos.

Unidad III. Bases de Datos Bases de datos distribuidas


 Conceptos bsicos.  Campos llave o campos comunes.  Llave primaria.  Llave secundaria.  Esquema y subesquema.

Bases de datos distribuidas


En un sistema distribuido de bases de datos se almacena la base de datos en varias computadoras. Varios medios de comunicacin, como las redes de alta velocidad o las lneas telefnicas, son las que pueden poner en contacto las distintas computadoras de un sistema distribuido. No comparten ni memoria ni discos. Las computadoras de un sistema distribuido pueden variar en tamao y funcin, pudiendo abarcar desde las estaciones de trabajo a los grandes sistemas. Las bases de datos distribuidas normalmente se encuentran en varios lugares geogrficos distintos, se administran de forma separada y poseen una interconexin ms lenta. En un sistema distribuido se dan dos tipos de transacciones, las locales y las globales. 35

UNIDAD III Bases de Datos Base de datos distribuidas

Bases de Datos Distribuidas

Guadalajara

Toluca

Red

Monterrey

Distrito Federal
36

UNIDAD III Bases de Datos Campos llave o campos comunes

Bases de Datos Distribuidas

Definicin: Se denomina as a los campos que contenidos en diferentes tablas, registran los mismos datos con iguales atributos.
Nombre-cliente Gonzlez Gmez Lpez Abril Gonzlez Santos Ruprez Gmez dni 19283746 19283746 67789901 96396396 19283746 32112312 24466880 19283746 calle-cliente Arenal Carretas Mayor Preciados Arenal Mayor Ramblas Carretas ciudad-cliente La Granja Cerceda Peguerinos Valsan La Granja Peguerinos Len Cerceda nmero-cuenta C-101 C-215 C-102 C-305 C-201 C-217 C-222 C-201

Tabla cliente

Campos comunes o

Campos llave

Tabla cuenta
nmero-cuenta C-101 C-215 C-102 C-305 C-201 C-217 C-222 C-201 saldo 100000 140000 80000 70000 18000 150000 140000 130000

En este caso, los atributos del campo nmero-cuenta de ambas tablas son de texto y con longitud de cinco.
El propsito de esta aparente duplicidad, es para permitir la relacin entre dos o ms tablas con el fin de compartir la informacin para el procesamiento de datos.

37

UNIDAD III Bases de Datos Campos llave o campos comunes

Bases de Datos Distribuidas

Ejemplo de una consulta con dos tablas de una base de datos relacional: Obtener el nombre, la calle, ciudad, cuenta y saldo de las cuentas C-2**.

Tabla cliente
Nombre-cliente Gonzlez Gmez Lpez Abril Gonzlez Santos Ruprez Gmez dni 19283746 19283746 67789901 96396396 19283746 32112312 24466880 19283746 calle-cliente Arenal Carretas Mayor Preciados Arenal Mayor Ramblas Carretas ciudad-cliente La Granja Cerceda Peguerinos Valsan La Granja Peguerinos Len Cerceda nmero-cuenta C-101 C-215 C-102 C-305 C-201 C-217 C-222 C-201

Campos comunes o campos llave

Tabla cuenta
nmero-cuenta C-101 C-215 C-102 C-305 C-201 C-217 C-222 C-201 saldo 100000 140000 80000 70000 18000 150000 140000 130000

R e s u l t a d o
Tabla cliente
Nombre-cliente Gmez Gonzlez Santos Ruprez Gmez calle-cliente Carretas Arenal Mayor Ramblas Carretas ciudad-cliente Cerceda La Granja Peguerinos Len Cerceda

Campo llave
nmero-cuenta C-215 C-201 C-217 C-222 C-201

Tabla cuenta
saldo 140000 18000 150000 140000 130000

38

UNIDAD III Bases de Datos Llave primaria

Bases de Datos Distribuidas

Se le conoce as a los campos comunes que permiten la relacin principal entre un conjunto de tablas.

Llave primaria
Folio FG0001 FG0002 FG0003 FG0004 FG0005 FG0006 FG0007 FG0008 Cuadrante C-01 C-02 C-03 C-04 C-05 C-06 C-07 C-08 Calle 23 de Septiembre V. Carranza Felipe Villanueva Dr. Rodrguez V. Gmez Faras Fernando Soto C. Morelos Pte. Hidalgo Pte. Nmero

Tabla: Identifica
103 107 215 308 921 435 265 315 Colonia Morelos Morelos Morelos Granjas Granjas Granjas Centro Centro Hora inicio 12:15 13:25 15:45 16:35 16:48 17:00 10:40 11:30 Hora final 12:20 13:30 15:50 16:40 16:53 17:05 10:45 11:35 Fecha 4/10/00 4/10/00 4/10/00 4/10/00 4/10/00 4/10/00 5/10/00 5/10/00

Llave primaria
Folio FG0001 FG0002 FG0003 FG0004 FG0005 FG0006 FG0007 FG0008 Cuadrante C-01 C-02 C-03 C-04 C-05 C-06 C-07 C-08

Tabla: Establecimiento
Tipo de establecimiento Tienda Tienda Farmacia Papelera Tienda Refaccionaria Refaccionaria Tienda Pertenece a cadena Si No Si No No Si No No

39

UNIDAD III Bases de Datos Llave secundaria


Se le conoce as a los campos comunes que permiten una relacin particular entre un conjunto de tablas, figurando como una relacin complementaria de la llave principal. Llave secundaria
Folio FG0001 FG0002 FG0003 FG0004 FG0005 FG0006 FG0007 FG0008 Cuadrante C-01 C-02 C-03 C-04 C-05 C-06 C-07 C-08 Calle 23 de Septiembre V. Carranza Felipe Villanueva Dr. Rodrguez V. Gmez Faras Fernando Soto C. Morelos Pte. Hidalgo Pte. Nmero 103 107 215 308 921 435 265 315

Bases de Datos Distribuidas Esquema


Es la descripcin lgica de la base de datos. Proporciona los nombre de las entidades y atributos, adems de las relaciones existentes entre las diferentes tablas.

Tabla: Identifica
Colonia Morelos Morelos Morelos Granjas Granjas Granjas Centro Centro Hora inicio 12:15 13:25 15:45 16:35 16:48 17:00 10:40 11:30 Hora final 12:20 13:30 15:50 16:40 16:53 17:05 10:45 11:35 Fecha 4/10/00 4/10/00 4/10/00 4/10/00 4/10/00 4/10/00 5/10/00 5/10/00

Llave secundaria

Tabla: Establecimiento
Folio Cuadrante C-01 C-02 C-03 C-04 C-05 C-06 C-07 C-08 Tipo de establecimiento Tienda Tienda Farmacia Papelera Tienda Refaccionaria Refaccionaria Tienda Pertenece a cadena Si No Si No No Si No No

Llave primaria

FG0001 FG0002 FG0003 FG0004 FG0005 FG0006 FG0007 FG0008

40

UNIDAD III Bases de Datos Subesquema


Es una descripcin parcial lgica de la base de datos.

Bases de Datos Distribuidas

Llave primaria
Folio FG0001 FG0002 FG0003 FG0004 FG0005 FG0006 FG0007 FG0008

Llave secundaria
Cuadrante C-01 C-02 C-03 C-04 C-05 C-06 C-07 C-08

Tabla: Establecimiento
Tipo de establecimiento Tienda Tienda Farmacia Papelera Tienda Refaccionaria Refaccionaria Tienda Pertenece a cadena Si No Si No No Si No No

41

Вам также может понравиться