Présentation

Article

1 - ARCHITECTURES DES SGBD

  • 1.1 - Architecture client/serveur
  • 1.2 - Bases de données parallèles
  • 1.3 - Bases de données réparties
  • 1.4 - Entrepôts de données

2 - MODÈLE DE DONNÉES

3 - STOCKAGE DES DONNÉES

4 - MÉTHODES D’ACCÈS

5 - REQUÊTES SQL

  • 5.1 - Réécriture algébrique
  • 5.2 - Optimisation de requêtes basée sur le coût
  • 5.3 - Exécution du plan
  • 5.4 - Optimisation des requêtes non SQL

6 - TRANSACTIONS

7 - CONCLUSION

Article de référence | Réf : H3702 v1

Requêtes SQL
Optimisation des bases de données

Auteur(s) : Anne DOUCET, Hubert NAACKE

Date de publication : 10 août 2007

Pour explorer cet article
Télécharger l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !

Sommaire

Présentation

Version en anglais En anglais

RÉSUMÉ

Un système de gestion de bases de données (SGBD) s’évalue par ses performances et sa facilité d’usage. L’optimisation dans les SGBD est un aspect crucial des bases de données. Elle se situe à tous les niveaux : lors de la conception de l’application, où le choix de l’architecture du système, du modèle de données, des techniques de stockage et des méthodes d’accès aux données jouent un rôle important tant sur le plan de l’usage que sur celui de l’efficacité, et lors de l’utilisation où le temps de réponse aux requêtes et le nombre de transactions par seconde représentent les critères majeurs de performances.

Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.

Lire l’article

ABSTRACT

A database management system (DMS) can be assessed by its performances and its ease-of-use. Optimization in the DMSs is an essential aspect of the databases. It intervenes at each level: when the application is being developed where the choice of the architecture of the system, the data model, the storage techniques and access methods to data play an important part in terms of use and efficiency, and also during use, where the response time to requests and the number of transactions per second are the major performance criteria.

Auteur(s)

  • Anne DOUCET : Professeur, université Pierre-et-Marie-Curie (Paris-6)Laboratoire d’informatique de Paris-6

  • Hubert NAACKE : Maître de conférences, université Pierre-et-Marie-Curie (Paris-6)Laboratoire d’informatique de Paris-6

INTRODUCTION

Un système de gestion de bases de données (SGBD) s’évalue par ses performances et sa facilité d’usage. L’optimisation dans les SGBD, qui a pour objectif de fournir aux utilisateurs un système optimal en termes de coût et d’usage, est un aspect crucial des bases de données. Elle se situe à tous les niveaux : lors de la conception de l’application, où le choix de l’architecture du système, du modèle de données, des techniques de stockage et des méthodes d’accès aux données jouent un rôle important tant sur le plan de l’usage que sur celui de l’efficacité, et lors de l’utilisation où le temps de réponse aux requêtes et le nombre de transactions par seconde représentent les critères majeurs de performances.

Pour évaluer les performances d’un système, il est nécessaire de définir des métriques. Celles‐ci s’appuient sur différents critères, en fonction du type d’optimisation. Il peut s’agir par exemple du temps de réponse ou de l’expressivité du langage pour les requêtes, de l’espace disque occupé et du temps de parcours des données d’une relation pour le choix d’une technique de stockage, de la disponibilité des ressources ou de l’extensibilité du système lorsqu’il s’agit d’une architecture.

Ce dossier est destiné aux lecteurs ayant une connaissance générale des fonctionnalités des bases de données (modèle relationnel, SQL, transactions et contrôle de concurrence). La lecture préalable des dossiers « Bases de données. Introduction » Bases de données- Introduction, « Bases de données relationnelles » Bases de données relationnelles et « Langages de bases de données : SQL et les évolutions vers l’objet » Langages de bases de données : SQL et les évolutions vers l’objet est recommandée.

Cet article est réservé aux abonnés.
Il vous reste 92% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

DOI (Digital Object Identifier)

https://doi.org/10.51257/a-v1-h3702


Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Présentation
Version en anglais En anglais

5. Requêtes SQL

Une requête SQL correspond à une série d’opérations sur la base. Le moteur de requêtes (query engine) reçoit une requête provenant de l’application. Cette requête est déclarative, c’est‐à‐dire qu’elle ne dit pas quelles opérations effectuer ni dans quel ordre. Elle est tout d’abord transformée en un programme impératif qui sera ensuite exécuté pour calculer le résultat de la requête. Le programme correspondant à la requête est appelé plan d’exécution. Plusieurs étapes sont nécessaires pour obtenir un plan d’exécution.

Dans un premier temps, la syntaxe de la requête SQL est vérifiée. La requête doit être conforme à la grammaire du langage SQL. Les noms des relations mentionnés dans la clause FROM doivent correspondre à une relation de la base de données. Les noms d’attributs se trouvant dans les autres clauses (SELECT, WHERE, ORDER BY et GROUP BY) doivent correspondre à un attribut d’une relation, sans ambiguité. La concordance des types est vérifiée pour chaque prédicat, par exemple, prix < 9,5 n’est pas correct si l’attribut prix est un nombre entier.

Les noms de vues apparaissant dans la clause FROM sont remplacés par leur définition en SQL. Plusieurs substitutions de vues s’enchaînent en cascade lorsqu’une vue est définie en fonction d’une autre vue, pour aboutir finalement à une requête SQL composée de plusieurs imbrications de clauses. Par exemple, la clause SELECT de la requête suivante contient une autre clause SELECT :

select Libellé

from Module

where durée = (select max(durée) from Module)

Puis la requête SQL est simplifiée de manière à obtenir une requête SQL constituée de plusieurs expressions simples qui sont des blocs formés d’une seule clause SELECT et FROM. Les blocs indépendants des autres sont repérés car ils pourront être évalués séparément. En revanche,...

Cet article est réservé aux abonnés.
Il vous reste 94% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Requêtes SQL
Sommaire
Sommaire

BIBLIOGRAPHIE

  • (1) -   Oracle Real Application Clusters 10g : Technical White Paper.  -  Oracle (2005).

  • (2) - ÖZSU (T.), VALDURIEZ (P.) -   Principles of Distributed Database Systems.  -  Prentice Hall (1999).

  • (3) -   SQL Server 2005 Analysis Services, MDX Multidimensional Expressions.  -  Microsoft (2005).

  • (4) -   Oracle OLAP 10g Data Sheet.  -  Oracle (2004).

  • (5) - GARDARIN (G.) -   Bases de données.  -  Eyrolles (1999).

  • (6) - RAMAKRISHNAN (R.), GEHRKE (J.) -   Database Management Systems.  -  McGraw-Hill (2002).

  • (7) - GARCIA-MOLINA (H.), ULLMAN (J.), WIDOM (J.) -   Database Systems : The...

NORMES

  • Technologies de l’information. Langage de base de données SQL - NF ISO/CEI 9075 - 9-94

1 Logiciels

(liste non exhaustive)

UDB, DB2, IBM http://www.ibm.com/db2

SQL Server 2005, Microsoft http://www.microsoft.com/france/sql/sql2005/

Oracle Database http://www.oracle.com/global/fr/

ASM d’Oracle 10g http://www.oracle.com/technology/products/database/asm/

MySQL, logiciel libre http://dev.mysql.com/

PostgreSQL, logiciel libre http://www.postgresql.org/

HAUT DE PAGE

2 Organismes

Transaction Processing Performance Council (TPC) http://www.tpc.org/

World Wide Web Consortium (W3C) http://www.w3.org/

HAUT DE PAGE

Cet article est réservé aux abonnés.
Il vous reste 93% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS