Daphné Nougier 1 Daphné Nougier 2 A propos des bases de données rela.onnelles Chaque organisa.on a des informa.ons à stocker et à gérer en fonc.on de ses besoins. Par exemple, une entreprise doit rassembler et maintenir des informa.ons de ressources humaines pour ses employés. Ces informa.ons doivent être disponibles à ceux qui les u.lisent. Un système d'informa.ons est un système formel permeBant de stocker et traiter de l'informa.on. Un système d'informa.on peut être un ensemble de boîtes en carton contenant des dossiers avec des règles pour définir comment stocker et extraire les dossiers. La plupart des entreprises u.lisent une base de données pour automa.ser ses systèmes d'informa.ons. Une base de donnée est une collec.on d'informa.ons organisée traitée comme une unité. L'objec.f d'une base de données est de centraliser, stocker et extraire ses informa.ons pour l'u.lisa.on des applica.ons bases de données. Système de Ges.on Base de données ou Database Management System (DBMS) A système de ges.on de base de données ou database management system (DBMS) est un logiciel qui contrôle le stockage, l'organisa.on et l'extrac.on des données. Un DBMS est habituellement cons.tué des éléments suivants : Le code du noyau. Ce code gère la mémoire et le stockage pour le DBMS. Le référen.el de métadonnées. Ce référen.el est appelé un dic.onnaire de données. Le langage d'interroga.on. Ce langage permet aux applica.ons d'accéder aux données. Une applica.on Database est un programme logiciel qui intéragit avec une base de données pour accéder et manipuler les données. La première généra.on de systèmes de ges.on de base de données comprend les types suivants : Hiérarchique : Une base de données hiérarchique organise les données sous forme de structure d'arbre. Chaque enregistrement parent comprend un ou plusieurs enregistrements enfants, de manière similaire à la structure d'un système de fichiers. Réseau : Une base de données réseau est similaire à une base de données hiérarchique, exceptés que les enregistrements ont une rela.on plusieurs-­‐vers-­‐plusieurs plutôt que un-­‐vers-­‐plusieurs. Ce dernier système de ges.on de base de données stocke les données avec des rela.ons rigides prédéterminées. Comme aucun langage de défini.on de données n'existe, le changement de structure est difficile. De plus comme ces systèmes n'ont pas un langage de requête simple, cela entrave le développement d'applica.ons. Daphné Nougier 3 A propos des bases de données rela.onnelles Chaque organisa.on a des informa.ons à stocker et à gérer en fonc.on de ses besoins. Par exemple, une entreprise doit rassembler et maintenir des informa.ons de ressources humaines pour ses employés. Ces informa.ons doivent être disponibles à ceux qui les u.lisent. Un système d'informa.ons est un système formel permeBant de stocker et traiter de l'informa.on. Un système d'informa.on peut être un ensemble de boîtes en carton contenant des dossiers avec des règles pour définir comment stocker et extraire les dossiers. La plupart des entreprises u.lisent une base de données pour automa.ser ses systèmes d'informa.ons. Une base de donnée est une collec.on d'informa.ons organisée traitée comme une unité. L'objec.f d'une base de données est de centraliser, stocker et extraire ses informa.ons pour l'u.lisa.on des applica.ons bases de données. Système de Ges.on Base de données ou Database Management System (DBMS) A système de ges.on de base de données ou database management system (DBMS) est un logiciel qui contrôle le stockage, l'organisa.on et l'extrac.on des données. Un DBMS est habituellement cons.tué des éléments suivants : Le code du noyau. Ce code gère la mémoire et le stockage pour le DBMS. Le référen.el de métadonnées. Ce référen.el est appelé un dic.onnaire de données. Le langage d'interroga.on. Ce langage permet aux applica.ons d'accéder aux données. Une applica.on Database est un programme logiciel qui intéragit avec une base de données pour accéder et manipuler les données. La première généra.on de systèmes de ges.on de base de données comprend les types suivants : Hiérarchique : Une base de données hiérarchique organise les données sous forme de structure d'arbre. Chaque enregistrement parent comprend un ou plusieurs enregistrements enfants, de manière similaire à la structure d'un système de fichiers. Réseau : Une base de données réseau est similaire à une base de données hiérarchique, exceptés que les enregistrements ont une rela.on plusieurs-­‐vers-­‐plusieurs plutôt que un-­‐vers-­‐plusieurs. Ce dernier système de ges.on de base de données stocke les données avec des rela.ons rigides prédéterminées. Comme aucun langage de défini.on de données n'existe, le changement de structure est difficile. De plus comme ces systèmes n'ont pas un langage de requête simple, cela entrave le développement d'applica.ons. Daphné Nougier 4 Le Modèle relationnel Dans son papier précurseur en 1970 intitulé "A Relational Model of Data for Large Shared Data Banks," E. F. Codd définit un modèle relationnel comme une théorie d'ensembles mathématiques. Aujourd'hui le modèle le plus largement accepté pour modéliser les bases de données relationnelles est le modèle relationnel. Base de donnée relationnelle Une base de données relationnelle est une base de données conforme au modèle relationnel. Le modèle relationnel se caractérise par les principaux aspects suivants : Structures : des objets bien définis pour stocker et accéder aux données d'une base de données. Opérations : des actions clairement définies permettant aux applications de manipuler les données et les structures d'une base de données. Règles d'intégrité : les règles gouvernent les opérations sur les données et les structures d'une base de données. Une base de données relationnelle stocke un ensemble de données dans un ensemble de relations simples. Une relation est un ensemble de tuples. Un tuple est un ensemble désordonné de valeurs d'attribut. Une table est une représentation à deux dimensions d'une relation sous la forme de lignes (tuples) et de colonnes (attributs). Chaque ligne d'une table a le même ensemble de colonnes. Une base de données relationnelle est une base de données qui stocke les données dans des relations (tables). Par exemple, une base de données relationnelle peut stocker des informations sur les employés dans une table employés, une table départements et une table salaires. Voir Aussi : http://dl.acm.org/citation.cfm?id=362685 pour un résumé et lien sur le papier de Codd Daphné Nougier 5 Les Systèmes de Gestion de Bases de Données Relationnelles SGBDR sont les logiciels les plus utilisés aujourd’hui pour le stockage et la consultation de données informatiques. Il ont remplacé les systèmes de gestion de base de données hiérarchiques et réseau ainsi que la gestion des données dans des fichiers séquentiels indexés. La technologie voie évoluer les SGBD vers les bases de données Orientées Objet avec l’arrivé de langages de programmation comme JAVA mais ce marché reste encore marginal. Le modèle des bases de données relationnelles s’appuie sur le principe de manipuler les informations en considérant l’aspect logique des choses et de s’affranchir des considérations physiques et techniques d’accès aux données. En pratique, ce principe est respecté jusque dans une certaine mesure, la technologie ne permettant pas de l’appliquer complètement. Les données sont représentées dans des tableaux ou tables et sont manipulées avec un langage d’interrogation structuré : le SQL pour Structured Query Language. Quelques définitions • Une table, ou une relation, est un ensemble de données relatives à un même sujet. Une table met en relation dans un tableau des valeurs d’attribut sur une même ligne ou TUPLE. • La clé primaire d’une relation est un attribut ou un groupe d’attributs de la table qui détermine de manière unique les autres attributs de la ligne. • La clé étrangère dans une table, référence la clé primaire d’une autre table. • Les contraintes d’intégrité sont définies au niveau du schéma conceptuel. Parmi celles-ci on distingue : • Les contraintes de domaine qui sont des contraintes liées aux colonnes des tables. Vous pouvez spécifier, par exemple, qu’un attribut doit être toujours renseigné, c’est à dire que la valeur de la colonne ne peut être nulle (NOT NULL). • La contrainte d’intégrité d’entité précise qu’une table doit toujours avoir une clé primaire. • Les contraintes d’intégrité référentielles sont liées aux clés étrangères. Sur l’exemple de la diapositive, la valeur de la colonne de la table des CLIENTS : ETP_ID doit correspondre à celle de la clé primaire de la table des ENTREPRISES : ETP_ID. Daphné Nougier 6 Le Modèle relationnel Dans son papier précurseur en 1970 intitulé "A Relational Model of Data for Large Shared Data Banks," E. F. Codd définit un modèle relationnel comme une théorie d'ensembles mathématiques. Aujourd'hui le modèle le plus largement accepté pour modéliser les bases de données relationnelles est le modèle relationnel. Base de donnée relationnelle Une base de données relationnelle est une base de données conforme au modèle relationnel. Le modèle relationnel se caractérise par les principaux aspects suivants : Structures : des objets bien définis pour stocker et accéder aux données d'une base de données. Opérations : des actions clairement définies permettant aux applications de manipuler les données et les structures d'une base de données. Règles d'intégrité : les règles gouvernent les opérations sur les données et les structures d'une base de données. Une base de données relationnelle stocke un ensemble de données dans un ensemble de relations simples. Une relation est un ensemble de tuples. Un tuple est un ensemble désordonné de valeurs d'attribut. Une table est une représentation à deux dimensions d'une relation sous la forme de lignes (tuples) et de colonnes (attributs). Chaque ligne d'une table a le même ensemble de colonnes. Une base de données relationnelle est une base de données qui stocke les données dans des relations (tables). Par exemple, une base de données relationnelle peut stocker des informations sur les employés dans une table employés, une table départements et une table salaires. Voir Aussi : http://dl.acm.org/citation.cfm?id=362685 pour un résumé et lien sur le papier de Codd Daphné Nougier 7 Système de Gestion de Base de données relationnelle Le modèle relationnel est la base pour un SGBD Oracle Database est un SGBD Relationnelle objet qui implémente des fonctionnalités orientées objet telles que les types définis par l'utilisateur, l'héritage et le polymorphisme Oracle Database a étendu le modèle relationnel à un modèle relationnel-objet, rendant possible le stockage de modèles business complexes dans une base de données relationnelle. Daphné Nougier 8 Voir Aussi : http://www.oracle.com/technetwork/issue-archive/2007/07-jul/o4730-090772.html pour un article résumant l'évolution de Oracle Database Voir la vidéo http://www.oracle.com/us/products/database/overview/index.html Daphné Nougier 9 Voir Aussi : http://www.oracle.com/technetwork/issue-archive/2007/07-jul/o4730-090772.html pour un article résumant l'évolution de Oracle Database Voir la vidéo http://www.oracle.com/us/products/database/overview/index.html Daphné Nougier 10 Une brève Histoire de Oracle Database Voir Aussi : http://www.oracle.com/technetwork/issue-archive/2007/07-jul/o4730-090772.html pour un article résumant l'évolution de Oracle Database Voir la vidéo http://www.oracle.com/us/products/database/overview/index.html Daphné Nougier 11 Les Objets de Schema Dans une base de données Oracle, un schema est une collection de structures de données logiques, ou schema objects. Un schéma appartient à un utilisateur base de données et a le même nom que l'utilisateur. Les objets de schéma sont des structures créées par l'utilisateur qui se réfèrent directement aux données d'une base de données. La base de données supporte plusieurs types d'objets, les plus importants sont les tables et les index. Tables Une table décrit une entité comme les employés. Vous définissez une table avec un nom de table, et un ensemble de colonnes. En général, vous donnez un nom à chaque colonne ou column, un type de données ou data type, et une largeur quand vous créez une table. Une table est un ensemble de lignes. Une colonne identifie un attribut de l'entité décrite par la table. Une ligne ou row identifie une instance de l'entité. Par exemple, les attributs de l'entité employé correspondent aux colonnes pour employee ID et last name. Une ligne identifie un employé spécifique. Vous pouvez en option spécifier des règles pour chaque colonne d'une table. Ces règles sont appelées des contraintes d'intégrité. Par exemple, une contrainte d'intégrité NOT NULL. Cette contrainte force la colonne à contenir une valeur pour chaque ligne. Index Un index est une structure de données optionnelle que vous créez sur une ou plusieurs colonnes d'une table. Les index peuvent augmenter la performance pour l'extraction des données. Quand vous effectuez une requête, la base de données peut utiliser les index disponibles pour localiser les lignes plus efficacement. Les index sont utiles quand les applications interrogent souvent des données spécifiques. Les index sont logiquement et physiquement indépendants des données. Aussi vous pouvez supprimer et créer des index sans effet sur les tables ou autres index. Toutes les applications continuent à fonctionner après suppression d'un index. Daphné Nougier 12 L'accès aux Données Structured Query Language (SQL) SQL est un langage ensembliste qui fournit une interface à un RDBMS comme Oracle Database. En contraste aux langages procéduraux comme le C, qui décrit comment les choses doivent être faites, le SQL est non procédural et décrit ce qui pourrait être fait. Les utilisateurs spécifient le résultat qu'ils veulent obtenir (par exmeple le nom des employés) mais pas comment il le dérive. SQL est le langage standard ANSI pour les bases de données relationnelles. SQL unifie les tâches précédentes en un langage consistant. Oracle SQL est une implémentation du standard ANSI. Oracle SQL supporte plusieurs fonctionnalités qui étendent le standard SQL. PL/SQL et Java PL/SQL est une extension procédurale à Oracle SQL. PL/SQL est intégré avec Oracle Database, permettant d'utiliser toutes les commandes Oracle Database SQL, les fonctions et types de données. Vous pouvez utiliser PL/SQL pour contrôler les flux d'un programme SQL, utiliser des variables, et écrire des procédures de gestion d'erreur. Un avantage premier de PL/SQL est la capacité à stocker la logique applicative dans la base de données. Une procédure ou fonction PL/SQL est un objet de schéma qui consiste en un ensemble d'ordres SQL et autres constructions PL/SQL regroupés ensemble, stockés dans la base de données et exécutés comme une unité pour résoudre un problème spécifique ou effectuer un ensemble de tâches associées. L'avantage principal de la programmation côtéserveur et la fonctionnalité prédéfinie d'être déployée n'importe où. Oracle Database peut aussi stocker des unités de programme écrites en Java. Une procédure stockée Java est une méthode Java publiée et stockée dans la base pour une utilisation générale. Vous pouvez appeler des programmes PL/SQL depuis Java et des programmes Java depuis du PL/SQL. Daphné Nougier 13 L'accès aux Données Structured Query Language (SQL) SQL est un langage ensembliste qui fournit une interface à un RDBMS comme Oracle Database. En contraste aux langages procéduraux comme le C, qui décrit comment les choses doivent être faites, le SQL est non procédural et décrit ce qui pourrait être fait. Les utilisateurs spécifient le résultat qu'ils veulent obtenir (par exmeple le nom des employés) mais pas comment il le dérive. SQL est le langage standard ANSI pour les bases de données relationnelles. SQL unifie les tâches précédentes en un langage consistant. Oracle SQL est une implémentation du standard ANSI. Oracle SQL supporte plusieurs fonctionnalités qui étendent le standard SQL. PL/SQL et Java PL/SQL est une extension procédurale à Oracle SQL. PL/SQL est intégré avec Oracle Database, permettant d'utiliser toutes les commandes Oracle Database SQL, les fonctions et types de données. Vous pouvez utiliser PL/SQL pour contrôler les flux d'un programme SQL, utiliser des variables, et écrire des procédures de gestion d'erreur. Un avantage premier de PL/SQL est la capacité à stocker la logique applicative dans la base de données. Une procédure ou fonction PL/SQL est un objet de schéma qui consiste en un ensemble d'ordres SQL et autres constructions PL/SQL regroupés ensemble, stockés dans la base de données et exécutés comme une unité pour résoudre un problème spécifique ou effectuer un ensemble de tâches associées. L'avantage principal de la programmation côtéserveur et la fonctionnalité prédéfinie d'être déployée n'importe où. Oracle Database peut aussi stocker des unités de programme écrites en Java. Une procédure stockée Java est une méthode Java publiée et stockée dans la base pour une utilisation générale. Vous pouvez appeler des programmes PL/SQL depuis Java et des programmes Java depuis du PL/SQL. Daphné Nougier 14 La Gestion des Transactions La base de données doit s'assurer que plusieurs utilisateurs peuvent travailler en concurrence sans corruption des données d'un autre utilisateur. Transactions Une transaction est une unité logique, atomique de travail qui contient un ou plusieurs ordres SQL. Oracle Database garantie que les trois opérations s'exécute avec succès ou échec en tant qu'unité. Par exemple, en cas de panne si un ordre dans la transaction échoue alors les autres doivent être annulés. Concurrence des Données Une nécessité pour un RDBMS multi-utilisateur est le contrôle de concurrence, qui est un accès simultané des mêmes données par plusieurs utilisateurs. Sans contrôle de concurrence, les utilisateurs pourraient mal changer les données et compromettre l'intégrité des données. Par exemple, un utilisateur pourrait mettre à jour une ligne alors qu'un autre utilisateur la mettrait à jour simultanément. Oracle Database utilise les verrous pour contrôler l'accès concurrent aux données. Consistance des Données Dans Oracle Database, chaque utilisateur a une vue consistante des données, y compris des modifications visibles effectuées par ses propres transactions et celles validées par d'autres utilisateurs. Oracle Database renforce toujours au niveau ordre la consistance en lecture, qui garantit que les données retournées par une seule requête sont validées et consistantes par rapport à un point unique dans le temps. Daphné Nougier 15 L'Architecture Oracle Database Un serveur base de données Oracle comprend une base de données et au-moins une instance base de données. une base de données est constituée d'un ensemble de fichiers, localisés sur disque. Ces fichiers peuvent exister indépendamment d'une instance base de données. Database instance Une instance est un ensemble de structures mémoire qui gèrent les fichiers de la base de données. Daphné Nougier 16 L'Architecture Oracle Database Un serveur base de données Oracle comprend une base de données et au-moins une instance base de données. une base de données est constituée d'un ensemble de fichiers, localisés sur disque. Ces fichiers peuvent exister indépendamment d'une instance base de données. Database instance Une instance est un ensemble de structures mémoire qui gèrent les fichiers de la base de données. Daphné Nougier 17 Structures de L'Instance Database Une base de données Oracle utilise des structures mémoire et processus pour gérer et accéder à la base de données. Toutes les structures mémoire existent dans la mémoire principale des ordinateurs qui constituent le RDBMS. Quand les applications se connectent à une base de données Oracle, ils sont connectés à une instance database. L'instance sert les applications en allouant d'autres zones mémoire en plus du SGA, et démarre d'autres processus en plus des background processes. Les Background processes consolident les fonctions qui seraient gérées par plusieurs programmes Oracle Database pour chaque processus client. Les processus d'arrière-plan effectuent des I/O de manière asynchrone et gèrent d'autres processus Oracle Database pour fournir du parallélisme pour de meilleures performances. Structures Mémoire de l'Instance Oracle Database crée et utilise des structures mémoire pour l'utilisation de la mémoire pour le code des programmes, les données partagées entre utilisateurs, les zones de données privées pour chaque utilisateur connecté. Les structures mémoire associées à l'instance sont : ¥ System Global Area (SGA) Le SGA est un groupe de structures mémoire partagées qui contient les données et informations de contrôle associées à une instance database. Des exemples de composants SGA sont les data blocks en cache et les zones partagées SQL. ¥ Program Global Areas (PGA) Un PGA est une région de mémoire qui contient les données et informations de contrôle pour un processus serveur ou d'arrière-plan L'accès au PGA est exclusif au processus. Chaque processus serveur et background process a sa propre PGA. Daphné Nougier 18 Architecture de l'Application Dans une architecture client-serveur, l'application client initie une demande pour une opération à effectuer sur le serveur base de données. Le serveur exécute le logiciel Oracle Database et gère les fonctions nécessaires pour l'accès aux données partagées concurrentes. Le serveur reçoit et traite les demandes des clients. Dans une architecture multi-tiers traditionnelle, un ou plusieurs serveurs d'application effectuent une partie des opérations. Un serveur d'application ou application server contient une grande partie de la logique de l'application, fournit des accès aux données pour le client et effectue certains traitements d'interrogation, allégeant ainsi la charge de la base de données. Le serveur d'application peut servir d'interface entre les clients et plusieurs bases de données et fournir un niveau supplémentaire de sécurité. Service-oriented architecture (SOA) est une architecture multi-tiers dans laquelle la fonctionnalité de l'application est encapsulée dans des services. Les services SOA sont habituellement implémentés en Web services. Les Web services sont accessibles par HTTP et sont basés sur des standards XML comme Web Services Description Language (WSDL) et SOAP. Oracle Database peut agir en tant que provider Web service provider dans un environnement multi-tiers ou SOA. Architecture Réseau Oracle Net Services est l'interface entre la base de données et les protocoles de communication réseau qui facilitent le traitement distribué et les bases de données distribuées. Les protocoles de Communication définissent le moyen par lequel les données sont transmises et reçues sur un réseau. Oracle Net Services supporte les communications sur tous les protocoles réseaux majeurs comme TCP/ IP, HTTP, FTP, et WebDAV. Architecture Serveur dédié ou Dedicated server architecture Daphné Nougier 19 Architecture Multitenant Oracle Database 12c supporte l'architecture multitenant permet à une base de données Oracle d’être un conteneur database (CDB). Un CDB est une base de données physique qui contient de zéro à plusieurs bases de donnée plugables (PDB) créées par l’utilisateur . Une PDB est une collection portable de schémas objet et non schema. Lorsque vous démarrez avec Oracle Database 12c, vous devez créer une base de données soit de type CDB ou non-CDB. Vous pouvez plugger une non-CDB dans une une CDB en tant que PDB. Pour déplacer une PDB vers une non-CDB, vous devez utiliser Oracle Data Pump. En consolidant plusieurs bases de données physiques sur des machines séparées en une seule database sur une seule machine, l'architecture multitenant fournit les avantages suivants : ¥ réduction de coût pour le matériel ¥ mouvements de données et de code plus facile et plus rapide ¥ gestion et réglage plus facile de la base de données physique ¥ Séparation des données et du code ¥ Séparation de fonctions entre un administrateur PDB gère uniquement les PDB pour lesquelles il a des privilèges. L’administrateur CDB gère le CDB entier. Physiquement, MYCDB est une base de données Oracle. MYCDB a une instance database (bien que plusieurs instances sont possibles avec Oracle Real Application Clusters) et un ensemble de fichiers database, comme une non-CDB. MYCDB contient deux PDBs: hrpdb et salespdb. ces PDBs apparaissent avec leurs applications respectives comme avant leur consolidation base de données. Pour administrer le CDB ou les PDB dedans, un administrateur CDB peut se connecter au conteneur root, qui est une collection de schémas, objets de schémas et objets de non schéma auxquelles les PDBs appartiennent. CDBs et non-CDBs ont des différences architecturales. Daphné Nougier 20 Documentation Oracle Database La documentation est divisée en trois niveaux ou groupes : basique, intermédiaire et avancé. Les utilisateurs peuvent commencer avec les manuels du groupe basique (Oracle Database 2 Day DBA, Oracle Database 2 Day Developer's Guide, ou ce manuel), passent ensuite aux manuels du groupe intermédiaires (2 Day + series), et terminent avec les manuels avancés qui comprennent le reste de la documentation. Groupe Basique Les utilisateurs techniques débutant sur Oracle Database commencent par lire un ou plusieurs manuels du groupe basique d'un bout à l'autre. Chaque manuel est conçu pour être lu en deux jours. Le groupe basique comprend : Oracle Database 2 Day DBA Ce manuel est un manuel basé sur des tâches de démarrage DBA qui enseigne comment effectuer les tâches d'administration database jour par jour. Il enseigne les tâches courantes d'administration nécessaires pour garder la base de données opérationnelle et effectuer des tâches basiques de dépannage et de réglage de performance. Oracle Database 2 Day Developer's Guide Ce manuel est un manuel basé sur des tâches de démarrage développeur base de données qui explique comment utiliser la base de données avec SQL et PL/SQL. Les manuels du groupe basique sont étroitement liés et comportent un certain nombre de références. Par exemple Oracle Database Concepts renvoie fréquemment les utilisateurs sur un manuel 2 Day manual pour apprendre à effectuer une tâche basée sur un concept. Les manuels 2 Day référencent fréquemment Oracle Database Concepts pour un concept sur une tâche. Groupe Intermédiaire Les manuels de ce groupe sont préfixés par le mot 2 Day + car il ajoute des informations contenues dans les manuels 2 Day. Ces manuels couvrent plus en profondeur ce qui est possible dans les manuels basiques ou couvrent des sujets d'intérêts spéciaux. Comme le montre le tableau ci-dessous, les manuels 2 Day + sont divisés en manuels pour les DBAs et développeurs. Groupe Avancé Ces manuels sont prévus pour des utilisateurs experts qui nécessitent plus d'informations détaillées sur un sujet particulier fourni par les manuels 2 Day + . Les manuels de référence Essentiel dans le groupe avancé comprennent : Oracle Database SQL Language Reference Ce manuel est la source d'information définitive pour Oracle SQL. Oracle Database Reference Ce manuel est la source définitive pour des informations sur les paramètres d'initialisation, les vues du dictionnaires de données et les vues dynamiques de performance. Les guides avancés sont trop nombreux pour être listés ici. Le tableau ci-dessous guide sur ceux utilisés en majorité par les experts DBA et développeurs. Daphné Nougier 21 Daphné Nougier 22