Capitulo 1
Capitulo 1
Capitulo 1
CAPITULO I
CONCEPTOS DE SISTEMAS DE BASES DE DATOS
SBD
B.D. S.A.B.D.
Ej. Oracle
Usuarios/Programadores
SISTEMA DE
BASE DE Programas de Aplicaciones
DATOS /Consultas
Software
DBMS
Software para procesar
Consultas/Programas
Datos
Definición de los
Almacenados
datos almacenados esquema en la Base de instancia
(Metadatos)
Datos
Ambiente de Archivo
Los lenguajes de
alto nivel de ba-
ses de datos agili-
zan el proceso de
desarrollo de a-
plicaciones y ali-
vian las tareas de
mantenimiento.
Ventajas
1. Los datos se comparten (la información es un recurso de la
organización)
2. Control de la redundancia de la información
3. Control de la consistencia en la información
4. Se mejoran los estándares con respecto a los datos
5. Mejora la seguridad de los datos (control de accesos)
6. Mejora la integridad de los datos (restricciones de
integridad). Por ejemplo, un jefe no puede ganar menos
que sus subordinados
7. Permite balancear requerimientos en conflicto
8. Mejora el tiempo de desarrollo de nuevas aplicaciones
9. Mejora la accesibilidad a los datos (“query languages”)
10. Economía de escala (producto de la asignación
centralizada de los recursos)
11. Mejor control de acceso concurrente a los datos
12. Se dispone de procedimientos de respaldo (“Back – Up”)
y recuperación (caídas del sistema y fallas del hardware)
1. 11
Desventajas
1. Alto costo de un DBMS
2. Mayor costo de hardware
3. Mayor costo de programación
4. Costo de conversión es alto
5. Procesamiento más lento de algunas aplicaciones
6. Se incrementa la vulnerabilidad (los recursos son
centralizados)
7. Mayor dificultad en la recuperación (se debe determinar
qué transacciones fueron completadas, cuáles no, etc)
INSTITUTE
¿Cómo se almacenan?
Arquitectura de 3 esquemas
1. 13
Nivel Interno
Tiene un esquema interno, que describe la estructura de
almacenamiento físico de la base de datos.
El esquema interno utiliza un modelo de datos físico y
describe todos los detalles del almacenamiento de datos y
las rutas de acceso a la base de datos.
Nivel Conceptual
Tiene un esquema conceptual que describe la estructura de
toda la base de datos para una comunidad de usuarios
Define el mundo real en un nivel abstracto, en un modelo
de datos de alto nivel
1. 14
Ejemplo:
Esquema Externo
Subschema1: E1 (nombre, dirección, teléfono)
Subschema2: E2 (nombre, depto, sueldo)
Esquema Interno
Archivo Empleados
Nombre : char [20]
Dirección : char [40]
Teléfono : char [10]
Depto : char [15]
Sueldo : REAL
Archivo índices por nombre
Archivo índices por depto
1. 17
Independencia física
Es posible hacer cambios en la base de datos física (esquema
interno) sin que haya que cambiar el esquema conceptual,
por lo tanto tampoco es necesario cambiar los esquemas
externos
Por ejemplo:
Suministrar una ruta de acceso para mejorar la velocidad
de recuperación ciertos registros.
Reorganizar algunos archivos físicos.
Cambiar la organización de un archivo de secuencial
indexado a directo
Independencia lógica
Es posible modificar la base de datos conceptual sin
modificar los subschemas o los programas de aplicación.
Por ejemplo:
Agreagando un atributo atributos
Una tabla se separa en dos para mejorar el rendimiento de
ciertas consultas,
Agregar otro tipo de entidades a la base de datos.
Usuarios
DBA: Administrador de la base de datos. Responsable
de:
El acceso autorizado a la base de datos
La coordinación y monitoreo de uso de la BD
La seguridad
Los tiempos de respuesta
La definición del esquema.
La definición de la estructura de almacenamiento y
del método de acceso.
La modificación del esquema y de la organización
física.
La especificación de las limitantes de integridad.
Usuario Usuario
Casual
ingenuo
(SQL)
S.A.B.D.
B.D
1. 24
Casuales
Usuarios Ingenuos
Usuario 1 Base
DBMS datos
Diccionario
de datos
Usuario 2
El DBA monitorea la
performance del DBMS.
Inicia cambios si es
necesario
Administrador
B.D.
Programador
Aplicaciones
D
B
Interface 3 A
Interface 2
Interface 1
Persona a
Ambiente operacional de un DBMS cargo de la
Escribe el código para mantención
procesar los requerimientos del sistema
de datos por parte de los
usuarios
El DBA:
Controla todas las definiciones de
El DBA: datos y establece estándares para
define derechos de los todos los programadores de
usuarios y responsabilidades. aplicaciones que accesan la BD.
Mediador entre conflictos que Capacita a los programadores
pueden surgir.
Capacita a los usuarios
1. 25
Responsable de procesar
Programa o Query las instrucciones DML y
optimizar las consultas
Procesador Esquema
Tablas de de Consultas
Autorización Compilador de
DDL
Tablas de Administrador de la BD
Acceso (Database Management)
frecuente Tablas de
descripción
del Esquema
Administrador de
archivos
Application
programmers
APPLICATION
PROGRAMS
Casual
DBA staff users Parametric users
(ingenuos)
Precompiler
DDL PRIVILEGED INTERACTIVE
STATEMENTS COMMANDS QUERY
Host languaje
compiler
A Query
E DML COMPILED
Compiler
DDL STATEMENTS (CANNED)
System
Compiler Catalog TRANSACTIONS
B
Data DML
Dictionary execution
C Compiler
Run-time execution
execution
Database
Processor
D
Stored Concurrency Control/
Data Backup/Recovery Subsystems
Manager
STORED DATABASE
Precompilador
Precompilador de
Procesador de lenguaje de
lenguaje de de consulta definición de
manejo de datos
datos
Códigos objeto
de los programas Manejador
de aplicaciones
de base de Sistemas de
datos manejo de base
de datos
SABD Relacionales
ORACLE
Oracle es básicamente una
herramienta cliente/servidor para la
gestión de Bases de Datos. Es un
producto vendido a nivel mundial,
aunque la gran potencia que tiene y su elevado precio hace
que sólo se vea en empresas muy grandes y multinacionales,
por norma general.
1. 35
Oracle 7 8 9 10 11
1. 36
Oracle Express
Business Intelligence:
OLAP Ejemplo de SABD Oracle
Data Warehousing
Data Mining
Arquitectura de ORACLE
1. 37
Access
Es un sistema de gestión de bases de datos Relacional creado
y modificado por Microsoft para uso personal de pequeñas
organizaciones. Es un componente de la suite Microsoft
Office aunque no se incluye en el paquete "básico".
MySQL
Es un sistema de gestión de base
de datos relacional, multihilo y
multiusuario con más de seis
millones de instalaciones Se
desarrolla como software libre.
1. 40
INFORMIX
Informix es una familia de productos
RDBMS de IBM, adquirida en 2001
a una compañía (también llamada Informix o Informix
Software) cuyos orígenes se remontan a 1980.
PostgreSQL
Es un servidor de base de
datos relacional orientada
a objetos de software libre.
Redis
Redis está basado en
el almacenamiento clave-valor.
Podríamos verlo como un vector
enorme que almacena todo tipo
de datos, desde cadenas, hashses, listas, etc.
1. 42
Cassandra
Al igual que Redis, Cassandra
también utiliza almacenamiento
clave-valor. Es un SGBD
NoSQL distribuido y masivamente escalable.