Brayan David Garcia AvellanedaSENA Centro MineroADSI2016
Slide 2
(DBMS) ¿Que es?
Un (Data Base Manager System) o Sistema manejador de base de Datos.
Es un software que tiene como función servir de vinculo entre el usuario y una base de datos para facilitar la manipulación de la información
utilizando principalmente un lenguaje de programación.En Palabras mas sencillas imagina que los datos están almacenados en un
disco duro sin sentido alguno, solo hay letras y números, lo que hace el
Manejador de Bases de Datos es interpretar esos números y letras en datos
útiles.
· ¿Cuál es el propósito de un Modelo Entidad Relación en las
Bases de Datos?
Entidad Relación (E-R) es un diagrama o dibujo a
través del cual representas las entidades (tablas) y sus relaciones, inclusive puedes
dar mayores detalles como los campos de cada tabla, llaves primarias, foráneas
y demás. Se desarrolló para facilitar el diseño de bases
de datos permitiendo la especificación de un esquema que representa la estructura lógica completa
de una base de datos.
· ¿Qué es la normalización en bases de datos?
La normalización es el proceso
mediante el cual se transforman datos complejos a un conjunto de estructuras de
datos más pequeñas, que además de ser más simples y más estables, son más
fáciles de mantener.Pues para normalizar la BD aplicamos las "formas normales" que
tienen por objetivo: - Evitar la redundancia de los datos. - Evitar problemas de actualización de los datos en las tablas. - Proteger la integridad de los datos.
· ¿Es importante aplicar las formas de Normalización de Base
de Datos en un Modelo Entidad Relación? Es importante por tres
razones:
Simplificación: Se trata de
reducir los modelos quedándose únicamente con los más necesarios.
Unificación: Para permitir la intercambiabilidad a nivel internacional.
Especificación: Se persigue evitar errores de identificación creando un
lenguaje claro y preciso Las elevadas sumas de dinero que los países desarrollados invierten en los
organismos normalizadores, tanto nacionales como internacionales, es una prueba
de la importancia que se da a la normalización.
Slide 6
· ¿Cuáles son los objetivos de los sistemas de bases de datos?• Abstracción de la información. Los
SGBD ahorran a los usuarios detalles acerca del almacenamiento físico de los
datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este
hecho se hace transparente al usuario. Así, se definen varios niveles de
abstracción.• Independencia. La independencia de
los datos consiste en la capacidad de modificar el esquema (físico o lógico) de
una base de datos sin tener que realizar cambios en las aplicaciones que se
sirven de ella.• Redundancia mínima. Un buen diseño
de una base de datos logrará evitar la aparición de información repetida o
redundante. De entrada, lo ideal es lograr una redundancia nula; no obstante,
en algunos casos la complejidad de los cálculos hace necesaria la aparición de
redundancias.• Consistencia. En aquellos casos en
los que no se ha logrado esta redundancia nula, será necesario vigilar que
aquella información que aparece repetida se actualice de forma coherente, es
decir, que todos los datos repetidos se actualicen de forma simultánea.
Objetivos de una BD
Slide 7
Objetivos de una BD (2)
• Seguridad. La información almacenada
en una base de datos puede llegar a tener un gran valor. Los SGBD deben
garantizar que esta información se encuentra asegurada frente a usuarios
malintencionados, que intenten leer información privilegiada; frente a ataques
que deseen manipular o destruir la información; o simplemente ante las torpezas
de algún usuario autorizado pero despistado. Normalmente, los SGBD disponen de
un complejo sistema de permisos a usuarios y grupos de usuarios, que permiten
otorgar diversas categorías de permisos.• Integridad. Se trata de adoptar las
medidas necesarias para garantizar la validez de los datos almacenados. Es
decir, se trata de proteger los datos ante fallos de hardware, datos
introducidos por usuarios descuidados, o cualquier otra circunstancia capaz de
corromper la información almacenada.• Respaldo y recuperación. Los SGBD
deben proporcionar una forma eficiente de realizar copias de respaldo de la
información almacenada en ellos, y de restaurar a partir de estas copias los
datos que se hayan podido perder.
Slide 8
Etapas de un buen Diseño de un S.I
· ¿Cuáles son las etapas para un buen diseño de un sistema de
información?Etapa de Análisis:
Es el proceso de investigar un
problema que se quiere resolver. Definir claramente el Problema que se desea
resolver o el sistema que se desea crear. Identificar los componentes
principales que integrarán el producto.
Etapa de Diseño:
Es el proceso de utilizar la
información recolectada en la etapa de análisis al diseño del producto. La
principal tarea de la etapa de diseño es desarrollar un modelo o las
especificaciones para el producto o Componentes del Sistema.
Etapa de Desarrollo:Consiste en utilizar los modelos
creados durante la etapa de diseño para crear los componentes del sistema.
Etapa de Pruebas o
Verificación Prueba:
Consiste en asegurar que los
componentes individuales que integran al sistema o producto, cumplen con los
requerimientos de la especificación creada durante la etapa de diseño.Etapa de Implementación o
Entrega Implantación:
Consiste en poner a
disposición del cliente el producto.Etapa de Mantenimiento:
Consiste en corregir problemas
del producto y re- liberar el producto como una nueva versión o revisión
(producto mejorado).
· ¿Cuáles son los elementos conceptuales que emplea el Modelo
Entidad Relación Defina cada una.?
Concepto
Definición
Campo
Elemento de información contenido dentro de un registro,
equivalente lógico de una columna.
Columna
Conjunto de renglones de una tabla que tienen una
atributo en común. Contiene un dato individual dentro de cada registro.
Dato
Representación codificada de información para usarla en
una computadora, los datos tienen atributos como tipo y longitud.
Diccionario
de datos
Descripción de los elementos de una base de datos y como
están estructuradas.
Conceptos del M-E-R
Slide 12
Concepto DefiniciónDominio : Es el rango de valores continuos o discretos permitidos para el campo.Llave: Uno a más campos usados para identificar un registro, frecuentemente se utiliza como índice de una tabla.Llave Foránea: Columna o combinación de columnas cuyos valores se relacionan con la llave primaria de alguna otra tabla.Llave primaria: Columna o combinación de columnas que identifican de manera única una tabla. Siempre debe ser diferente de “nulo” y tener un índice únicoNulo: Que no tiene un valor explicito asociado. No es equivalente de cero o blanco. Se utiliza para la ausencia de información.
Conceptos del M-E-R (2)
Slide 13
ConceptoRegistroDefiniciónGrupo de campos (columnas) cuya información se trata como una unidad.RelaciónUna serie de conjuntos (no necesariamente distintos) Una relación sobre N conjuntos si es un conjunto de n tuplas ordenadas.TablaColección de renglones (Registros) que tiene columnas (campos) asociadas.Tipo de DatoIdentificador que especifica la clase de información que contiene una columna y como será almacenada.VariableEstructura de almacenamiento temporal recibe recibe un nombre único asignado por el programador.
Conceptos del M-E-R (3)
Slide 14
· ¿Cuáles son las formas en las que se puede trabajar la cardinalidad
en los esquemas entidad / relación? Se define la cardinalidad como
el grado de participación de las entidades en una relación.Para calcularlo se propone la
realización de la siguiente pregunta: ¿Cuántos elementos de una entidad
participarán en la relación con un elemento concreto de la segunda entidad? y
¿cuántos elementos de la segunda entidad participarán en la relación con un
elemento concreto de la primera entidad?
· ¿Qué información sobre cada entidad y sus relaciones se debe
almacenar en una base de datos? Tenemos dos entidades (profesores,
estudiantes, cursos y una entidad débil Profesores_Curso), que están
relacionadas en una base de datos, cada una almacena distinta información.
La información tiene que ser concreta, por ejemplo nombres
y apellidos, domicilio, edad, sexo, fechas, etc.Esta información le da sentido
a la base de datos de un colegio,
tal como si me mostrara que profesores le da clases a que estudiantes o si
queremos saber a en que horario del profesor al curso, etc…. Todas las entidades tienes que estar
relacionadas al menos con una tabla o no sería
una base de datos esa
cardinalidad tiene que estar bien relacionada para que muestre sus datos
correctamente.
· ¿ A que nos referimos cuando hablamos de integridad
referencial?
La integridad referencial es un sistema
de reglas que utilizan la mayoría de las bases de datos relacionales
para asegurarse que los registros de tablas relacionadas son
válidos y que no se borren o cambien datos relacionados de forma
accidental produciendo errores de integridad.Al exigir integridad
referencial en una relación le estamos diciendo
que no nos deje introducir datos en la tabla secundaria si previamente
no se ha introducido el registro relacionado en la tabla principal. La integridad referencial dispone de dos acciones asociadas:
- Actualizar registros en cascada: Hace que cuando se cambie el valor del campo
de la tabla principal, automáticamente cambiarán los valores de sus registros
relacionados en la tabla secundaria.
- Eliminar registros en cascada: Cuando se elimina un registro de la tabla
principal se borrarán también los registros relacionados en la tabla
secundaria.
Integridad Referencial
Slide 17
· ¿ A qué se refiere el concepto de atomicidad en una
transacción?Propiedades ACID
Tomicidad, Consistencia,
Aislamiento y Durabilidad, son un conjunto de propiedades necesarias para que
un conjunto de instrucciones, sean consideradas como una transacción en un
sistema de gestión de bases de datos.
Una transacción
es un conjunto de órdenes que se ejecutan formando una unidad de trabajo,
es decir, en forma indivisible o atómica. Un ejemplo de una
transacción compleja es la transferencia de fondos de una cuenta a otra,
la cual implica múltiples operaciones individuales.
Atomicidad: Significa
que el sistema permite operaciones atómicas. Una operación atómica es aquella
que si está formada por operaciones más pequeñas, se consideran como un paquete
indivisible. Deben ejecutarse todas correctamente, o en el caso de
que alguna de ellas no pueda hacerlo, el efecto de las que ya se han ejecutado
no debe hacerse notar, debe deshacerse, como si el conjunto de las operaciones
no se hubieran realizado.
Atomomicidad
Slide 18
Propiedades ACID
Atomicidad: Significa
que el sistema permite operaciones atómicas. Una operación atómica es aquella
que si está formada por operaciones más pequeñas, se consideran como un paquete
indivisible. Deben ejecutarse todas correctamente, o en el caso de
que alguna de ellas no pueda hacerlo, el efecto de las que ya se han ejecutado
no debe hacerse notar, debe deshacerse, como si el conjunto de las operaciones
no se hubieran realizado.
Consistencia: Integridad.
Esta propiedad asegura que sólo se empieza aquello que se puede acabar. Por lo
tanto se ejecutan aquellas operaciones que no van a romper las reglas y
directrices de integridad de la base de datos. Sostiene que cualquier
transacción llevará a la base de datos desde un estado válido a otro también
válido.
Aislamiento: Propiedad
que asegura que una operación no puede afectar a otras. Esto asegura que la
realización de dos transacciones sobre la misma información sea independientes
y no generen ningún tipo de error.
Durabilidad: Propiedad
que asegura que una vez realizada la operación, ésta persistirá y no se podrá
deshacer aunque falle el sistema.
Slide 19
·
Desarrolle dos de los ejercicios planteados y diseñe el MER
para brindar solución al problema propuesto.
Modelo mer Avicola
· ¿Que entiende por SGBD?Un Sistema Gestor de Bases de
Datos (SGBD) es una colección de programas cuyo objetivo es servir de interfaz
entre la base de datos, el usuario y las aplicaciones. Se compone de un
lenguaje de definición de datos, de un lenguaje de manipulación de datos y de
un lenguaje de consulta. Un SGBD permiten definir los datos a distintos niveles
de abstracción y manipular dichos datos, garantizando la seguridad e integridad
de los mismos.
EJ: SGBD son Oracle, DB2,
PostgreSQL, MySQL, MS SQL Server, etc.
permitir: • Definir una base de datos: especificar tipos, estructuras y restricciones de
datos. • Construir la base de datos: guardar los datos en algún medio controlado por
el mismo SGBD • Manipular la base de datos: realizar consultas, actualizarla, generar
informes.
Slide 22
• Base de Datos
· ¿Que es Base de Datos?Es una
recopilación de información que contiene tablas(relaciones) columnas(campos) y
filas(registros) que contienen información real de un objeto o personaje por
ejemplo una base de datos de empleados; puede contener una relación de nombres
y otra de puestos, ambas estarán compuestas por campos y registros, cada
registro representa un objeto o personaje, en el ejemplo un empleado o un puesto
especifico en el caso de la relación de puestos, los campos contienen
información concreta como el nombre, apellidos, etc.
Ambas tablas se relacionan
entre ellas por medio de un campo común denominado Llave primaria (primary key)
para asociarle a cada empleado un puesto especifico.
· ¿ Que tipos de BD existen?
Las bases de datos pueden
clasificarse de varias maneras, de acuerdo al contexto que se esté manejando, o
la utilidad de la misma.
Según la variabilidad de los
datos almacenados:
Bases De Datos Estáticas
Estas son bases de datos de solo 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.
Bases De Datos Dinámicas
Estas 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.
Slide 25
Tipos de base de datos (2)
Modelos De Bases De Datos
Los modelos de datos no son
cosas físicas: son abstracciones que permiten la implementación de un sistema
eficiente de base de datos; por lo general se refieren a algoritmos, y
conceptos matemáticos.Algunos modelos con frecuencia utilizados en las
bases de datos:
Bases De Datos Jerárquicas
Éstas son bases de datos que,
como su nombre indica, almacenan su información en una estructura jerárquica.
En este modelo los datos se organizan en una forma similar a un árbol (visto al
revés), en donde un nodo padre de información puede tener
varios hijos. El nodo que no tiene padres es llamado raíz, y a los
nodos que no tienen hijos se los conoce como hojas.
Las bases de datos jerárquicas
son especialmente útiles en el caso de aplicaciones que manejan un gran volumen
de información y datos muy compartidos permitiendo crear estructuras estables y
de gran rendimiento.
Una de las principales
limitaciones de este modelo es su incapacidad de representar eficientemente la
redundancia de datos.
Slide 26
Tipos de base de Datos (3)
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.Bases De Datos Transaccionales
Son 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. Bases De Datos Relacionales
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.
Slide 27
· ¿ Cuáles son los pasos para implementar una base de datos?A continuación se indican los
pasos que hay que seguir en el proceso de diseño de una base de datos.
1. Determinar el propósito de la base de
datos Este paso le ayudará a decidir los datos que desea que
Visual FoxPro almacene.
2. Determinar las tablas necesarias Cuando ya
conozca claramente el propósito de la base de datos, puede dividir la
información en temas distintos. Cada tema será una tabla de la base de datos.
3. Determinar los campos necesarios Tiene que
decidir la información que desea incluir en cada tabla. Cada categoría de
información de una tabla se denomina campo y se muestra en forma de columna al
examinar la tabla.
4. Determinar las relaciones Observe cada
tabla y decida cómo se relacionan sus datos con los de las tablas restantes.
Agregue campos a las tablas o cree tablas nuevas para clarificar las
relaciones, si es necesario.
5. Perfeccionar el diseño Busque errores en
el diseño. Cree las tablas y agregue algunos registros de datos de ejemplo. Vea
si puede obtener los resultados que desea de sus tablas. Haga los ajustes
necesarios al diseño.
Implementar base de datos
Slide 28
· ¿A que hace referencia los siguientes términos?ü Dato Requeridos: establece que una columna tenga
un valor no NULL. Se define efectuando la declaración de una columna es NOT
NULL cuando la tabla que contiene las columnas se crea por primera
vez, como parte de la sentencia CREATE TABLE.ü Chequeo de Validez: cuando se crea una tabla cada columna tiene un tipo de
datos y el DBMS asegura que solamente los datos del tipo especificado sean
ingresados en la tabla.
ü Integridad de entidad: establece que la clave primaria de una tabla debe tener
un valor único para cada fila de la tabla; si no, la base de datos
perderá su integridad. Se especifica en la sentencia CREATE TABLE. El DBMS
comprueba automáticamente la unicidad del valor de la clave primaria con cada
sentencia INSERT Y UPDATE. Un intento de insertar o actualizar una fila con un
valor de la clave primaria ya existente fallará.
ü Integridad referencial: asegura la integridad entre las llaves foráneas y
primarias (relaciones padre/hijo). Existen cuatro actualizaciones de la base de
datos que pueden corromper la integridad referencial:
Terminos
Slide 29
Terminos (2)
Integridad referencial (2): La inserción de una fila hijo
se produce cuando no coincide la llave foránea con la llave primaria del padre.
La actualización en la llave
foránea de la fila hijo, donde se produce una actualización en la clave ajena
de la fila hijo con una sentencia UPDATE y la misma no coincide con ninguna
llave primaria.
La supresión de una fila
padre, con la que, si una fila padre -que tiene uno o más hijos- se suprime,
las filas hijos quedarán huérfanas.
La actualización de la clave primaria de una fila padre, donde si en una
fila padre, que tiene uno o más hijos se actualiza su llave primaria, las filas
hijos quedarán huérfanasConsistencia de los
datos: datos son consistentes
cuando son reales y lógicos; por ejemplo, en una base de datos en un campo es
consistente cuando todos tienen un mismo formato por ejemplo e de fecha o
numérico. sin DEJAR DE LADO LA INTEGRIDAD DE DATOS.
Slide 30
Terminos (3)
ü Restricción de Unicidad: La regla de integridad de unicidad está relacionada con
la definición de clave primaria. Concretamente, establece que toda clave
primaria que se elija para una relación no debe tener valores repetidos
ü Llaves primarias y
foráneas: Una llave primaria o
"PRIMARY KEY (PK)" es el campo único que identifica a cada registro
para evitar duplicados.
Una clave foránea o externa o "FOREIGN KEY (FK)" es uno o combinación
de varios campos de tablas externas que se colocan dentro de otra tabla como
uno o varios campos adicionales para establecer la relación entre ellas.
ü Clave Índice: es un índice, sirve para acceder rápidamente a un registro.
Es una buena práctica, incluso indispensable, tener un índice en las claves
primarias, pero no es exclusivo de estas, también puedes tener índices en
cualquier otra columna de la BD.