Introduccion A Bases de Datos Tema 1
Introduccion A Bases de Datos Tema 1
Introduccion A Bases de Datos Tema 1
1. Introducción a la informática:
Informática = Computer science.
Gran Almacenamiento.
Gran capacidad de cálculo.
Comunicación a través de redes (rápida y eficiente).
Niveles de almacenamiento:
Almacenamiento primario: Aquellos medios sobre los que la CPU del ordenador puede acceder
directamente y, por tanto, más rápidamente. Son: memoria principal o memoria RAM y las memorias
caché de primer y segundo nivel, más pequeñas, pero más rápidas.
Almacenamiento secundario: Dispositivos con más capacidad de memoria, pero más lentos.
(Discos duros, cintas). Para acceder a los datos la CPU debe copiarlos previamente en el
almacenamiento primario.
La agrupación de pistas de los discos Cilindro. Y este se subdivide en bloques o sectores (de entre 512
y 4096 bytes) de un tamaño fijo.
Buffer (área reservada de la memoria principal, donde se copian los bloques cuando hay orden de
lectura).
Discos: son dispositivos de acceso aleatorio ya que podemos acceder a cualquier bloque de información
solamente conociendo su dirección física en el disco, sin necesidad de recorrerlos todos.
Por ejemplo, un registro de alumno incluiría campos como el nombre (char), fecha de
nacimiento (tipo fecha) o teléfono (int), cuyos valores para cada alumno forman cada registro.
A su vez, cada campo tiene un tipo de dato que especifica el tipo de valores que puede tomar.
Los ficheros son importantes porque son la unidad básica de información utilizada por cualquier
programa, incluidos los sistemas gestores de bases de datos.
1.1.2. Organización de archivos (forma en que se colocan los datos de los registros de cada
fichero sobre el soporte durante la grabación):
Secuencial (se almacena en orden de llegada) como una cinta de video – Inserción: rápida,
Búsqueda de datos: Complicada, Borrado: eficiente, Modificación: Complicada
Relativa/indexada (se almacena según un orden, por ejemplo, alfabético) como un CD, no
tienes que ver todo el contenido para ver algo en específico - Lectura: muy eficiente,
Búsquedas: Rápidas, Inserción: costosa por mantener el orden, Modificación: eficiente si el
registro no es de tamaño variable
Dispersión: se elige un campo llamado campo de dispersión. Al valor de ese campo se le aplica
una función llamada función de aleatorización o de dispersión que, tomando como entrada
dicho valor, devuelve un número que será la dirección del bloque de disco en que se
almacenará el registro.
Las técnicas de dispersión o hashing se utilizan para acelerar el acceso a los registros cuando
se busca un único registro según el llamado campo de dispersión. Normalmente este campo
suele ser el campo clave.
Una de las operaciones más costosas y frecuentes es la búsqueda de información, por lo cual se usan
sistemas que permiten mejorar su eficiencia. Estos sistemas se basan en el uso de índices, que son
estructuras de datos que relacionan valores de un campo (normalmente el campo clave) de un registro
con su dirección de memoria.
En el caso de ficheros se suele usar un campo como campo de indización. Los valores de ese campo
junto con las direcciones de los bloques en los que se encuentra se usan para crear el índice y además
este estará ordenado según el campo de indización.
Operaciones mucho más rápidas al ser el archivo de índices mucho más pequeño que el de registros.
Índices primarios: son índices sobre el campo clave de ordenación del fichero (campos cuyo
valor no se repite en ningún otro registro) en ficheros ordenados físicamente por un campo.
Los árboles ayudan a la búsqueda más rápida de los datos. (Arboles B o B+)
Un árbol B es similar a un árbol B+ con la diferencia de que mientras el árbol B+ permite la
repetición de claves en nodos internos hasta llegar a los nodos hoja, el árbol B no permite la
repetición.
Separación y aislamiento de los datos: Cuando los datos se separan en distintos ficheros es
más complicado acceder a ellos, ya que el programador de aplicaciones debe sincronizar el
procesamiento de los distintos ficheros implicados para asegurar que se extraen los datos
correctos.
Duplicación de datos: La redundancia de datos existente en los sistemas de ficheros hace que
se desperdicie espacio de almacenamiento. Se produce una inconsistencia cuando copias de
los mismos datos no coinciden. (Ocupa espacio y las copias no se actualizan al modificar).
Dependencia de Datos:
Control de concurrencia: varios acceden a la vez a un fichero y puede que uno lo esté
modificando. Entonces uno sale perjudicado.
Autorizaciones:
Catálogo:
Definición de Base de datos: un conjunto de datos almacenados entre los que existen
relaciones lógicas y ha sido diseñada para satisfacer los requerimientos de información de una
empresa u organización. También es un conjunto de datos organizados en estructuras que se
definen una sola vez y que se utilizan al mismo tiempo por muchos equipos y usuarios.
Nivel interno:
A la hora de dar una definición de bases de datos jerárquicas, nos remitimos a su propio nombre; son
bases de datos que almacenan la información en una estructura jerarquizada, Una base de datos
jerárquica está organizada en forma de pirámide, como las ramas de un árbol que se extienden hacia
abajo. Uno de los principales objetivos de las bases de datos jerárquicas es gestionar grandes volúmenes
de datos. Han existido durante mucho tiempo. Es uno de los más antiguos métodos de organización y
almacenamiento de datos.
Bases de datos de red (network databases): son similares a las bases de datos jerárquicas por también
tener una estructura jerárquica. Hay algunas diferencias clave,
sin embargo. En lugar de parecer un árbol al revés, una red
La base de datos se parece más a una telaraña o una red interconectada de
registros. En las bases de datos de la red, los niños se denominan miembros y
los padres se llaman dueños. La diferencia más importante es que
cada hijo o miembro puede tener más de un padre (o propietario).
Al igual que las bases de datos jerárquicas, las bases de datos de red se utilizan principalmente
en computadoras mainframe. Dado que se pueden hacer más conexiones
entre diferentes tipos de datos, se consideran bases de datos de red
más flexible. Sin embargo, se deben considerar dos limitaciones cuando
utilizando este tipo de base de datos. Similar a las bases de datos jerárquicas,
Las bases de datos de la red deben definirse de antemano. También hay un límite
al número de conexiones que se pueden hacer entre registros.
Programadores:
Tanto de aplicaciones que, mediante API de lenguajes de programación interactúan con las bases de
datos como de objetos de la base de datos, como rutinas almacenadas o disparadores. Estas
aplicaciones servirán a los usuarios finales para, de una forma amigable, poder consultar datos,
insertarlos, actualizarlos y eliminarlos.
Usuarios finales:
Trabajan en el nivel externo mediante vistas o porciones de las bases de datos. Son clientes de las bases
de datos que hacen uso de ellas sin conocer en absoluto su funcionamiento y organización interna. Son
personas con pocos o nulos conocimientos de informática.