Sei sulla pagina 1di 7

Apuntes de Bases de datos 15/01/10

¿Por qué usar bases de datos?


Para ayudar a las personas a llevar un registro de las cosas:
• Supermercado (inventario, puntos de venta)
• Bancos (depósitos, retiros, estados de cuenta)
• Comercio (clientes, productos, contabilidad)
• Consultorios médicos (clientes, historial)

Problemas que resuelven las bases de datos


• Poca eficiencia en manejo de listas (ej: excel)
• Manejo de versiones al compartir la lista
• Actualizar el teléfono de un cliente con varios registros
• En caso de borrar un registro, se pierden otros datos

Qué es una base de datos


Una colección compartida de datos lógicamente relacionados, junto con una descripción de estos datos, que están
diseñados para satisfacer las necesidades de información de una organización.
Fuente: Connolly, T. & Begg, C. (2005) Sistemas de bases de datos. Un enfoque práctico para diseño, implementación y
gestión. Cuarta edición. Pearson Educación.

Herramienta para el mantenimiento y manipulación de información de forma eficiente y efectiva, es decir, que los datos
se protegen frente a pérdidas o daños accidentales, no utilizan más recursos (humanos o informáticos) de los necesarios
y se pueden recuperar de diferentes formas.
Fuente: Riordan, Rebecca M. (2000). “Diseño de bases de datos relacionales con Access y SQL Server”. Microsoft
Press.

Características de una base de datos


1. Es una colección de datos correlacionados. Un conjunto de datos al azar no se puede considerar una base de
datos.
2. Es diseñada, construida y alimentada con datos para un propósito específico. Tiene algunas aplicaciones
preconcebidas en las cuales están interesados ciertos usuarios.
3. Representa algún aspecto del mundo real, por lo que los cambios en ese aspecto del mundo son reflejados en la
base de datos.
4. Los datos son almacenados de tal forma que son independientes de los programas que los usan

Componentes de una base de datos


Base de datos: conjunto autodescriptivo de registros relacionados
1. Usuarios
2. Aplicaciones
3. Sistema de administración de la base de datos (DBMS)
4. Base de datos. Grupo de tablas (relaciones) asociadas
• Cada tabla tiene información de un tema
• Clave primaria: identificador único
• Clave foránea: permite relacionar con otra tabla donde ese dato es el identificador único
• Datos del usuario
• Índices
• Metadatos: información de la estructura de la base de datos que está grabada dentro de la misma
• Stored procedures: programas almacenados dentro de la base de datos para ser llamados por otros
programas
• Triggers: procesos que se ejecutan cuando se presenta un determinado evento (ejemplo: al borrar un
registro)
SQL (Structured Query Language) sirve para acceder a los datos en la tabla

Valentín Belisario Domínguez Vera 1


Apuntes de Bases de datos 15/01/10

Sistema manejador o gestor de base de datos (SMBD o SGBD)


Es el software que interactua con los programas de aplicación del usuario y con la base de datos. Ejemplo de algunos
SMBD propietarios (comerciales) y libres (open software) son:
Access (Microsoft)
SQL Server (Microsoft)
Oracle Database 11g (Oracle)
Advantage Database Server (Sybase)
Paradox
Progress Server (Progress)
DB2 (IBM)
Informix Dynamic Server (IBM)

MySQL (Sun Microsystems)


Postgresql 8.3.7 (Postgresql)
Firebird
SQLite
DB2 Express-C
Apache Derby

Características de los SMBD


1. Los datos son almacenados de tal forma que son independientes de los programas que los usan.
2. Las funciones de añadir nuevos datos, consultar y modificar los datos existentes, son cuidadosamente
controladas.
3. Los datos están estructurados de tal forma que proveen la base para el desarrollo de futuras aplicaciones.
4. Con los Sistemas manejadores de bases de datos, los programadores pueden vivir en una total ignorancia de
cómo está almacenada la información.

Funciones típicas de un SMBD


• Almacenamiento, extracción y actualización de datos.
• Control de concurrencia.
• Manejo de transacciones.
• Recuperación de datos.
• Seguridad de los datos.
• Integridad de los datos.

Componentes de un SMBD (SGBD)


• Procesador de consultas. Convierte las consultas en instrucciones a bajo nivel.
• Gestor de base de datos. Mantiene comunicación con las consultas enviadas por el usuario y los programas de
aplicación; para satisfacer las solicitudes de éstos, hace llamadas al gestor de archivos.
• Gestor de archivos. Se encarga de la asignación del espacio de almacenamiento en disco para los registros.
• Gestor de catálogo. Se encarga del acceso al catálogo del sistema y de mantenerlo.
• Compilador de lenguaje de definición de datos. Convierte las instrucciones para la definición de datos a tablas.
• Pre-procesador de lenguaje de manipulación de datos. Convierte las instrucciones de manipulación de datos al
código interno apropiado.

Ventajas de un SMBD (SGBD)


• Organización. Los cambios a la estructura se hacen a través del administrador de la base de datos.
• Reducción de redundancia de información. Se ahorra espacio y se evitan inconsistencias.
• Compartición de datos. Muchas aplicaciones pueden usar los datos.
• Integridad. Datos correctos y consistentes.

Valentín Belisario Domínguez Vera 2


Apuntes de Bases de datos 15/01/10

Desventajas de un SMBD (SGBD)


• Los SMBD actuales consumen más recursos computacionales (espacio en disco, memoria, etc.) que los
sistemas tradicionales de archivos.
• Hace falta personal capacitado para aplicar correctamente la filosofía de base de datos.
• El costo de adquirir y usar un SMBD es más alto que desarrollar con archivos tradicionales en lenguajes de
programación.
• Los procesos de seguridad, integridad y compartición de datos causan que se degrade el tiempo de respuesta

Tipos de Usuarios
• Usuarios normales – invocan programas de aplicación que se han escrito previamente
o Ej. acceso a BD en la Web (cuentas bancarias, carritos de la compra, gestión universitaria, etc…)
• Programadores – escriben programas que embeben las llamadas a la BD o a otros sistemas de información.

Valentín Belisario Domínguez Vera 3


Apuntes de Bases de datos 15/01/10

o Utilizan herramientas DRA (.Net, Powerbuilder, VB, Jbuilder, eclipse…)


• Administradores (depende del tamaño de la organización) :
o De Sistemas y seguridad
o De Red
o De Bases de Datos
o Etc…

Administrador de Sistemas
Responsable del mantenimiento de un sistema informático existente. • Sus responsabilidades generalmente incluyen:
• Realizar copias de seguridad.
• Actualizar el sistema operativo, y configurar los cambios.
• Instalar y configurar el nuevo hardware y software.
• Agregar, borrar y modificar información de las cuentas de usuarios, reestablecer contraseñas, etc.
• Responder consultas técnicas.
• Responsable de la seguridad.
• Responsable de documentar la configuración del sistema.
• Resolución de problemas.
• Configuración óptima del sistema.
• Implantación de Planes de Recuperación ante Desastres (PRD).

Administrador de red
Responsable del mantenimiento y configuración de la red. Tareas:
• Despliegue, mantenimiento y monitoreo del engranaje de la red: switches, routers, cortafuegos, etc.
• Asignación de direcciones, asignación de protocolos de ruteo y configuración de tablas de ruteo así como,
configuración de autenticación y autorización de los servicios.
• Vigilar el uso eficiente de la red
• Realizar el diseño y seguridad de la red

Administrador de Datos (DA)


Responsable de la planificación y coordinación de las fuentes de datos de la organización. Tareas:
• Proporciona control centralizado sobre los datos
o Definición de datos (nombre, contenido, formato, dominio,…)
o Junto con los usuarios, define la vista conceptual de la base de datos (la información que se guardará).
o Determinar la fuente fidedigna de dónde se ha de tomar el dato
• Coordina la integridad, seguridad, privacidad y control de los datos. Establece normas y procedimientos para
controlar
o la seguridad de acceso a los datos (usuarios, roles, certificados,..)
o la integridad de los datos
o cambios a cualquier nivel de la arquitectura de la base de datos
• Comunicarse con gerentes del negocio y con los usuarios para identificar nuevas necesidades y planificar su
desarrollo.
• Generalmente es un experto en diseño de BD y conocedor del negocio

Administrador de la base de datos


Responsable del correcto funcionamiento del SGBD a nivel técnico. Debe mantener la integridad, la seguridad y la
disponibilidad de los datos del sistema.
• Instalar, configurar y actualizar el SGBD
• Administrar el respaldo y la recuperación de BDs
o Define procedimientos para recuperar la base de datos en caso de fallas (evitar la pérdida de datos).
• Monitorear el rendimiento y espacio de almacenamiento del SGBD
o Sintonización (tunning) → eficiencia

Valentín Belisario Domínguez Vera 4


Apuntes de Bases de datos 15/01/10

• Aplicar en el SGBD las normas y procedimientos establecidos para controlar la seguridad y la integridad de los datos
o Es responsable de evitar que personas no autorizadas hagan uso de la base de datos.
o Especifica las vistas externas de los diferentes usuarios.
• Ayudar a los programadores y diseñadores de BD a utilizar eficientemente las capacidades del SGBD.
• Resolver problemas técnicos

Nota: El diseño lógico y físico de las bases de datos a pesar de no ser obligaciones de un administrador de bases de
datos, es a veces parte del trabajo (generalmente el paso de lógico a físico). Esas funciones, por lo general, están
asignadas a los analistas/diseñadores de bases de datos.

DA vs DBA
Administradores de Datos:
• Las responsabilidades de los DA se centran en el desarrollo de los procedimientos y las políticas generales para el
SI.
• Están muy involucrados en las primeras etapas del ciclo de vida del SI, desde la planificación de la BD hasta el
diseño lógico.

Administradores de Bases de Datos:


• Los DBA interactúan con el sistema y con los usuarios y suelen tener responsabilidades más bien técnicas.
• Juegan un papel primordial en la planificación y el desarrollo de BD y en la formación de los usuarios y están más
relacionados con las fases de diseño de la aplicación y el diseño físico de la base de datos, así como con el
mantenimiento operacional.

Abstracción de la información
Uno de los objetivos principales de un sistema manejador de base de datos es proporcionar a los usuarios una visión
abstracta de la información; en ocasiones el sistema oculta ciertos detalles relativos a la forma en que los datos se
almacenan y mantienen.

Niveles de abstracción de la información


Existen varios niveles de abstracción en los que puede observarse una base de datos:
• Nivel interno o físico
• Nivel conceptual o lógico
• Nivel externo o de vistas

Nivel interno o físico


En este nivel se indica cómo se almacenan físicamente los datos, describe las estructuras de datos y los métodos de
acceso a la base de datos.
Este nivel es dependiente del SMBD. Se encarga de aspectos como:
1. Técnicas de criptografía.

Valentín Belisario Domínguez Vera 5


Apuntes de Bases de datos 15/01/10

2. Técnicas de compresión de datos.


3. Estrategias de almacenamiento.
4. Métodos de acceso.

Nivel conceptual o lógico


1. Describe cuáles son los datos reales que están almacenados en la base de datos, y qué relaciones existen entre
ellos.
2. Este nivel lo utilizan los administradores de base de datos, quienes deciden qué información se guarda.
3. Mediante un esquema conceptual se describe la estructura de toda la base de datos para una empresa u
organización.
4. En este nivel no aparecen los detalles de las estructuras de almacenamiento y se concentra en describir
entidades, atributos, relaciones, operaciones y restricciones.
5. Se puede utilizar un modelo conceptual o un modelo lógico para especificar el esquema, como por ejemplo el
Modelo entidad-relación.

Nivel externo o de vistas


1. En este nivel se describe sólo una parte de la base de datos.
2. Es definido por usuarios o programadores de aplicaciones en conjunto con el administrador de la base de datos.
3. Cada esquema externo describe la parte de la base de datos que interesa a un grupo de usuarios y oculta a ese
grupo el resto de la base de datos.
4. En este nivel deben especificarse las restricciones de uso, derecho a borrar, modificar o insertar información.

Independencia de datos
La arquitectura de tres niveles es útil para explicar el concepto de independencia de datos, el cual se refiere a la
capacidad para modificar el esquema en un nivel sin tener que modificar el esquema del nivel inmediato superior.
Hay dos tipos de independencia de datos:
Independencia lógica: Los cambios que se realicen al nivel conceptual no afectan al nivel externo.
Por ejemplo, se pueden agregar o eliminar entidades, atributos o relaciones afectando sólo la vista del usuario que
solicita el cambio, sin afectar las vistas de los demás.
Independencia física: Los cambios que se realicen al nivel interno no afectan al nivel conceptual. Por ejemplo, se
pueden cambiar los dispositivos de almacenamiento y organizar en forma diferente a los archivos sin afectar el
nivel conceptual.

Proceso de modelación de datos


Pasos a seguir
1. Crear el plan del proyecto (alcance, departamentos involucrados)
2. Determinar requerimientos (recopilación de datos)
3. Especificar entidades y relaciones
4. Determinar identificadores
5. Especificar atributos
6. Definir dominios
7. Validar modelo

Determinar requerimientos (recopilación de datos)


Existen diversas maneras con las que se puede recopilar información que puede ser útil a la hora de diseñar un sistema
con base de datos, entre las más comunes se encuentran
• Entrevistas con los usuarios
• Cuestionarios
• Observaciones de la actividad diaria
• Revisión de diagramas de flujo
• Análisis de diccionario de datos y de bases de datos actuales (ingeniería en reversa usando Erwin)
• Revisión de manuales de procesos, de operación, ente otras más.
• Formas y reportes (actuales y futuras)
• Interfaces formales con otros sistemas (XML)
• Expertos en el tema

Valentín Belisario Domínguez Vera 6


Apuntes de Bases de datos 15/01/10

Determinar requerimientos (recopilación de datos)


La entrevista puede ser estructurada, de manera que se elaboran un conjunto de preguntas que todos van a responder; o
puede ser no estructurada, lo que proporciona al entrevistador una mayor flexibilidad al realizar las preguntas adecuadas
a quien responde, así el entrevistador puede explotar áreas que surgen espontáneamente durante la entrevista.

El cuestionario es una alternativa muy útil para la entrevista; si embargo, existen ciertas características que pueden ser
apropiadas en algunas situaciones e inapropiadas en otra. Al igual que la entrevista, debe diseñarse cuidadosamente
para una máxima efectividad. Hay cuestionario abierto, que se aplican cuando se quieren conocer los sentimientos,
opiniones y experiencias generales; también son útiles al explorar el problema básico, y hay cuestionario cerrado, este
limita las respuestas posibles del interrogado. Este formato es el método para obtener información sobre los hechos.
También fuerza a los individuos para que tomen una posición y forma su opinión sobre los aspectos importantes.

Determinar requerimientos (recopilación de datos)


Otra técnica útil consiste en observar a las personas cuando efectúan su trabajo. Con esta técnica es posible estudiar a
las personas en sus actividades de grupo y como miembros de la organización. Permite al analista determinar qué se
está haciendo, cómo se está haciendo, quién lo hace, cuándo se lleva a cabo, cuánto tiempo toma, dónde se hace y por
qué se hace.

Otra alternativa es la revisión de diagramas de Flujo, para determinar cómo funciona realmente el proceso para producir
un resultado. El resultado puede ser un producto, un servicio, información o una combinación de los tres. Al examinar
cómo los diferentes pasos de un proceso se relacionan entre sí, se puede descubrir con frecuencia las fuentes de
problemas potenciales.

Determinar requerimientos (recopilación de datos)


Un diccionario de datos es una lista de todos los elementos incluidos en el conjunto de los diagramas de flujo de datos
que describen un sistema. Y la revisión del diccionario de datos proporciona información adicional sobre el sistema. Los
elementos principales en un sistema, son el flujo de datos, el almacenamiento de datos y los procesos. El diccionario de
datos almacena detalles y descripciones de estos elementos. Si los analistas desean conocer qué programas utilizan qué
datos, cuántos caracteres hay en un dato, con qué otros nombres se le conoce en el sistema, o en donde se utilizan
dentro del sistema y qué usuarios están interesados en unos u otros informes, deben ser capaces de encontrar las
respuesta en un diccionario de datos desarrollado apropiadamente.

El diseño de una base de datos


Antes de crear una base de datos en un SMBD, se requiere tener el diseño de la misma.
Los diseñadores de la base de datos tienen la responsabilidad de identificar los datos que serán almacenados, así como
de escoger las estructuras más apropiadas para representarlos.
Los diseñadores se comunican con los futuros usuarios de la base de datos para entender sus requerimientos y validar
que el diseño cumpla con ellos.

Valentín Belisario Domínguez Vera 7

Potrebbero piacerti anche