Aucun résultat trouvé

Votre recherche n’a donné aucun résultat.

Nous vous suggérons d’essayer ce qui suit pour trouver ce que vous recherchez :

  • Vérifiez l’orthographe de votre recherche par mot clé.
  • Utilisez des synonymes pour le mot clé que vous avez tapé, par exemple, essayez “application” au lieu de “logiciel”.
  • Essayez l’une des recherches populaires ci-dessous.
  • Lancer une nouvelle recherche.
Questions tendances

Définition d’un base de données relationnelle

Une base de données relationnelle est un type de base de données qui stocke et fournit un accès à des points de données liés les uns aux autres. Les bases de données relationnelles sont basées sur le modèle relationnel, un moyen intuitif et simple de représenter des données dans des tables. Dans une base de données relationnelle, chaque ligne de la table est un enregistrement avec un identifiant unique appelé clé. Les colonnes de la table contiennent les attributs des données, et chaque enregistrement a généralement une valeur pour chaque attribut, ce qui facilite l’établissement des relations entre les points de données.

Exemple de base de données relationnelle

Voici un exemple simple de deux tables qu’une petite entreprise peut utiliser pour traiter les commandes de ses produits. La première table est une table d’informations concernant le client. Chaque enregistrement comprend donc le nom, l’adresse et les informations d’expédition et de facturation d’un client, ainsi que son numéro de téléphone et autres coordonnées. Chaque information (chaque attribut) est dans sa propre colonne, et la base de données attribue un ID unique (une clé) à chaque ligne. Dans la deuxième table (une table des commandes du client), chaque enregistrement comprend l’ID du client qui a passé la commande, le produit commandé, la quantité, la taille et la couleur sélectionnées, etc. Par contre, il n’inclut pas le nom ni les coordonnées du client en question.

Ces deux tables ont un seul point commun : La colonne ID (la clé). Mais grâce à cette colonne commune, la base de données relationnelle est en mesure de créer une relation entre les deux tables. Ensuite, quand l’application de traitement des commandes de l’entreprise envoie une commande à la base de données, celle-ci peut accéder à la table des commandes client, extraire les informations correctes sur la commande de produit et utiliser l’ID client de cette table pour rechercher les informations de facturation et d’expédition du client dans la tables des informations client. L’entrepôt peut alors extraire le produit approprié, le client peut recevoir la commande en temps voulu, et l’entreprise peut être payée.

Comment sont structurées les bases de données relationnelles

Le modèle relationnel signifie que les structures de données logiques (les tables de données, les vues et les index) sont séparées des structures de stockage physiques. Cette séparation signifie que les administrateurs de base de données peuvent gérer le stockage de données physique sans affecter l’accès à ces données en tant que structure logique. Par exemple, renommer un fichier de base de données ne renomme pas les tables qu’il contient.

La distinction entre logique et physique s’applique également aux opérations de base de données, qui sont des actions clairement définies permettant aux applications de manipuler les données et les structures de la base de données. Les opérations logiques permettent à une application de spécifier le contenu dont elle a besoin, et les opérations physiques déterminent comment accéder aux données, puis exécutent la tâche.

Pour que les données soient toujours précises et accessibles, les bases de données relationnelles respectent certaines règles d’intégrité. Par exemple, une règle d’intégrité peut spécifier que les lignes en double ne sont pas autorisées dans une table afin d’éliminer le risque d’entrée d’informations erronées dans la base de données.

Le modèle relationnel

Au début des bases de données, chaque application stockait des données au sein de sa propre structure unique. Lorsque les développeurs voulaient créer des applications pour utiliser ces données, ils devaient en savoir beaucoup sur la structure spécifique des données pour trouver les données dont ils avaient besoin. Ces structures de données étaient inefficaces, difficiles à gérer et à optimiser pour obtenir de bonnes performances des applications. Le modèle de base de données relationnelle a été conçu pour résoudre le problème que présentent plusieurs structures de données arbitraires.

Le modèle relationnel fournissait un moyen standard de représenter et d’interroger des données susceptibles d’être utilisées par n’importe quelle application. Dès le début, les développeurs ont reconnu que la force principale du modèle de base de données relationnelle résidait dans l’utilisation de tables, qui constituaient un moyen intuitif, efficace et flexible de stocker des informations structurées et d’y accéder.

Au fil du temps, un autre atout du modèle relationnel est apparu lorsque les développeurs ont commencé à utiliser le langage SQL pour écrire et interroger des données dans une base de données. Depuis de nombreuses années, SQL est largement utilisé comme langage pour les requêtes de base de données. Basé sur l’algèbre relationnelle, SQL fournit un langage mathématique cohérent en interne qui permet d’améliorer plus facilement les performances de toutes les requêtes de base de données. Par comparaison, d’autres approches doivent définir des requêtes individuelles.

Avantages des bases de données relationnelles

Le modèle relationnel, simple mais puissant, est utilisé par les organisations de tous types et de toutes tailles pour répondre à un large éventail de besoins en informations. Les bases de données relationnelles permettent d’effectuer le suivi des inventaires, de traiter des transactions d’e-commerce, de gérer d’énormes quantités d’informations client stratégiques, et bien plus encore. Une base de données relationnelle peut être prise en compte pour tout besoin d’informations dans lequel les points de données sont liés, et doit être gérée de manière cohérente, sécurisée et basée sur des règles.

Les bases de données relationnelles existent depuis les années 1970. Aujourd’hui, les avantages du modèle relationnel continuent d’en faire le modèle le plus largement accepté pour les bases de données.

Cohérence des données

Le modèle relationnel est le meilleur pour maintenir la cohérence des données entre les applications et les copies de base de données (désignées par le terme « instances ». Par exemple, lorsqu’un client dépose de l’argent à un guichet automatique, puis examine le solde du compte sur un téléphone portable, il s’attend à ce que ce dépôt soit immédiatement reflété dans le solde du compte mis à jour. Les bases de données relationnelles excellent à garantir ce type de cohérence des données, en s’assurant que plusieurs instances d’une base de données contiennent les mêmes données à tout moment.

Il est difficile pour les autres types de bases de données de maintenir ce niveau de cohérence et d’actualisation avec de grandes quantités de données. Certaines bases de données récentes, telles que NoSQL, peuvent uniquement assurer une « cohérence éventuelle ». Selon ce principe, lorsque la base de données évolue ou lorsque plusieurs utilisateurs accèdent aux mêmes données en même temps, il faut un certain temps pour que les données « rattrapent leur retard ». La cohérence éventuelle est acceptable pour certaines utilisations, telles que la gestion des listes dans un catalogue de produits, mais pour les opérations commerciales stratégiques telles que les transactions de paniers d’achat, la base de données relationnelle est toujours la référence absolue.

Engagement et Atomicité

Les bases de données relationnelles gèrent les règles et les politiques commerciales à un niveau très détaillé, avec des règles strictes concernant « l’engagement » (c’est-à-dire, le fait de modifier la base de données de manière permanente). Par exemple, considérons une base de données d’inventaire qui effectue le suivi de trois pièces détachées qui sont toujours utilisées ensemble. Lorsqu’une pièce est extraite de l’inventaire, les deux autres doivent également l’être. Si l’une des trois pièces n’est pas disponible, aucune des pièces ne doit être extraite. Les trois pièces doivent être disponibles avant que tout engagement de la base de données soit effectif. Une base de données relationnelle ne s’engage pas pour une pièce tant qu’elle ne dispose pas des information lui permettant de s’engager pour les trois. Cette capacité d’engagement multiforme est désignée par le terme « atomicité ». L’atomicité est la clé pour que les données restent exactes dans la base de données et pour garantir la conformité aux règles, réglementations et politiques de l’entreprise.

ACID et les bases de données relationnelles

Quatre propriétés cruciales définissent les transactions de base de données relationnelle : atomicité, cohérence, isolement et durabilité. Ces propriétés sont généralement désignées par l’acronyme « ACID ».

  • Atomicité définit tous les éléments constituant une transaction de base de données complète.
  • Cohérence définit les règles permettant de maintenir les points de données dans un état correct après une transaction.
  • Isolement conserve l’effet d’une transaction invisible aux autres jusqu’à ce que son engagement soit effectif, afin d’éviter toute confusion.
  • Durabilité garantit que les modifications de données deviennent permanentes une fois que l’engagement de la transaction est effectif.

Procédures stockées et bases de données relationnelles

L’accès aux données implique de nombreuses actions répétitives. Par exemple, il peut être nécessaire de répéter des centaines ou des milliers de fois une requête simple pour obtenir des informations à partir d’une table de données de sorte à produire le résultat souhaité. Ces fonctions d’accès aux données nécessitent un type de code pour accéder à la base de données. Les développeurs d’applications n’ont nullement l’intention d’écrire un nouveau code pour ces fonctions dans chaque nouvelle application. Fort heureusement, les bases de données relationnelles permettent d’utiliser des procédures stockées, qui sont des blocs de code accessibles via un simple appel d’application. Par exemple, une seule procédure stockée peut fournir un marquage d’enregistrement cohérent aux utilisateurs de plusieurs applications. Les procédures stockées peuvent également aider les développeurs à s’assurer que certaines fonctions de données de l’application sont mises en œuvre d’une manière spécifique.

Verrouillage de la base de données et simultanéité

Des conflits peuvent survenir dans une base de données lorsque plusieurs utilisateurs ou applications tentent de modifier les mêmes données en même temps. Les techniques de verrouillage et de simultanéité réduisent les risques de conflits tout en maintenant l’intégrité des données.

Le « verrouillage » empêche les autres utilisateurs et applications d’accéder aux données pendant qu’elles sont mises à jour. Dans certaines bases de données, le verrouillage s’applique à l’ensemble de la table, ce qui a un impact négatif sur les performances des applications. D’autres bases de données, telles que les bases de données relationnelles Oracle, appliquent des verrous au niveau des enregistrements, laissant ainsi les autres enregistrements de la table disponibles, ce qui contribue à améliorer les performances des applications.

La « simultanéité » gère l’activité lorsque plusieurs utilisateurs ou applications appellent des requêtes en même temps sur la même base de données. Cette fonctionnalité offre un accès correct aux utilisateurs et aux applications conformément aux politiques définies pour le contrôle des données.

Que rechercher lors de la sélection d’une base de données relationnelle

Le logiciel utilisé pour stocker, gérer, interroger et extraire les données stockées dans une base de données relationnelle est désigné par le terme « système de gestion de base de données relationnelle (SGBDR) ». Le SGBDR fournit une interface entre les utilisateurs et les applications et la base de données, ainsi que des fonctions administratives pour la gestion du stockage et des performances des données, ainsi que de l’accès à celles-ci.

Plusieurs facteurs peuvent guider votre décision lorsque vous effectuez votre choix entre les types de base de données et les produits de base de données relationnelle. Le SGBDR que vous choisirez dépendra des besoins de votre entreprise. Posez-vous les questions suivantes :

  • Quelles sont nos exigences en matière d’exactitude des données ? Le stockage et l’exactitude des données dépendent-ils de la logique métier ? Nos données sont-elles soumises à des exigences strictes en matière d’exactitude (par exemple, les données financières et les rapports gouvernementaux) ?
  • Avons-nous besoin d’évolutivité ? Quelle est l’ampleur des données à gérer et quelle est la croissance attendue ? Le modèle de base de données devra-t-il prendre en charge les copies de base de données en miroir (en tant qu’instances distinctes) pour l’évolutivité ? Si tel est le cas, peut-il maintenir la cohérence des données dans l’ensemble de ces instances ?
  • Quelle est l’importance de la simultanéité ? Plusieurs utilisateurs et applications auront-ils besoin d’un accès simultané aux données ? Le logiciel de base de données prend-il en charge la simultanéité tout en protégeant les données ?
  • Quels sont nos besoins en matière de performances et de fiabilité ? Avons-nous besoin d’un produit haute performance et haute fiabilité ? Quelles sont les exigences pour les performances en matière de requête-réponse ? Quels sont les engagements du fournisseur en matière de contrats de niveau de service (SLA) ou d’indisponibilité non planifiée ?

La base de données relationnelle du futur : la base de données à pilotage automatique

Au fil des ans, les bases de données relationnelles se sont améliorées, sont devenues plus rapides, plus robustes et plus faciles à utiliser. Mais elles sont également devenues plus complexes, et l’administration de la base de données a longtemps été un travail à plein temps. Au lieu d’utiliser leur expertise pour se concentrer sur le développement d’applications innovantes apportant de la valeur à l’entreprise, les développeurs ont dû consacrer la majeure partie de leur temps à l’activité de gestion nécessaire à l’optimisation des performances de la base de données.

Aujourd’hui, la technologie autonome s’appuie sur les forces du modèle relationnel pour fournir un nouveau type de base de données relationnelle. La « base de données à pilotage automatique » (également connue sous le nom de base de données autonome) permet de conserver la puissance et les avantages du modèle relationnel, mais utilise l’intelligence artificielle (IA), le machine learning et l’automatisation pour contrôler et améliorer les performances des requêtes et les tâches de gestion. Par exemple, pour améliorer les performances des requêtes, la base de données à pilotage automatique peut émettre des hypothèses et tester des index pour accélérer les requêtes, puis passer les meilleurs d’entre elles en production, sans aucune intervention humaine. La base de données à pilotage automatique apporte ces améliorations de façon continue, sans implication humaine.

La technologie autonome libère les développeurs des tâches monotones de gestion de la base de données. Par exemple, ils n’ont plus besoin de déterminer les besoins en infrastructure à l’avance. Au lieu de cela, avec une base de données à pilotage automatique, ils peuvent ajouter des ressources de stockage et de calcul selon les besoins pour prendre en charge la croissance de la base de données. En quelques étapes seulement, les développeurs peuvent facilement créer une base de données relationnelle autonome, ce qui libère du temps pour le développement d’applications.