1. Abstraccion de datos
La abstracción de datos es aquella que nos permite no preocuparse de los detalles
no esenciales. Existe en casi todos los lenguajes de programación. Las estructuras
de datos y los tipos de datos son un ejemplo de abstracción. Los procedimientos y
funciones son otro ejemplo.
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 entre los cuales están :
Nivel físico :
El nivel mas bajo de abstracción describe como se almacenan realmente los
datos. En el nivel físico se describen en detalle las estructuras de datos complejas
de bajo nivel.
Nivel lógico :
El siguiente nivel más alto de abstracción describe que datos se almacenan en la
base de datos y que relaciones existen entre esos datos. La base de datos
completa se describe así en términos de un número pequeño de estructuras
relativamente simples en el nivel físico, los usuarios del nivel lógico no necesitan
preocuparse de esta complejidad. Los administradores de base de datos, que
deben decidir la información que se mantiene en la base de datos, usan el nivel
lógico de abstracción.
Nivel de vistas :
El nivel más alto de abstracción describe solo parte de la base de datos completa.
A pesar del uso de estructuras más simples en el nivel lógico, queda algo de
complejidad, debido a la variedad de información almacenada en una gran base
de datos. Muchos usuarios del sistema de base de datos no necesitan toda esta
información. En su lugar, tales usuarios necesitan acceder solo a una parte de la
base de datos. Para que su interacción con el sistema se simplifique, se define la
abstracción a nivel de vistas. El sistema puede proporcionar muchas vistas para la
misma base de datos.
2. ADMINISTRADOR DE BASE DE DATOS
El administrador de base de datos (DBA) es la persona responsable de los
aspectos ambientales de una base de datos. En general esto incluye:
Recuperabilidad - Crear y probar Respaldos
Integridad - Verificar o ayudar a la verificación en la integridad de datos
Seguridad - Definir y/o implementar controles de acceso a los datos
Disponibilidad - Asegurarse del mayor tiempo de encendido
Desempeño - Asegurarse del máximo desempeño incluso con las limitaciones
Desarrollo y soporte a pruebas - Ayudar a los programadores e ingenieros a
utilizar eficientemente la base de datos.
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. Esas funciones
por lo general están asignadas a los analistas de bases de datos ó a los
diseñadores de bases de datos.
Concurrencia
En computación, la concurrencia es la propiedad de los sistemas que permiten
que múltiples procesos sean ejecutados al mismo tiempo, y que potencialmente
puedan interactuar entre sí.
Los procesos concurrentes pueden ser ejecutados realmente de forma simultánea,
sólo cuando cada uno es ejecutado en diferentes procesadores. En cambio, la
concurrencia es simulada si sólo existe un procesador encargado de ejecutar los
procesos concurrentes, simulando la concurrencia, ocupándose de forma
alternada en uno y otro proceso a pequeñísimos intervalos de tiempo. De esta
manera simula que se están ejecutando a la vez.
Debido a que los procesos concurrentes en un sistema pueden interactuar entre
otros también en ejecución, el número de caminos de ejecución puede ser
extremadamente grande, resultando en un comportamiento sumamente complejo.
Las dificultades asociadas a la concurrencia han sido pensadas para el desarrollo
de lenguajes de programación y conceptos que permitan hacer la concurrencia
más manejable.
3. DICCIONARIO DE DATOS
Un diccionario de datos es un conjunto de metadatos que contiene las
características lógicas de los datos que se van a utilizar en el sistema que se
programa, incluyendo nombre, descripción, alias, contenido y organización.
Estos diccionarios se desarrollan durante el análisis de flujo de datos y ayuda a los
analistas que participan en la determinación de los requerimientos del sistema, su
contenido también se emplea durante el diseño del proyecto.
Identifica los procesos donde se emplean los datos y los sitios donde se necesita
el acceso inmediato a la información, se desarrolla durante el análisis de flujo de
datos y auxilia a los analistas que participan en la determinación de los
requerimientos del sistema, su contenido también se emplea durante el diseño.
En un diccionario de datos se encuentra la lista de todos los elementos que
forman parte del flujo de datos de todo el sistema. Los elementos mas importantes
son flujos de datos, almacenes de datos y procesos. El diccionario de datos
guarda los detalles y descripción de todos estos elementos.
ESQUEMA
Lo realmente interesante de una base de datos y lo que determina en gran medida
su funcionalidad es su esquema conceptual.
Este se lcrea atraves de El Asistente para generar esquemas quien crea
generalmente según el lenguaje un esquema relacional sin normalizar para la
base de datos del área de asunto basado en las dimensiones y grupos de medida.
El asistente genera una tabla relacional por dimensión para almacenar los datos
de dimensión que se denomina tabla de dimensión y una tabla relacional por
grupo de medida para almacenar los datos de hechos que se denomina tabla de
hechos. Al generar las tablas relacionales, el asistente omite las dimensiones
vinculadas, los grupos de medida vinculados y las dimensiones de tiempo de
servidor.
El esquema físico de una base de datos, depende del tipo de SGBD y de un
SGBD específico.
El esquema físico de una base de datos es una descripción de la implementación
4. de una base de datos en memoria secundaria, describiendo las estructuras de
almacenamiento y los métodos de acceso a esos datos.
El esquema lógico de una base de datos, es el resultado del diseño logico de
bases de datos.
El diseño lógico, es parte del proceso de diseño de bases de datos, junto con el
diseño conceptual de bases de datos y el diseño físico de bases de datos.
Un esquema lógico de una base de datos, es una descripción de la estructura de
la base de datos que puede procesar un SGBD.
El esquema lógico de base de datos depende de un tipo de SGBD (relacional, de
redes, jerárquico...), pero no de un SGBD específico.
Inconsistencia de datos
Inconsistencia de datos: esto sucede cuando los datos redundantes no son iguales
entre sí. Esto puede suceder, por ejemplo, cuando se actualiza el dato en un lugar,
pero el dato duplicado en otro lugar no es actualizado.
Por ejemplo, el hecho de tener los campos de cada registro completos
no son garantía de tener un alto nivel de integridad de datos, por el
contrario hay que verificar que el contenido este sujeto a las reglas que
estan relacionadas a sus atributos o que permanezcan dentro de los
rangos_esperados_de_valores.
Un ejemplo tipico es la quot;Fecha de Nacimientoquot;, tener una fecha de
nacimiento en un registro y con el formato validado, no es razón
suficiente y necesaria para tener un dato validado. Una validación más
exacta sería determinar que la fecha de nacimiento este en sintonía con
otros campos presentes en las tablas y que en conjunto hagan sentido.
En este caso, la quot;Fecha de Nacimientoquot; de clientes quot;Activosquot; deben
encontrarse dentro de un cierto rango, un rango de valores esperados
(por ejemplo no esperaría tener clientes con fechas de nacimiento en el
año,1600).
Siguiendo con el ejemplo de fechas de nacimiento, por ejemplo si se
compara la quot;Fecha de Nacimientoquot; con la quot;Edadquot; debe esperarse que
ambas esten relacionadas, la fecha de nacimiento debe apuntar a la
edad y viceversa, por lo tanto una debe explicar a la otra. En este caso
pueden encontrarse errores en el ingreso de fechas o edades.
5. Independencia Física de datos
La Independencia Física de datos es la capacidad para modificar el esquema
físico sin provocar que los programas de aplicación tengan que rescribirse. Las
modificaciones en el nivel físico son ocasionalmente necesarias para mejorar el
funcionamiento. Esta tiene como propósito primario reorganizar ciertos archivos
físicos a fin de mejorar el rendimiento de las operaciones de obtención o
actualización. Si la base de datos aún contiene los mismos datos, no deberá ser
necesario modificar el esquema conceptual.
Maquinas cliente servidor
La arquitectura cliente-servidor permite al usuario en una máquina, llamada el cliente,
requerir algún tipo de servicio de una máquina a la que está unido, llamado el servidor,
mediante una red como una LAN (Red de Area Local) o una WAN (Red de Area Mundial).
Estos servicios pueden ser peticiones de datos de una base de datos, de información
contenida en archivos o los archivos en sí mismos, o peticiones de imprimir datos en una
impresora asociada.
Aunque clientes y servidores suelen verse como máquinas separadas, pueden, de hecho, ser
dos áreas separadas en la misma máquina. Por tanto, una única máquina Unix puede ser al
mismo tiempo cliente y servidor. Además una máquina cliente unida a un servidor puede
ser a su vez servidor de otro cliente y el servidor puede ser un cliente de otro servidor en la
red. También es posible tener el cliente corriendo en un sistema operativo y el servidor en
otro distinto.
Metadatos
Según la definición más difundida de metadatos es que son datos sobre datos. También hay
muchas declaraciones como informaciones sobre datos, datos sobre informaciones e
«informaciones sobre informaciones»
Otra clase de definiciones trata de precisar el término como descripciones estructuradas y
opcionales que están disponibles de forma pública para ayudar a localizar objetos o datos
estructurados y codificadas que describen características de instancias conteniendo
informaciones para ayudar a identificar, descubrir, valorar y administrar las instancias
descritas. Esta clase surgió de la crítica de que las declaraciones más simples son tan
difusas y generales que dificultarán la tarea de acordarse de estándares, pero estas
definiciones no son muy comunes.
6. La mayoría de las veces no es posible diferenciar entre datos y metadatos. Por ejemplo, un
poema es un grupo de datos, pero también puede ser un grupo de metadatos si está
adjuntado a una canción que lo usa como texto.
Muchas veces, los datos son tanto quot;datosquot; como quot;metadatosquot;. Por ejemplo, el título de un
texto es parte del texto como a la vez es un dato referente al texto (dato como metadato).
MODELO DE DATOS
Un modelo de datos es un lenguaje orientado a describir una Base de Datos. Típicamente
un Modelo de Datos permite describir:
Las estructuras de datos de la base: El tipo de los datos que hay en la base y la forma en que
se relacionan.
Las restricciones de integridad: Un conjunto de condiciones que deben cumplir los datos
para reflejar correctamente la realidad deseada.
Operaciones de manipulación de los datos: típicamente, operaciones de agregado, borrado,
modificación y recuperación de los datos de la base.
Otro enfoque es pensar que un modelo de datos permite describir los elementos de la
realidad que intervienen en un problema dado y la forma en que se relacionan esos
elementos entre sí.
No hay que perder de vista que una Base de Datos siempre está orientada a resolver un
problema determinado, por lo que los dos enfoques propuestos son necesarios en cualquier
desarrollo de software.
7. MODELO ENTIDAD RELACION
El Modelo Entidad-Relación es un concepto de modelado para bases de datos, propuesto
por Peter Chen en 1976, mediante el cual se pretende 'visualizar' los objetos que pertenecen
a la Base de Datos como entidades (se corresponde al concepto de objeto de la
Programación Orientada a Objetos) las cuales tienen unos atributos y se vinculan mediante
relaciones.
Es una representación conceptual de la información. Mediante una serie de procedimientos
se puede pasar del modelo E-R a otros, como por ejemplo el modelo relacional.
El modelado entidad-relación es una técnica para el modelado de datos utilizando
diagramas entidad relación. No es la única técnica pero sí la más utilizada.
Brevemente consiste en los siguientes pasos:
Se parte de una descripción textual del problema o sistema de información a automatizar
(los requisitos).
Se hace una lista de los sustantivos y verbos que aparecen.
Los sustantivos son posibles entidades o atributos.
Los verbos son posibles relaciones.
Analizando las frases se determina la cardinalidad de las relaciones y otros detalles.
Se elabora el diagrama (o diagramas) entidad-relación.
Se completa el modelo con listas de atributos y una descripción de otras restricciones que
no se pueden reflejar en el diagrama.