Algèbre relationnelle dans les bases de données : opérations, exemples

Table des matières:

Algèbre relationnelle dans les bases de données : opérations, exemples
Algèbre relationnelle dans les bases de données : opérations, exemples
Anonim

Généralement, les systèmes de bases de données sont équipés d'un langage de requête qui peut aider ses utilisateurs à interroger les instances. Il en existe deux types: l'algèbre relationnelle et le calcul relationnel. Le premier est un langage de requête procédural qui prend des instances de relation en entrée et produit des exemples de relations en sortie. Utilise le calcul unaire ou binaire pour cela. L'algèbre relationnelle est effectuée de manière récursive et les résultats intermédiaires sont traités comme des relations.

Algèbre relationnelle
Algèbre relationnelle

Produit cartésien (Χ)

Combine les informations de deux relations différentes en une seule.

Notation – r Χ s, où r et s sont des ratios et leur sortie sera définie comme

r Χ s={qt | q ∈ r et t ∈ s}.

Conclusion. Définit une relation qui affiche tous les livres et articles écrits avec le didacticiel.

Renommer l'opération (ρ).

La relation de l'algèbre relationnelle est le résultat, mais sans nom. L'opération de renommage vous permet de modifier la valeur de sortie, indiquée par la petite lettre grecque ρ.

Désignation – ρ x (E), où le résultat de l'expression E est stocké avec le nomx.

Opérations supplémentaires:

  • set intersection;
  • affectation;
  • connexion naturelle.

Calcul relationnel

Il s'agit d'un langage de requête non procédural, ce qui signifie qu'il vous dit quoi faire mais n'explique pas comment l'implémenter. Le calcul relationnel existe sous deux formes:

  • calcul de corrélation d'un tuple;
  • filtrage des plages de variables.

Notation - T/State: Renvoie tous les tuples T qui satisfont une condition. Résultat. Renvoie les tuples avec un nom. Le TRC peut être quantifié. Vous pouvez utiliser des quantificateurs existentiels (∃) et universels (∀). Conclusion. La requête ci-dessus donnera le même résultat que la précédente.

Calcul relationnel de domaine DRC

La variable de filtre utilise le domaine d'attribut au lieu de valeurs entières de tuple (comme cela est fait dans le TRC mentionné ci-dessus).

Notation – {a 1, a 2, a 3, …, a | P (un 1, un 2, un 3, …, un)}, où a1, a2 sont des attributs et P dénote des formules construites avec des valeurs internes.

Conclusion. Définit l'article, la page et le sujet à partir de la relation TutorialsPoint, où le sujet est la base de données.

Comme TRC, DRC peut également être écrit en utilisant des quantificateurs existentiels et universels. DRC comprend également des opérateurs d'algèbre relationnelle. La force de l'expression du calcul, du calcul et de la corrélation des relations entre les points est équivalente.

relationnelmodèle de données d'algèbre relationnelle
relationnelmodèle de données d'algèbre relationnelle

Variations et schémas du calcul relationnel et de l'algèbre

Le modèle ER, lorsqu'il est conceptualisé dans des diagrammes, fournit un bon aperçu des relations essentielles qui sont plus faciles à comprendre. Les représentations schématiques peuvent être mappées à un schéma relationnel, c'est-à-dire qu'elles peuvent être créées ensemble. Il n'est pas possible d'importer toutes les contraintes ER dans un modèle relationnel, mais une structure approximative peut être générée. Il existe plusieurs processus et algorithmes disponibles pour convertir les graphiques vers ce système. Certains d'entre eux sont automatisés, tandis que d'autres sont créés manuellement. Les diagrammes ER se composent principalement des critères suivants:

  • entité et ses attributs;
  • lien, qui est une association entre les valeurs ci-dessus.

La comparaison d'objets et de relations se produit de différentes manières et selon différents schémas. Par exemple, une entité est un objet du monde réel avec certains attributs. Le processus de correspondance, l'algorithme est le suivant:

  • créer un tableau pour chaque objet;
  • les attributs doivent devenir des champs de table avec les types de données correspondants;
  • déclarer une clé primaire.

Une relation est une association entre entités. Le processus de compilation est le suivant:

  • créer une table pour les relations;
  • ajouter les clés primaires de toutes les entités participantes en tant que champs de table avec les types de données appropriés;
  • si la relation a un attribut, définissez chaque attribut comme champ de table;
  • combiner la clé primaire qui compose toutle reste pour les objets participants;
  • spécifiez toutes les contraintes de clé étrangère.

L'affichage des ensembles faibles et des objets hiérarchiques se fait selon un certain système. Avant toute chose, il est nécessaire de comprendre les fondements essentiels et les définitions de ces valeurs. Un ensemble de fonctionnalités faibles est un ensemble auquel aucune clé primaire n'est associée. Le processus d'affichage est le suivant:

  • créer une table pour un ensemble faible d'objets;
  • ajouter tous les attributs au schéma en tant que champ;
  • spécifiez la clé primaire pour l'identification;
  • définir toutes les contraintes de clé étrangère.

L'affichage des objets hiérarchiques basés sur la spécialisation ou la généralisation du langage de l'algèbre relationnelle se présente sous la forme d'entités séquentielles. L'algorithme est le suivant:

  • créer des tables pour tous les objets de niveau inférieur supérieur;
  • ajouter des clés primaires;
  • à un niveau bas implémente tous les autres attributs des objets de niveau inférieur;
  • déclarer les clés primaires de la table;
  • définir les contraintes de clé étrangère.
Opérations d'algèbre relationnelle
Opérations d'algèbre relationnelle

Options existantes pour décrire, stocker, modifier les informations

SQL est un langage de programmation pour les bases de données relationnelles. Il est développé sur l'algèbre et le calcul de corrélation des tuples. SQL est livré sous forme de package avec toutes les principales distributions de SGBD. Contient à la fois des données et des langages pour les manipuler. En utilisant les propriétés de définition de données SQL de l'algèbre relationnelle, vous pouvez concevoir et modifier le schéma de la base de données,tandis que les propriétés de gestion et de réglage, ainsi que les modifications de données, vous permettent de stocker et de récupérer les informations installées dans le système. Utilise l'ensemble de commandes suivant pour définir la structure et le système:

  • crée de nouvelles bases de données, tables et vues à partir d'un SGBD.
  • lance des commandes.
  • modifie le schéma de la base de données.
  • cette commande ajoute un attribut à un objet chaîne.

SQL est équipé d'un langage de manipulation de données (DML). Il modifie l'instance de base de données en insérant, mettant à jour et supprimant des informations. DML est responsable de la modification de toutes les données. SQL contient l'ensemble de commandes suivant dans la section DML:

  1. SELECT est l'une des commandes de requête de base. C'est analogue à l'opération de projection de l'algèbre relationnelle. Il sélectionne les attributs en fonction de la condition décrite dans la clause WHERE.
  2. FROM - Cette section prend un nom comme argument à partir duquel les attributs doivent être sélectionnés/projetés. Si plusieurs noms sont donnés, cet élément correspond au produit cartésien.
  3. WHERE - Cette section spécifie le prédicat ou les conditions qui doivent être remplies pour qualifier l'attribut projeté.

Il y a aussi des commandes:

  • insérer;
  • modifier les valeurs;
  • supprimer.
Algèbre relationnelle dans les bases de données
Algèbre relationnelle dans les bases de données

Créer des requêtes d'algèbre relationnelle

Lors de la construction d'une recherche, la tâche consiste à trouver une structure d'opérations qui conduira à la sortie correcte. Les opérations de base de l'algèbre relationnelle sont simplesopérations avec une ou deux relations comme opérandes. Les effets combinés de la séquence déterminent le résultat final. Étant donné que le système d'algèbre relationnelle dans les bases de données est assez simple, de nombreux résultats intermédiaires peuvent être obtenus avant d'atteindre la sortie finale, ils sont également utilisés comme opérandes qui produisent de nouvelles données reçues.

Pour la plupart des opérateurs, l'ordre des requêtes et leur exécution n'ont pas d'importance, ce qui signifie que le même résultat peut être obtenu en façonnant et en combinant des données intermédiaires de différentes manières. En pratique, les recherches dans les bases de données sont assez faciles. Le système d'exécution des opérations et des résultats intermédiaires est déterminé par l'optimiseur de requête. Lors de la formulation des questions, des exigences, vous devez

d'abord choisir les relations nécessaires pour obtenir une réponse, puis spécifier les opérations et les résultats intermédiaires. La structure d'une requête d'algèbre relationnelle dans une base de données de résultats peut être représentée sous forme de diagramme. Les optimiseurs d'exigences essaient d'organiser l'exécution aussi efficacement que possible. En pratique, cela signifie généralement qu'ils essaient de minimiser les résultats intermédiaires le plus rapidement possible. Des exemples courants d'algèbre relationnelle aideront à cela.

Exemple 1.

Besoin d'informations: Informations sur les véhicules de l'année modèle 1996 où des défauts ont été trouvés lors de l'inspection pour 1999.

Tout d'abord, des informations sur les voitures sont affichées afin de comprendre les valeurs de tous les attributs de la relation. Les informations sur les inspections sont stockées dans la table "Inspection", et si elles sont détectéesdéfauts, ils sont enregistrés dans le tableau "Problème". Ainsi, ces trois tables sont nécessaires pour obtenir les informations requises.

Seules les voitures de 1996 sont intéressantes. La gamme de modèles du véhicule est représentée par la valeur de l'attribut défini dans la ligne du tableau d'informations sur le véhicule. Le premier résultat intermédiaire est constitué de tuples représentant les variantes de 1996.

Ainsi, seules les lignes couvrant cette période sont nécessaires. Vous devez utiliser une sélection pour les extraire. Maintenant, il y a des voitures et des inspections qui étaient nécessaires. Les chaînes sont ensuite concaténées à l'aide de l'opération de concaténation. Ils doivent être joints par un numéro de registre commun, puisqu'il s'agit de la seule colonne commune, une jointure naturelle est utilisée.

Pour savoir s'il y a eu des problèmes lors des contrôles, vous devez associer les lignes problématiques au contrôle. Après avoir connecté les lignes de contrôle aux voitures, vous pouvez connecter ce résultat à la table des défauts. L'affiliation doit être basée sur le numéro d'enregistrement commun et la date vérifiée. Ce sont les seules colonnes communes dans les tables, donc une jointure naturelle est utilisée.

L'algèbre relationnelle est un langage
L'algèbre relationnelle est un langage

Options de calcul sans résultats intermédiaires

Exemple 2.

Informations requises: Nom du conducteur pour les véhicules de l'année modèle 1995 ou plus anciens qui n'ont pas été testés pour 2000. Le nom est dans la table "Driver". Les forces de l'ordre sont décrites dans le tableau "Inspection et voitures dans une voiture de cantine". AlorsAinsi, ces trois tables sont nécessaires. Tout d'abord, vous devez trouver les voitures qui n'ont pas été inspectées pour l'année 2000. Il n'est pas possible de résoudre ce problème en utilisant uniquement les inspections répertoriées dans le tableau, car il contient des données sur les inspections qui ont été effectuées, et non sur celles qui n'ont pas été mises en œuvre. Ce problème est résolu en recherchant des voitures complémentaires contrôlées avant l'an 2000. En fait, seuls leurs numéros d'enregistrement sont nécessaires.

Il existe d'autres exemples que ceux ci-dessus qui montrent comment modifier ou trouver des informations. Les variantes de requête peuvent être optimisées à l'aide d'opérations spéciales. En fait, pour rendre la recherche et la recherche de données aussi faciles et simples que possible, il existe un modèle de calcul relationnel.

Où les informations sont sécurisées et protégées

Le modèle de données relationnelles de l'algèbre relationnelle est stocké dans des formats de fichiers contenant des enregistrements. Au niveau physique, les informations réelles sont fixées dans un format électromagnétique sur un appareil. Ces périphériques de stockage peuvent être divisés en trois catégories:

  1. Primaire. Cette catégorie comprend la mémoire directement accessible au processeur. Les registres, la mémoire rapide (cache) et la mémoire principale (RAM) sont directement accessibles au central, puisqu'ils sont tous situés sur la carte mère ou le chipset. Ce stockage est généralement très petit, ultra-rapide et instable. Une alimentation électrique constante est nécessaire pour maintenir l'état. S'il échoue, toutes ses données sont perdues.
  2. Secondaire. Utilisé pour stocker des informations pour le futurutiliser ou sauvegarder. Comprend les périphériques de mémoire qui ne font pas partie du jeu de puces du processeur ou de la carte mère, tels que les disques magnétiques, les disques optiques (DVD, CD, etc.), les disques durs, les lecteurs flash et les bandes magnétiques.
  3. Tertiaire. Utilisé pour stocker d'énormes quantités de données. De tels dispositifs de stockage étant externes au système informatique, ils sont les plus lents en termes de vitesse. Ces gadgets de stockage sont principalement utilisés pour sauvegarder l'ensemble du système. Les disques optiques et les bandes magnétiques sont largement utilisés comme stockage tertiaire.

Les opérations spéciales d'algèbre relationnelle sont importantes pour l'efficacité des requêtes.

Structure de stockage

Le système informatique a une hiérarchie de mémoire bien définie. Le CPU a un accès direct au système principal ainsi qu'aux registres intégrés. Le temps d'accès à la mémoire principale est évidemment inférieur à la vitesse du processeur. Pour minimiser cet écart, un cache est introduit. Le cache fournit les temps d'accès les plus rapides et contient les données les plus fréquemment consultées par le CPU.

La mémoire avec l'accès le plus rapide est la plus chère. Les grands périphériques de stockage offrent peu de vitesse et sont moins chers, mais ils peuvent stocker d'énormes quantités de données par rapport à un registre de processeur ou à un cache.

Les disques magnétiques et les disques durs sont les périphériques de stockage secondaire les plus courants dans les systèmes informatiques d'aujourd'hui. Ils sont dits magnétiquesbase de métal. Ces disques sont placés verticalement sur la broche. La tête de lecture/écriture se déplace entre eux et est utilisée pour magnétiser ou supprimer une telle tache en dessous. Il peut être reconnu comme 0 (zéro) ou 1 (un).

Les disques durs sont formatés dans un ordre bien défini pour un stockage efficace des données. Il comporte de nombreux cercles concentriques appelés chemins. Chaque piste est ensuite divisée en secteurs, stockant généralement 512 octets de données.

Algèbre relationnelle SQL
Algèbre relationnelle SQL

Opérations sur les fichiers

Les opérations sur le système de langage d'algèbre relationnelle et sa base de données peuvent être globalement classées en deux catégories:

  • mise à jour;
  • recherche.

La première catégorie modifie les valeurs des données en insérant, supprimant ou mettant à jour. D'autre part, les opérations de recherche ne modifient pas les informations, mais les extraient après un filtrage conditionnel facultatif. Dans les deux types d'opérations, la sélection joue un rôle important. Outre la création et la suppression d'un fichier, plusieurs opérations peuvent être effectuées dessus:

  1. Open - existe dans l'un des deux modes de lecture ou d'écriture. Dans le premier cas, le système d'exploitation ne permet à personne de modifier les données. En d'autres termes, les données sont uniquement lues. Les fichiers ouverts en mode lecture peuvent être partagés entre plusieurs objets. Le mode écriture vous permet de modifier les données. Les fichiers peuvent être lus mais ne peuvent pas être partagés.
  2. Fermer est l'opération la plus importante du point de vue du système d'exploitation car elle supprime tous les verrous(si en mode partagé), enregistre les données (si modifiées) sur un support secondaire et libère tous les tampons et gestionnaires associés au fichier.
  3. L'indexation est une méthode de structure d'information permettant d'extraire efficacement des enregistrements des fichiers d'un système en fonction de certains attributs où le système a été implémenté. Défini en fonction des attributs.

L'indexation peut être du type suivant:

  1. Primary est défini dans le fichier de données ordonné. Le fichier d'informations est organisé dans le champ clé.
  2. Index secondaire généré à partir d'un champ qui est une clé candidate et qui a une valeur unique dans chaque enregistrement ou non une clé avec des valeurs en double.
  3. Le clustering est défini dans un fichier de données ordonné, dans un champ non clé.
algèbre relationnelle calcul relationnel
algèbre relationnelle calcul relationnel

Un système de gestion de base de données ou SGBD fait référence à une technologie permettant de stocker et de récupérer des informations utilisateur avec une efficacité maximale ainsi que des mesures de sécurité appropriées. Un examen plus approfondi de cette question conduit à la conclusion que l'algèbre relationnelle est un langage d'opérateurs qui prennent des relations comme arguments et les renvoient comme résultat.

Conseillé: