miércoles, 4 de diciembre de 2013

base de datos codasyl

CODASYL (también escrito Codasyl) es el acrónimo para "Conference on Data Systems Languages", un consorcio de industrias informáticas formado en 1959 con el objeto de regular el desarrollo de un lenguaje de programación estándar que pudiera ser utilizado en multitud de ordenadores. De todos estos esfuerzos resultó el lenguaje COBOL.
Los miembros de CODASYL pertenecían a industrias e instituciones gubernamentales relacionadas con el proceso de datos. Su principal meta era promover un análisis, diseño e implementación de los sistemas de datos más efectivos. La organización trabajó en varios lenguajes a lo largo del tiempo pero nunca llegaron a establecer estándar alguno, proceso que dejaron en manos de ANSI.
En 1965 CODASYL formó la List Processing Task Force (en español, Grupo de Trabajo para el Procesado de Listas). Este grupo se dedicó a desarrollar extensiones del lenguaje COBOL para el procesamiento de colecciones de registros; el nombre surgió a causa del sistema IDS (Integrated Data System) desarrollado por Charles Bachman (sistema que supuso el mayor aporte técnico al proyecto), y que manejaba las distintas relaciones mediante cadenas de punteros. En 1967 el grupo fue renombrado como Grupo de Trabajo sobre Bases de Datos, y su primer informe fechado en enero de 1968 se tituló COBOL extensions to handle data bases (en español, Extensiones COBOL para el manejo de bases de datos). En octubre de 1969 el DBTG publicó las primeras especificaciones para el modelo de base de datos en red, el cual acabó por ser conocido como Modelo Codasyl. Propiamente estas especificaciones definían varios lenguajes por separado: un lenguaje de descripción de datos (DDL, siglas en inglés) para definir el esquema de la base de datos, otro DDL para crear uno o más subesquemas para definir vistas de la base de datos en aplicaciones; y un lenguaje de manipulación de datos (DML) que definía palabras clave para incluir en el código COBOL las llamadas y actualizaciones de la base de datos. Aunque los trabajos siempre se centraron en COBOL, la idea de un lenguaje independiente comenzó a emerger, impulsada por las pretensiones de IBM de utilizar el PL/I como reemplazo de COBOL.

base de datos relacional

Una base de datos relacional es una base de datos en donde todos los datos visibles al usuario están organizados estrictamente como tablas de valores, y en donde todas las operaciones de la base de datos operan sobre estas tablas.
Estas bases de datos son percibidas por los usuarios como una colección de relaciones normalizadas de diversos grados que varían con el tiempo.
El modelo relacional representa un sistema de bases de datos en un nivel de abstracción un tanto alejado de los detalles de la máquina subyacente, de la misma manera como, por ejemplo, un lenguaje del tipo de PL/1 representa un sistema de programación con un nivel de abstracción un tanto alejado de los detalles de la máquina subyacente. De hecho, el modelo relacional puede considerarse como un lenguaje de programación mas bien abstracto, orientado de manera específica hacia las aplicaciones de bases de datos.

En términos tradicionales una relación se asemeja a un archivo, una tupla a un registro, y un atributo a un campo. Pero estas correspondencias son aproximadas, en el mejor de los casos. Una relación no debe considerarase como ``solo un archivo'', sino mas bien como un archivo disciplinado, siendo el resultado de esta disciplina una simplificación considerable de las estructuras de datos con las cuales debe interactuar el usuario, lo cual a su vez simplifca los operadores requeridos para manejar esas estructuras.
Características principales de los ``archivos'' relacionales:

  • Cada ``archivo'' contiene solo un tipo de registros
  • Los campos no tienen un orden específico, de izquierda a derecha
  • Los registros no tienen un orden específico, de arriba hacia abajo
  • Cada campo tiene un solo valor
  • Los registros poseen un campo identificador único (o combinación de campos) llamado clave primaria