Niveaux et types de modèles de bases de données. Types de modèles de bases de données. Le principe de construction d'un modèle hiérarchique

Toute base de données reflète des informations sur un Domaine. Selon le niveau d'abstraction auquel le domaine est représenté, il existe différents niveaux modèles de données. Sous modèle d'information les données font référence à une manière de décrire les informations contenues dans un domaine. Dans ce qui suit, des modèles de données structurés seront considérés. Pour ces modèles, il existe quatre niveaux principaux de modèles : infologique (conceptuel), datalogique ou logique, physique et niveau de modèles externes.

Au premier niveau, la description du domaine est construite de manière à ce qu'elle soit la plus générale possible, ne dépende pas des fonctionnalités du SGBD sélectionné ultérieurement, et les informations soient accessibles à une large catégorie d'utilisateurs : des clients au système des programmeurs qui concevront une base de données basée sur ce modèle. Pour ce faire, les informations initiales sur le domaine sont analysées et présentées sous une forme formalisée. Cette description formalisée du domaine doit refléter ses spécificités et être utilisée lors des prochaines étapes de conception de la structure de la base de données dans le contexte des fonctionnalités du SGBD spécifique sélectionné. Une telle description formalisée du domaine est appelée modèle infologique ou conceptuel.

Ensuite, un modèle est construit en fonction du SGBD spécifique sélectionné pour la conception de la base de données. Ce niveau est appelé modèle datalogique (logique). La description de la structure datalogique d'une base de données dans le langage du SGBD sélectionné est appelée son schéma.

Le niveau suivant est modèle physique données. Dans le cadre de ce modèle, des méthodes de placement physique des données dans un environnement de stockage sont déterminées et un schéma de stockage de données est développé. Étant donné que différents SGBD ont des capacités et des caractéristiques différentes en matière d'organisation physique des données, alors modélisation physique réalisée seulement après l’élaboration d’un modèle datalogique.

Un certain nombre de SGBD modernes ont la capacité de décrire la structure de la base de données du point de vue d'un utilisateur spécifique. Cette description s'appelle modèle externe. Pour chaque type d'utilisateur, la modélisation externe permet de développer un sous-schéma de base de données basé sur les besoins des différentes catégories d'utilisateurs. Cette approche est pratique du point de vue de faciliter le travail des utilisateurs avec la base de données, puisque l'utilisateur peut, sans connaître toute la structure de la base de données, travailler uniquement avec la partie de celle-ci qui lui est directement liée. De plus, le mécanisme de création de sous-schémas constitue un moyen supplémentaire de protection des informations stockées dans la base de données.

Ainsi, si le SGBD prend en charge la possibilité de créer des sous-schémas, alors l'architecture de la base de données devient à trois niveaux : niveau schéma de stockage, niveau schéma et niveau sous-schéma.

Considérons maintenant les principaux types de modèles de données.

Le modèle de base de données hiérarchique est l'un des premiers modèles de base de données. Cela est principalement dû au fait que c'est précisément ce modèle qui reflète le plus naturellement les multiples connexions entre les objets du monde réel, lorsqu'un objet agit en tant que parent, auquel sont associés un grand nombre d'objets subordonnés.

Le principe du modèle de base de données hiérarchique est que toutes les connexions entre les données sont décrites en construisant un graphe ordonné (arbre). Un arbre est ordonné selon une hiérarchie d'ensembles d'éléments appelés nœuds. Tous les nœuds sont reliés entre eux par des branches. Dans ce cas, pour décrire le schéma d’une base de données hiérarchique, la notion d’« arbre » est utilisée comme type de données spécifique. Ce type de données est composite et peut inclure des sous-types ou des sous-arbres. Une base de données est un ensemble d’arbres dont chacun, dans le langage du modèle hiérarchique, est appelé base de données physique. Chaque arbre se compose d'un seul type racine (principal, parent) et d'un ensemble ordonné associé de types subordonnés (enfants). Un type racine est un type qui a des sous-types et aucun type parent. Les types d'enfants qui ont le même type de parent sont appelés jumeaux. Chacun des types subordonnés pour un type racine donné peut être simple ou type composite"enregistrer".

Il existe trois types d'arbres : les arbres équilibrés, déséquilibrés et binaires. Dans un arbre équilibré, chaque nœud possède le même nombre de branches. Cette organisation des données est physiquement la plus simple, mais souvent la structure logique des données nécessite un nombre variable de branches à chaque nœud, ce qui correspond à un arbre déséquilibré. Les arbres binaires autorisent au plus deux branches par nœud.

Ainsi, un modèle de base de données hiérarchique peut être interprété comme une collection ordonnée d’instances d’arbre, dont chacune contient des instances d’enregistrement. Le contenu réel de la base de données est stocké dans les champs des enregistrements. Un champ d'enregistrement est défini comme la plus petite unité de données indivisible.

Lors de la construction d'un modèle de base de données hiérarchique, vous devez toujours penser à prendre en charge l'intégrité des relations, c'est-à-dire que :

  • - il y a toujours au moins un type parent, qui peut avoir un nombre arbitraire de types enfants ;
  • - les types enfants ne peuvent pas exister sans la présence d'un type parent, et pour chaque type subordonné dans la base de données, il existe un seul niveau racine ;
  • - le type racine n'a pas nécessairement de types subordonnés.

Il convient de noter que certaines notations peuvent utiliser une terminologie différente. Ainsi, dans la notation DBTG (Data Base Task Group) de l'American Database Association, le terme « enregistrement » correspond au terme « segment », et un enregistrement est l'ensemble des enregistrements qui appartiennent à une instance de « l'arbre ». taper.

Le principal avantage du modèle de base de données hiérarchique est la vitesse relativement élevée de traitement des informations lors de l'accès aux données. Les inconvénients incluent sa lourdeur en présence de connexions logiques complexes entre les données.

Modèle de réseau La base de données est, en un sens, une généralisation du modèle hiérarchique. La principale différence entre un modèle de réseau et un modèle hiérarchique réside dans le fait que dans un modèle de réseau, un type subordonné peut avoir un nombre arbitraire de types parents. Les principaux concepts du modèle de réseau sont l'ensemble, l'agrégation, l'enregistrement et l'élément de données. Dans ce cas, un élément de données doit signifier la même chose que dans le modèle hiérarchique : unité minimale données. Il existe deux types d'agrégats de données : un agrégat vectoriel et un agrégat de groupe répétitif. Un agrégat de type vecteur correspond à un ensemble de données. Un agrégat de type groupe répétitif correspond à un ensemble de vecteurs de données. Un enregistrement est une collection d’agrégats de données. Chaque enregistrement a un type spécifique et consiste en une collection d'instances d'enregistrement. Un ensemble est un graphique qui relie deux types d'enregistrements. Ainsi, l'ensemble reflète la relation hiérarchique entre les deux types d'enregistrements. Saisissez l'enregistrement parent dans cet ensemble est appelé propriétaire de l'ensemble et le type d'enregistrement enfant est appelé membre du même ensemble. Pour deux types d'enregistrements quelconques, n'importe quel nombre d'ensembles les reliant peut être spécifié. Dans ce cas, un nombre différent de jeux peut être défini entre les deux types d'enregistrements. Toutefois, le même type d’enregistrement ne peut pas être à la fois propriétaire et membre d’un ensemble.

Un avantage incontestable du modèle de données réseau est la possibilité d'un affichage plus flexible de plusieurs connexions entre objets. Un des plus des lacunes importantes réside dans la grande complexité du schéma de construction de la base de données, qui est aggravée par l'affaiblissement du contrôle sur l'intégrité des connexions en raison de leur grand nombre.

Le modèle de données relationnelles est basé sur le concept de relation, qui est un tableau bidimensionnel contenant de nombreuses lignes (tuples) et colonnes (champs ou attributs). Le tableau correspond à un objet spécifique du domaine, ses champs décrivent la propriété de cet objet et ses lignes décrivent des instances spécifiques de l'objet. Chaque relation doit toujours contenir un attribut ou un ensemble d'attributs qui identifie de manière unique le seul tuple de cette relation : la clé primaire. Pour refléter la relation entre les objets, les tables sont liées selon certaines règles à l'aide de clés dites étrangères, qui seront discutées en détail dans les sections suivantes.

Le principal avantage du modèle relationnel est sa simplicité et sa fermeture logique, mais l'inconvénient est la complexité du système de description des différentes relations entre les tables.

Le développement du modèle relationnel a conduit à l'émergence du modèle de données dit post-relationnel, dont la principale différence est l'admissibilité des champs multi-valeurs (champs dont les valeurs sont constituées de nombreuses sous-valeurs). Les champs à valeurs multiples peuvent être interprétés comme tables autonomes, intégré dans la table d'origine. De plus, le modèle post-relationnel prend en charge plusieurs champs associés qui forment ensemble une association : dans chaque ligne, la première valeur d'une colonne d'association correspond aux premières valeurs de toutes les autres colonnes d'association.

Le principal avantage du modèle post-relationnel est qu'il vous permet de stocker les données plus efficacement et que le nombre de tables dans ce modèle est sensiblement inférieur à celui du modèle relationnel. L’inconvénient est qu’il est difficile de maintenir une cohérence logique des données.

La théorie des modèles de données multidimensionnels se développe activement dans Dernièrement. Le concept de modèle multidimensionnel signifie la multidimensionnalité de la représentation logique de la structure de l'information. Les principaux concepts d'un modèle multidimensionnel sont la dimension et la cellule.

Une dimension est un ensemble de données du même type qui forme la face d'un cube à n dimensions. Une cellule est un champ dont la valeur est déterminée par l'ensemble des mesures. La valeur de la cellule peut être une variable ou une formule.

Pour travailler avec des modèles de données multidimensionnels, des SGBD multidimensionnels spéciaux sont utilisés, basés sur les concepts d'agrégation, d'historicité et de prévisibilité. L'agrégation des données fait référence à différents niveaux de généralisation de l'information. L'historicité des données signifie un niveau élevé de staticité à la fois des données elles-mêmes et des connexions entre elles, ainsi que l'ordonnancement des données dans le temps au cours du processus de traitement et de présentation aux utilisateurs. Garantir que la prévisibilité est déterminée en utilisant fonctions spéciales prévision.

Les SGBD multidimensionnels utilisent deux schémas d'organisation des données : polycubique et hypercubique. Dans le modèle polycubique, les cubes à n dimensions peuvent avoir à la fois des dimensions différentes et des faces de dimensions différentes. Dans le modèle hypercubique, toutes les dimensions des cubes sont les mêmes et les dimensions des différents cubes sont les mêmes.

Une tranche est un certain sous-ensemble d'un cube à n dimensions, défini en fixant un nombre donné de dimensions. Une tranche a une dimension inférieure à n et sert notamment à présenter des informations aux utilisateurs sous forme de tableaux bidimensionnels lisibles. La rotation est également souvent utilisée pour représenter des données en deux dimensions et implique de modifier l'ordre des dimensions. Les opérations d’agrégation et de forage impliquent une présentation plus générale ou plus détaillée des informations.

Les modèles de données multidimensionnels sont particulièrement pratiques pour travailler avec de grandes bases de données, car ils permettent un traitement efficace de quantités importantes d'informations, ce qui constitue leur avantage incontestable.

La principale différence entre le modèle orienté objet et ceux évoqués ci-dessus réside dans l'utilisation de méthodes de manipulation de données orientées objet - encapsulation, héritage et polyformisme.

L'encapsulation signifie la capacité de différencier l'accès divers programmes, applications, méthodes et fonctions (au sens large et accès de diverses catégories d'utilisateurs) à diverses propriétés des objets de données. Dans le contexte du terme « encapsulation », le concept de visibilité est souvent utilisé - le degré d'accessibilité des propriétés individuelles d'un objet. Dans les systèmes de programmation orientés objet modernes (tels que Delphi ou C++ Builder), il existe les niveaux d'encapsulation (visibilité) suivants, généralement appelés sections :

  • 1. Sections publiques, publiées et automatisées - avec mineur caractéristiques distinctives les propriétés des objets décrites comme appartenant à ces sections sont entièrement accessibles.
  • 2. Section privée - cette section impose les restrictions les plus sévères sur la visibilité des propriétés des objets. En règle générale, ces propriétés ne sont disponibles qu'au propriétaire de cet objet ( module logiciel, dans lequel cet objet a été créé).
  • 3. Section protégée - contrairement à la section Privée, les propriétés d'un objet deviennent accessibles aux héritiers du propriétaire de l'objet.

Contrairement à l'encapsulation, l'héritage implique le transfert complet de toutes les propriétés d'un objet parent vers des objets enfants. Si nécessaire, l'héritage des propriétés d'un objet peut être étendu à des objets qui ne sont pas ses enfants.

Le polymorphisme signifie la capacité d'une même application à manipuler des données différents types- les applications (méthodes, procédures et fonctions) qui traitent des objets divers types, peut porter le même nom.

Le principal avantage des modèles orientés objet est la capacité de modéliser diverses relations complexes entre les objets.

Types de modèles de données de base de données

Modèles d'organisation des données. Modèles réseau, relationnels, hiérarchiques.

Le cœur de toute base de données est le modèle de données. À l'aide d'un modèle de données, les objets de domaine et les relations entre eux peuvent être représentés.

Modèle de données est un ensemble de structures de données et de leurs opérations de traitement. Examinons trois principaux types de modèles de données : hiérarchique, réseau et relationnel.

Types de modèles de données de base de données

Hiérarchique Le modèle de base de données est représenté sous forme d’arborescence. Les nœuds d'arborescence représentent une collection de données, telles que des enregistrements logiques.

Modèle hiérarchique est un ensemble d'éléments disposés dans l'ordre de leur subordination du général au spécifique et formant un arbre (graphe) de structure inversée.

Aux concepts de base structure hiérarchique inclure le niveau, le nœud et le lien. Noeud est un ensemble d'attributs de données qui décrivent un objet. Dans un arbre hiérarchique, les nœuds sont représentés sous forme de sommets dans le graphique. Chaque nœud d'un niveau inférieur est connecté à un seul nœud d'un niveau supérieur. haut niveau. Un arbre hiérarchique n'a qu'un seul sommet, non subordonné à aucun autre sommet et situé au premier niveau le plus élevé. Les nœuds dépendants (esclaves) se trouvent aux deuxième, troisième, etc. niveaux. Le nombre d'arbres dans la base de données est déterminé par le nombre d'enregistrements racines. Pour chaque enregistrement de base de données, il existe un seul chemin hiérarchique à partir de l'enregistrement racine.

Réseau Les modèles de bases de données correspondent à une classe plus large d'objets de gestion, bien qu'ils nécessitent des coûts supplémentaires pour leur organisation.

Dans la structure du réseau avec les mêmes concepts de base (niveau, nœud, connexion), chaque élément peut être connecté à n'importe quel autre élément.

Relationnel Le modèle de base de données représente les objets et les relations entre eux sous forme de tables, et toutes les opérations sur les données sont réduites à des opérations sur ces tables. Presque tous les SGBD modernes sont basés sur ce modèle. Ce modèle est plus compréhensible et « transparent » pour utilisateur final organisation des données.

Modèle relationnel présente les objets de données et les connexions entre eux sous forme de tableaux, tandis que les connexions sont également considérées comme des objets. Toutes les lignes qui composent le tableau dans base de données relationnelle les données doivent avoir une clé primaire. Tous moyens modernes Les SGBD prennent en charge le modèle de données relationnel.

Ce modèle se caractérise par la simplicité de la structure des données, une représentation tabulaire conviviale et la capacité d'utiliser l'appareil formel de l'algèbre relationnelle et du calcul relationnel pour le traitement des données.

Chaque table relationnelle est tableau bidimensionnel et possède les propriétés suivantes :

1. Chaque élément du tableau correspond à un élément de données.

2. Toutes les colonnes du tableau sont homogènes, c'est-à-dire tous les éléments d'une colonne ont le même type et la même longueur.

3. Chaque colonne a nom unique.

4. Il n'y a pas de lignes identiques dans le tableau ;

5. L'ordre des lignes et des colonnes peut être arbitraire.

Conférence 5

Bases de données des systèmes d'information

Base de données. Classification et caractéristiques des SGBD.

Modèles de base de données de base.

Bases de données dans systèmes économiques

Base de données est défini comme un ensemble de données interdépendantes caractérisées par : la capacité à être utilisées pour grande quantité applications; la possibilité d'obtenir et de modifier rapidement information nécessaire; redondance minimale des informations ; indépendance par rapport aux programmes d'application ; une méthode de recherche courante et contrôlée.

SGBD est un programme qui permet une gestion centralisée des données stockées dans la base de données, ainsi que l'accès et la mise à jour de celles-ci.

Les tâches du SGBD sont :

Stocker les informations sous une forme structurée ;

Mettre à jour les informations si nécessaire ;

Recherche information nécessaire Par certain critère;

Fournir des informations à l'utilisateur sous une forme qui lui convient ;

Élimination de la redondance des données ;

Prise en charge des langues de base de données.

Utilisé pour travailler avec des bases de données langues spéciales, collectivement appelés langages de base de données. Les SGBD modernes prennent généralement en charge un seul langage intégré qui contient tous les outils nécessaires pour travailler avec la base de données, dès sa création et fournissant des informations de base. interface utilisateur avec des bases de données.



Selon la technologie de travail avec les bases de données, il existe :

SGBD centralisé ;

SGBD distribué.

SGBD centralisé- un système de gestion de base de données stocké dans la mémoire d'un système informatique.

Systèmes de bases de données centralisés avec l'accès au réseau suggérer deux architectures principales :

¾ architecture du serveur de fichiers implique l'attribution d'une des machines du réseau en tant que machine centrale (le serveur de fichiers principal), où est stockée une base de données centralisée partagée. Toutes les autres machines du réseau font office de postes de travail. Les fichiers de la base de données, conformément aux demandes des utilisateurs, sont transférés vers les postes de travail, où ils sont principalement traités. Avec une forte intensité d'accès aux mêmes données, les performances Système d'Information chutes;

¾ architecture client-serveur. Chacun des ordinateurs connectés au réseau et composant cette architecture joue son propre rôle : le serveur possède et contrôle ressources d'informations systèmes, le client a la possibilité de les utiliser.

Serveur de base de données est un SGBD qui traite en parallèle les requêtes reçues de tous les postes de travail. En règle générale, le client et le serveur sont géographiquement éloignés l'un de l'autre et forment dans ce cas un système de traitement de données distribué.

DANS SGBD distribué une partie importante des logiciels et du matériel est centralisée et située sur un site suffisant ordinateur puissant(serveur), tandis que les ordinateurs des utilisateurs transportent une partie relativement petite du SGBD, appelée client.

Une base de données distribuée se compose de plusieurs parties, éventuellement superposées ou même dupliquées, stockées sur différents ordinateurs. réseau informatique. Cependant, l'utilisateur d'une base de données distribuée n'a pas besoin de savoir comment ses composants sont localisés dans les nœuds du réseau, et imagine cette base de données comme un tout. Le travail avec une telle base de données est effectué à l'aide d'un système de contrôle base distribuée données (SGBDR).

La sécurité des données dans la base de données est assurée :

¾ cryptage des programmes d'application ;

¾ cryptage des données ;

¾ protection des données avec un mot de passe ;

¾ restriction de l'accès à la base de données.

Modèles de base de données de base

La principale différence entre les modèles de bases de données réside dans la nature de la description des relations et des interactions entre les objets et les attributs de la base de données. Les connexions d'objets peuvent être des types suivants :

¾ « un à un » ;

¾ « un à plusieurs » ;

¾ "plusieurs à plusieurs".

"Un par un" est une correspondance biunivoque établie entre un objet et un attribut. Une relation un-à-un définit une relation entre les tables dans laquelle chaque enregistrement d'une table subordonnée correspond à un seul enregistrement de la table principale. La présence de relations un à un entre les tables n'indique généralement pas une bonne structure de base de données, car elle indique que deux tables ont des champs parfaitement correspondants, ce qui entraîne un gaspillage d'espace disque.

Connexion "un à plusieurs" dans les structures de bases de données est le plus courant. Avec ce type de relation, chaque enregistrement de la table principale correspond à un ou plusieurs enregistrements de la table enfant. La structure de relation un-à-plusieurs évite la redondance des données et les enregistrements en double.

Type de communication "plusieurs à plusieurs" exprime une relation entre des tables dans laquelle de nombreux enregistrements d'une table peuvent être associés à plusieurs enregistrements d'une autre table.

Modèle hiérarchique base de données (IMD) est basée sur graphiquement et consiste à rechercher des données le long d'une des branches de « l'arbre », dans lequel chaque sommet n'a qu'une seule connexion avec un sommet de niveau supérieur. Pour effectuer une recherche, vous devez préciser chemin complet aux données, en commençant par l'élément racine.

Riz. 1 – Modèle de base de données hiérarchique

Modèle de réseau (SMD) est également basée sur une méthode graphique, mais permet la complication de « l’arbre » sans limiter le nombre de connexions incluses dans le sommet. Cela vous permet de créer des structures de recherche complexes.

Riz. 2 – Modèle de base de données réseau

Modèle relationnel base de données (RMD) implémente la méthode tabulaire.

Dans un modèle de base de données relationnelle, les relations entre les éléments de données sont représentées sous la forme de tableaux bidimensionnels appelés des relations.

Les relations ont les éléments suivants propriétés:

¾ chaque élément du tableau représente un élément de données (il n'y a pas de groupes répétitifs) ;

¾ les éléments d'une colonne sont de même nature et les colonnes reçoivent des noms attribués de manière unique ;

¾ il n'y a pas deux lignes identiques dans le tableau ;

Les ¾ des lignes et des colonnes peuvent être visualisées dans n'importe quel ordre, quel que soit leur contenu informatif.

Le modèle de base de données relationnelle traite trois aspects des données : la structure des données, l'intégrité des données et la manipulation des données. Sous structure fait référence à l'organisation logique des données dans une base de données, par intégrité des données comprendre les informations exactes et sans erreur stockées dans la base de données ainsi que manipulation de données- les actions effectuées sur les données de la base de données.

Avantages du modèle relationnel:

¾ facilité de construction ;

¾ accessibilité à la compréhension ;

¾ la capacité d'exploiter une base de données sans connaissance des méthodes et modalités de sa construction ;

¾ indépendance des données ;

¾ flexibilité de la structure, etc.

Inconvénients du modèle relationnel:

¾ faibles performances par rapport aux modèles hiérarchiques et en réseau ;

¾ de difficulté logiciel;

¾ redondance des éléments.

Ces dernières années, il y a eu une reconnaissance et un développement croissants bases de données d'objets(OBD), dont l’apparition est due au développement de la programmation orientée objet.

Un objet est presque tout ce qui présente un intérêt pour résoudre un problème donné sur un ordinateur. Il peut s'agir d'une fenêtre à l'écran, d'un bouton dans un champ de saisie de données, d'un utilisateur du programme, du programme lui-même, etc. Ensuite, n'importe quelle action peut être liée à un tel objet, et également décrire ce qui arrivera à l'objet lorsque certaines actions sont effectuées (par exemple, lorsqu'un bouton est « enfoncé »). Un objet réutilisable peut être enregistré et utilisé dans différents programmes.

Objet est un ensemble de méthodes (fonctions) et de propriétés liées par programme qui effectuent une tâche fonctionnelle.

Propriété est une caractéristique utilisée pour décrire apparence et le fonctionnement de l'objet.

Événement est une action associée à un objet. L'événement peut être déclenché par l'utilisateur (clic de souris), déclenché programme d'application ou du système d'exploitation.

Méthode est une fonction ou une procédure, chef de chantier objet lorsqu'il réagit à un événement.

Les objets peuvent être soit visuels, c'est-à-dire visible sur l'écran d'affichage (fenêtre, icône, texte, etc.), et non visuel (par exemple, un programme pour résoudre un problème fonctionnel).

Le cœur de toute base de données est le modèle de données. Modèle de données - un ensemble de structures de données et de traitements .

Un SGBD repose sur l'utilisation d'un modèle hiérarchique, réseau ou relationnel, une combinaison de ces modèles, ou un sous-ensemble d'entre eux.

Modèle de données hiérarchique.

Les concepts de base d'une structure hiérarchique comprennent : niveau, élément, connexion. Noeud est une collection d'attributs de données qui décrivent un objet. Dans un arbre hiérarchique, les nœuds sont représentés sous forme de sommets dans le graphique. Chaque nœud d'un niveau inférieur est connecté à un seul nœud d'un niveau supérieur. Un arbre hiérarchique n'a qu'un seul sommet (la racine de l'arbre), qui n'est subordonné à aucun autre sommet et est situé au niveau supérieur (premier) (voir Fig. 5).

Riz. 5. Modèle de données hiérarchique

Chaque enregistrement de base de données n'a qu'un seul chemin (hiérarchique) à partir de l'enregistrement racine. Par exemple, pour l'enregistrement C4, le chemin passe par les enregistrements A et B3.

Un exemple de structure hiérarchique. Chaque étudiant étudie dans un certain (un seul) groupe, qui appartient à une certaine (un seul) corps professoral (voir Fig. 6).

Riz. 6. Exemple d'organisation hiérarchique des données

Modèle de données réseau

Dans une structure de réseau, chaque élément peut être connecté à n'importe quel autre élément (voir Figure 7).

Riz. 7. Modèle de données réseau

Un exemple de structure de réseau. Une base de données contenant des informations sur les étudiants participant à des projets de recherche (SRW). Il est possible qu'un étudiant participe à plusieurs projets de recherche, ainsi que plusieurs étudiants participent au développement d'un projet de recherche (voir Fig. 8).

Riz. 8. Exemple organisation du réseau données

Modèle de données relationnel

Ces modèles se caractérisent par une structure de données simple, une présentation conviviale et la capacité d'utiliser l'appareil formel de l'algèbre relationnelle.

Le modèle relationnel se concentre sur l'organisation des données sous forme de tableaux bidimensionnels. Chaque table relationnelle (relation) est un tableau à deux dimensions et possède les propriétés suivantes :

· chaque élément de tableau est un élément de données ;

· toutes les colonnes du tableau sont homogènes, c'est-à-dire tous les éléments d'une colonne ont le même type (numérique, caractère, etc.) et la même longueur ;

Chaque colonne a un nom unique ;

· il n'y a pas de lignes identiques dans le tableau ;

· l'ordre des lignes et des colonnes peut être arbitraire.

Exemple. Une table relationnelle peut être utilisée pour présenter des informations sur les étudiants qui étudient dans une université.

Un champ dont chaque valeur identifie de manière unique l'enregistrement correspondant est appelé avec une simple clé (champ clé). Si les enregistrements sont identifiés de manière unique par les valeurs de plusieurs champs, alors une telle table de base de données a clé composite.

Pour lier deux tables relationnelles, vous devez inclure la clé de la première table dans la clé de la deuxième table (les clés peuvent coïncider) ; V sinon doit être entré dans la structure du premier tableau clé externe - la clé du deuxième tableau.

Les mêmes données peuvent être regroupées dans des tableaux différentes façons. Le regroupement des attributs dans des tableaux doit être rationnel, c'est-à-dire minimiser la duplication des données et simplifier la procédure de traitement.

Normalisation des relations - un appareil formel de restrictions sur la formation de relations (tables), qui élimine la duplication, assure la cohérence de celles stockées dans la base de données et réduit les coûts de main-d'œuvre pour la maintenance (saisie, ajustement) de la base de données.

Il existe cinq formes normales de relations. Ces formulaires visent à réduire la redondance des informations entre le premier et le cinquième formulaire normal. Par conséquent, chaque forme normale ultérieure doit satisfaire aux exigences de la forme précédente et à certaines conditions additionnelles. Dans la conception pratique des bases de données, les quatrième et cinquième formes ne sont généralement pas utilisées.

Considérons la procédure de normalisation en utilisant l'exemple de conception d'une base de données multi-tables. Ventes contenant les informations suivantes :

· Informations sur les acheteurs.

· Date de commande et quantité de marchandises commandées.

· Date d'achèvement de la commande et quantité de marchandises vendues.

· Caractéristiques du produit vendu (nom, coût, marque).

Tableau 2. Structure du tableau Ventes

Tableau Ventes peut être considérée comme une base de données à table unique. Le principal problème est qu’il contient une quantité importante d’informations répétitives. Cette structure de données est la raison problèmes suivants problèmes qui surviennent lors de l'utilisation de la base de données :

· Vous devez passer beaucoup de temps à saisir des données répétitives. Par exemple, pour toutes les commandes passées par un seul acheteur, vous devrez saisir à chaque fois les mêmes informations sur l’acheteur.

· Lorsque l'adresse ou le numéro de téléphone d'un client change, tous les enregistrements contenant des informations sur les commandes de ce client doivent être ajustés.

· La présence d'informations en double entraînera une augmentation injustifiée de la taille de la base de données. En conséquence, la vitesse d’exécution des requêtes diminuera. De plus, les données répétitives sont utilisées de manière irrationnelle espace disque ordinateur.

· Toute situation d'urgence nécessitera beaucoup de temps pour obtenir les informations requises.

Il ya trois principaux modèles Base de données- ils sont hiérarchiques, en réseau et relationnels. Ces modèles diffèrent dans la manière dont ils établissent des connexions entre les données.

8.1. Modèle de base de données hiérarchique

Modèles hiérarchiques les bases de données ont été historiquement parmi les premières à apparaître. Information dans une base hiérarchique est organisé selon le principe d'une structure arborescente, sous la forme d'« ancêtres- descendant". Chaque enregistrer peut avoir au plus un enregistrement parent et plusieurs enfants. Les relations entre enregistrements sont implémentées sous forme de pointeurs physiques d'un enregistrement à un autre. Principal inconvénient structure de base de données hiérarchique- incapacité à établir des relations" plusieurs à plusieurs", ainsi que les situations où enregistrer a plusieurs ancêtres.

Bases de données hiérarchiques. Bases de données hiérarchiques peut être représenté graphiquement comme inversé arbre, composé d'objets de différents niveaux. Haut niveau ( racine d'arbre) en prend un un objet, deuxième - objets du deuxième niveau et ainsi de suite.

Il existe des connexions entre les objets, chacun un objet peut inclure plusieurs objets de plus de niveau faible. De tels objets sont en relation avec l'ancêtre ( un objet, plus proche de la racine) de l'enfant ( un objet niveau inférieur), tandis que un objet-un ancêtre peut n'avoir aucune descendance ou en avoir plusieurs, alors que un objet-descendant n'a nécessairement qu'un seul ancêtre. Les objets ayant un ancêtre commun sont appelés jumeaux.

Riz. 6. Base de données hiérarchique

Organisation des données dans SGBD le type hiérarchique est défini en termes de : élément, agrégat, enregistrer (groupe), groupe attitude, base de données.

Attribut(élément de données)

La plus petite unité d'une structure de données. En règle générale, chaque élément d'une description de base de données reçoit un nom unique. Il est désigné par ce nom lors du traitement. Un élément de données est aussi souvent appelé champ.

Enregistrer

Une collection nommée d’attributs. L'utilisation d'enregistrements vous permet d'obtenir un ensemble de données logiquement connectés en un seul accès à la base de données. Ce sont les enregistrements qui sont modifiés, ajoutés et supprimés. Le type d'un enregistrement est déterminé par la composition de ses attributs. Instance d'enregistrement- un enregistrement spécifique avec une signification spécifique des éléments.

Attitude de groupe

- relation hiérarchique entre des enregistrements de deux types. L'enregistrement parent (le propriétaire de la relation de groupe) est appelé enregistrement source et les enregistrements enfants (membres de la relation de groupe) sont appelés enregistrements subordonnés. Base hiérarchique les données ne peuvent être stockées que dans de telles structures arborescentes.

Exemple. Considérons le modèle de données d'entreprise suivant (voir Figure 7) : une entreprise se compose de départements dans lesquels travaillent les employés. Chaque service peut avoir plusieurs employés, mais un employé ne peut pas travailler dans plus d'un service.

Par conséquent, pour systeme d'INFORMATION de gestion personnel, il est nécessaire de créer une relation de groupe composée d'un enregistrement parent DÉPARTEMENT (NOM DU DÉPARTEMENT, NOMBRE D'EMPLOYÉS) et d'un enregistrement enfant EMPLOYÉ (NOM, POSTE, SALAIRE). Cette relation est montrée sur la Fig. 7(a) (Par souci de simplicité, nous supposons qu'il n'y a que deux enregistrements enfants).

Pour automatiser la comptabilité des contrats avec les clients, il est nécessaire de créer une autre structure hiérarchique : client - contrats avec lui - salariés impliqués dans l'exécution du contrat. Cet arbre comprendra les enregistrements CLIENT (CUSTOMER_NAME, ADDRESS), CONTRACT (NUMBER, DATE, MONTANT), ENTREPRENEUR (SURNAME, POSITION, DEPARTMENT_NAME) (Fig. 7b).

Riz. 7. Exemple de base de données hiérarchique

Cet exemple montre les inconvénients de la hiérarchie Base de données:

Partiellement dupliqué information entre l'EMPLOYÉ et EXÉCUTEUR(ces enregistrements sont appelés appariés), et dans modèle de données hiérarchique non fourni soutien correspondances entre enregistrements appariés.

Modèle hiérarchique met en oeuvre attitude entre l'enregistrement source et l'enregistrement enfant selon le schéma 1:N, c'est-à-dire qu'un enregistrement parent peut correspondre à n'importe quel nombre d'enfants.

Supposons maintenant que exécuteur peut participer à plus d'un contrat (c'est-à-dire connexion tapez M:N). Dans ce cas, vous devez saisir un autre groupe dans la base de données attitude, dans lequel EXÉCUTEUR sera l'enregistrement source et CONTRACT sera l'enregistrement enfant (Fig. 7 c). Ainsi, nous sommes à nouveau obligés de dupliquer les informations.

Une structure hiérarchique présuppose une inégalité entre les données : certaines sont strictement subordonnées aux autres. Bien entendu, de telles structures satisfont clairement aux exigences de nombreux problèmes réels, mais pas de tous.