Modele codasyl

Beaucoup de chercheurs ont noté des similitudes remarquables entre le modèle de réseau de CODASYL (NWM), et les exigences pour des bases de données orientées objet. Le modèle CODASYL prend en charge la déclaration des “ensembles” abstraits pour relier les classes ensemble, et CODASYL soutient également la notion de “monnaie”, par laquelle un enregistrement peut être accédé sans aucune référence à ses attributs de données. Les bases de données CODASYL fournissent des tables de devises qui permettent au programmeur de «mémoriser» l`enregistrement le plus récemment accédé de chaque type, et l`enregistrement le plus récemment accédé dans un ensemble. ANSI et l`ISO ont adopté les spécifications de la base de données CODASYL sous le nom de langage de base de données de réseau (NDL), avec le travail qui se déroule dans le même groupe de travail (X3H2) que la normalisation SQL. Une norme ISO pour la NDL a été ratifiée en tant qu`ISO 8907:1987 [2], mais, comme elle n`a jamais eu d`effet pratique sur les implémentations, elle a été formellement retirée en 1998. Certains fournisseurs utilisent déjà le modèle CODASYL comme architecture pour les bases de données orientées objet. Par exemple, le C-Data Manager de Database technologies est une base de données orientée objet et un environnement de programmation basé sur le modèle de données réseau CODASYL et utilise des structures de fichiers ISAM pour indexer ses enregistrements de données. En octobre 1969, le DBTG a publié ses premières spécifications linguistiques pour le modèle de base de données réseau qui est devenu généralement connu sous le nom de modèle de données CODASYL. Cette spécification a en fait défini plusieurs langues distinctes: un langage de définition de données (DDL) pour définir le schéma de la base de données, un autre DDL pour créer un ou plusieurs sous-schémas définissant des vues d`application de la base de données; et un langage de manipulation de données (DML) définissant des verbes pour l`incorporation dans le langage de programmation COBOL pour demander et mettre à jour des données dans la base de données. Bien que le travail ait été axé sur le COBOL, l`idée d`une base de données indépendante de langue d`accueil commençait à émerger, suscitée par la promotion par IBM de PL/I en remplacement de COBOL. Les fonctions administrateur de base de données (DBA distant) comprenaient: structure ou schéma de données, intégrité des données, sécurité et autorisation.

Une fonction de gestionnaire de base de données (DBM) a également été définie, qui comprenait: opération, sauvegarde/récupération, performances, statistiques, audit. Les changements structurels sont comme un mauvais rêve avec des bases de données de réseau, les relations de donnée sont «dur lié» avec des pointeurs incorporés, pour ajouter un index ou une nouvelle relation exige des programmes utilitaires spéciaux qui «balayent» chaque enregistrement effectué dans la base de données. Comme les enregistrements sont localisés, le préfixe est restructuré pour tenir compte des nouveaux pointeurs. Les bases de données orientées objet rencontreront ce même problème si une hiérarchie de classes doit être modifiée. De tous les modèles de base de données existants, le modèle de réseau CODASYL correspond le plus étroitement aux exigences pour les bases de données orientées objet, et avec un certain raffinement (comme le soutien des relations «cycliques» de donnée), le modèle CODASYL peut réapparaître sous une nouvelle forme, comme modèle de données standard pour la modélisation orientée objet. L`architecture du modèle DBTG peut être divisée en trois niveaux différents comme l`architecture d`un système de base de données. Ce sont: dans le modèle DBTG, les utilisateurs sont des programmeurs d`application, écrivant dans un langage de programmation ordinaire, tel que COBOL qui a été étendu pour inclure le langage de manipulation de données DBTG. Chaque programme d`application «invoque» le sous-schéma correspondant; à l`aide de la base de données COBOL, par exemple, le programmeur spécifie simplement le nom du sous-schéma requis dans la Division de données du programme. Cette invocation fournit la définition de la «zone de travail utilisateur» (UWA) pour ce programme. L`UWA contient un emplacement distinct pour chaque type d`enregistrement (et donc pour chaque type (élément de données) défini dans le sous-schéma. Le programme peut faire référence à ces emplacements d`élément de données et d`enregistrement par les noms définis dans le sous-schéma. Les membres de CODASYL étaient des individus de l`industrie et du gouvernement impliqués dans l`activité de traitement des données.

Son objectif plus large était de promouvoir une analyse, une conception et une mise en œuvre plus efficaces des systèmes de données.