Génération de code SQL avec le SQL

Dimension: px
Commencer à balayer dès la page:

Download "Génération de code SQL avec le SQL"

Transcription

1 1

2 2

3 3

4 Génération de code SQL avec le SQL La requête ci-dessus montre comment générer un script de sauvegarde logique avec SQL*Plus. Les chaînes de caractères sont concaténées avec l opérateur. Les métas caractères comme la simple côte sont imprimés littéralement lorsque l on double le caractère générique. 4

5 Le résultat est affiché ci-dessus. La notation q c texte à encadrer c (c pouvant être n importe quel caractère alpha) permet d extraire les colonnes de la tables qui contiennent des caractères 5

6 Astuces diverses Il est souvent utile de générer des volumes importants dans la base afin de vérifier les temps de réponse des requêtes SQL. L insertion récursive d une table sur ellemême permet de créer rapidement un nombre de lignes important. L exemple cidessus fonctionne s il n y a pas de contrainte d unicité sur la table BIG_EMP. 6

7 Extension de l ordre GROUP BY ROLLUP permet de calculer plusieurs niveaux de sous totaux dans un groupe donné de dimensions. Il calcule également un grand total. ROLLUP est une simple extension de la clause GROUP BY, sa syntaxe est extrêmement facile à utiliser. L'extension ROLLUP est très efficace, la surcharge est minime pour une requête données. CUBE regroupe un ensemble spécifié de colonnes et crée des sous totaux pour l'ensemble de toutes les combinaisons possibles. En termes d'analyse multidimensionnelle, CUBE génère tous les sous totaux qui pourraient être calculés pour un cube de données avec les dimensions spécifiées. Si vous avez spécifié CUBE (temps, région, département), le jeu de résultats comprendra toutes les valeurs qui seraient incluses dans une expression ROLLUP équivalente avec des combinaisons supplémentaires. Pour plus d information consulter «Oracle Database Data Warehousing Guide» 7

8 Vues relationnelles L exemple de la diapositive montre comment masquer la complexité d une requête d agrégation utilisant l extension ROLLUP de la clause GROUP BY. La vue peut être utilisée simplement et il est également possible de filtrer sa sortie avec une clause WHERE. Par exemple il est possible d afficher seulement les totaux de la manière suivante : SQL> select * from Salaires_par_departements where "Type Emploi" like 'Total%' ; 8

9 9

10 Vues matérialisées Les vues matérialisées sont des résultats pré calculés de requête SQL qui sont stockés au préalable dans la base de données. Les ordres SQL qui doivent effectuer des calculs assez long peuvent bénéficier de ces résultats en les récupérant sans être obligés de parcourir toute la base de données. les vues matérialisées sont identiques aux tables (en partition ou pas) et se comportent comme des index, elles sont utilisées de manière transparente (Query Rewrite) afin d'améliorer les performances. 10

11 Syntaxe: materialized view voir le manuel «SQL Reference» et «Warehouse Guide» 11

12 12

13 Concepts Oracle fournit un certain nombre d outils pour effectuer les opérations d alimentation et de déchargement des bases de données. Parmi ces produits on compte Oracle Data Integrator anciennement sunopsis acheté par Oracle pour enrichir sa famille de produits d'intégration, il fait partie de la suite: Oracle Fusion Middleware et Oracle Warehouse Builder (OWB). OWB est l outil ETL pour Extract, Transform, Load initialement développé par Oracle en langage JAVA. C est un outil de développement qui permet de concevoir principalement des procédures de traitement écrites en langage SQL, PL/SQL et SQL*Loader pour les chargements. Avant d utiliser Warehouse Builder il est utile de comprendre le principe de fonctionnement et d utilisation des programmes sous jacents que génère l outil ETL. Comme son nom l indique OWB est l outil consacré pour la création de base de données d aide à la décision ou d infocentre que l on nomme communément «Data Warehouse». Les structures logiques de ce type de base de données sont organisées en étoile ou en flocons de neige. On parle en général de «cubes» ou de «star schéma». Ces concepts vont être présentés à la fin de ce chapitre. 13

14 Extractions et Chargements basiques SQL*Plus est l utilitaire basique que l on utilise pour lancer des ordres SQL avec Oracle Database. Cet outil permet également de produire des états et de sauvegarder les résultats vers des fichiers plats. Il est tout à fait possible de décharger des données de type texte avec cet outil en utilisant l option «spool» tout en formatant la sortie de telle sorte que l on ai que les données brutes dans le fichier résultant. La puissance du langage SQL vous permet ainsi d effectuer toutes les transformations nécessaires avec l ordre SELECT lors de l extraction des données vers le fichier plat. L opération inverse peut être effectuée avec l utilitaire SQL*Loader qui prend les directives de chargement à partir d un fichier de contrôle. La documentation complète de cet outil se trouve dans le manuel «Utilities» que l on peut télécharger sur le site Ce principe simple d extraction et de chargement fonctionne sur tous les environnements qui supportent Oracle Database. OWB vous permet de concevoir des programmes similaires avec une interface de conception beaucoup plus conviviale. Le chargement de fichiers plats avec l utilitaire SQL*Loader peut être conçu avec Warehouse Builder. 14

15 Combinaisons avec les outils du système d exploitation Dans certaines circonstances, il est parfois utile de combiner les utilitaires d Oracle avec les outils du système d exploitation. Par exemple, si vous désirez utiliser des logiciels que l on ne peut interfacer directement avec le serveur Oracle, vous pouvez encapsuler des ordres SQL ou PL/SQL dans des scripts «shell» d Unix afin que ceux-ci puissent être appelés par un logiciel d ordonnancement propriétaire comme l illustre la figure ci-dessus. Il arrive dans certains cas que l on utilise cette technique pour appeler les procédures stockées qui ont été conçues avec OWB. 15

16 Déchargement des données dans un fichier plat La diapositive ci-dessus vous montre la syntaxe de SQL*Plus qui permet de produire des données brutes dans un fichier de sortie de type texte. OWB permet également d extraire les informations de la base de données dans des fichiers plats. Cependant, l outil ne fait pas appel à SQL*Plus. 16

17 Chargement de données à partir de fichiers plats L outil SQL*Loader permet le chargement de données externes dans les tables d une base. L utilitaire fonctionne avec un moteur d analyse syntaxique d un langage de directives de chargement qui lui est propre. Ce langage est assez puissant, il permet d effectuer des conversions de type et d exécuter des règles de transformation de données. Les directives sont définies dans un fichier de contrôle qui est lu en entrée avec le fichier de données. En sortie, SQL*Loader écrit les données transformées dans la base de données cible et produit trois fichiers de compte rendu d exécution : un fichier journal du traitement, un fichier des erreurs d exécution et un fichier des enregistrements rejetés. L outil offre de nombreuses possibilités pour optimiser les chargements, notamment le mode DIRECT LOAD. Les données sont stockées directement dans les DATAFILES de la base sans passer par les instructions INSERT du moteur SQL. Ce mode de chargement est beaucoup plus rapide que le mode traditionnel qui utilise le moteur SQL. Il est adapté lorsque l on a à alimenter rapidement une base DATA WAREHOUSE. Warehouse Builder est très pratique pour créer des scripts de chargements SQL*Loader. Un assistant de modélisation de la structure des fichiers plats vous permet de gagner en productivité pendant la phase d import des données métas dans le dictionnaire OWB. 17

18 Utilisation de SQL*Loader Oracle fournit plusieurs étude de cas d utilisation de l outil dans le répertoire $ORACLE_HOME/rdbms/demo. L une d elles est décrite ci-dessus. Il s agit d un chargement simple de la table EMP. Les directives sont définies dans le fichier de contrôle utlcase2.ctl. Les enregistrements rejetés sont produits dans le fichier utlcase2_rejets.dis et le fichier journal est utlcase2.log. L exécution est assurée par la commande SQLLDR. L outil est documenté dans le manuel «Utilities». Cette documentation est un complément précieux lorsque l on utilise l utilitaire de modélisation de fichiers plats de Warehouse Builder. 18

19 Création de fichiers de commandes pour SQL*Loader Warehouse Builder est l outil le plus approprié pour créer rapidement et facilement des fichiers de directives de chargement pour SQL*Loader. Cependant, lorsque les besoins ne nécessitent pas de créer des procédures de chargement sophistiquées, vous pouvez créer vous même des fichiers de contrôle simples manuellement ou en développant de petits utilitaires en SQL comme l illustre l exemple ci-dessus. 19

20 Concept des tables externes Le dispositif des Tables Externes est un complément de la fonctionnalité de chargement SQL*Loader. Il permet d accéder à des informations externes comme si elles étaient stockées dans des tables de la base de données. Avant la version d'oracle 10g, les tables externes étaient inaltérables. A partir de cette version les tables externes sont maintenant en lecture/écriture. Notez que SQL*Loader reste le meilleur choix dans les situations de chargement de données qui exigent l'indexation additionnelle de la table tampon. Pour utiliser les tables externes, vous devez avoir connaissance du format de fichier et des enregistrements sur votre plate-forme si vous utilisez le driver d accès ORACLE_LOADER pour charger du texte. 20

21 Création de tables externes Les Tables Externes sont créés en utilisant l ordre SQL CREATE TABLE...ORGANIZATION EXTERNAL. Lorsque vous créez une table externe, vous devez spécifier les attributs suivants: TYPE indique le type de table externe. Les deux types disponibles sont ORACLE_LOADER et ORACLE_DATAPUMP. Chaque type est associé à sont propre driver. Le driver d accès ORACLE_LOADER est utilisé par défaut. Il permet seulement d effectuer des chargements, les informations source doivent normalement provenir de fichiers textes. Le driver d accès ORACLE_DATAPUMP peut effectuer soit des chargements soit des déchargements. Les données proviennent de fichiers binaires. DEFAULT DIRECTORY Défini la destination par défaut des fichiers qui sont lus ou écrits. L emplacement est un répertoire logique qui est associé à un répertoire physique du système de fichiers de la machine. ACCESS PARAMETERS décrit la source des données avec les spécificités associées au driver d accès. LOCATION spécifie l emplacement et les noms des fichiers de destination. Si l emplacement n est pas indiqué, c est le répertoire par défaut qui est utilisé. 21

22 La diapositive ci-dessus montre différents principes et techniques de duplication et de transformation que l on peut effectuer avec le langage SQL. Ce sont ces principes qui sont largement mis en application avec «Warehouse Builder». 22

23 L instruction SQL MERGE est apparue en version 9i. Elle a été typiquement conçue pour résoudre certaines problématiques de l alimentation des bases de données de type Data Warehouse, en particulier pour gérer les multiples chargements potentiels d informations identiques dans une même base de données. MERGE combine les ordres INSERT et UPDATE en se basant soit sur une contrainte d unicité et/ou sur une condition de la requête d interrogation SELECT. La syntaxe de l instruction MERGE peut s avérer relativement complexe et fastidieuse. L utilisation d OWB permet notamment de simplifier largement la production et l écriture d ordre SQL MERGE et par conséquent de gagner un temps précieux. 23

24 DML Error Logging Lorsque l on exécute une instruction DML Data Manipulation Language : INSERT, UPDATE, DELETE sur un nombre important d enregistrements, une erreur d exécution, par exemple, la violation d une contrainte d intégrité, peut provoquer l annulation complète de toutes les opérations concernées par la requête SQL DML. Il peut être dommage d avoir à relancer un traitement qui peut mettre plusieurs minutes à s exécuter, surtout si l erreur survient lorsqu il était sur le point de se terminer. Il est possible de résoudre ce type de problème avec une procédure stockée écrite en PL/SQL qui traitera les enregistrements un par un avec un contrôle d erreur approprié. Cependant, les performances d exécution de ce type de procédure sont nettement moins bonnes que celles du traitement des enregistrements en une seule passe. La version 10g offre la possibilité de recueillir les enregistrements en erreur dans une table spéciale et de permettre ainsi au traitement de continuer. Pour mettre en œuvre cette fonctionnalité il faut créer la table des erreurs avec la procédure DBMS_ERRLOG.CREATE_ERROR_LOG et de compléter l ordre SQL avec la clause LOG ERRORS INTO comme le montre la diapositive ci-dessus. 24

25 Le transfert des informations d une base de données vers une autre peut se faire par l intermédiaire de fichiers plats. C est en général la méthode qui est utilisée, notamment lorsque l on affaire à un environnement hétérogène. Cependant, il est possible de transférer les données directement de base à base, en particulier, si la base source est compatible avec la base cible. C est bien sur le cas quand la source et la cible sont des bases Oracle, cela peut être également le cas si l on utilise l interface «heterogenous services» ou le module «Oracle Transparent Gateway». Le transfert des données de base à base s appuie sur un lien inter bases que l on nomme «database link». La diapositive ci-dessus illustre la mise en œuvre des liens inter base. 25

26 26

27 Partitionnement Le partitionnement permet de découper une table et/ou un index sur 1 ou plusieurs critères logiques. La table se comporte alors comme plusieurs tables de tailles plus petites. Les avantages principaux du partitionnement sont : De pouvoir définir des critères de stockage différents pour chacune des partitions. Par exemple, chaque partition peut être créé sur un «Tablespace» indépendant afin d opérer une répartition équitable des entrées/sorties ou bien d obtenir une granularité plus fine concernant les fichiers à sauvegarder ou à restaurer. Le découpage logique de la table permet un accès plus rapide aux informations (moins de lectures disques physiques à effectuer en particulier). Le moteur SQL prend en charge le critère de partitionnement et optimise l accès aux données en éliminant automatiquement les partitions («partition pruning») qui ne sont pas concernées par la requête SQL SELECT. Oracle propose 3 grands types de partitionnements : by range : on définit les partitions par tranche supérieure exclusive. Le critère de partition est en général une date. Exemple: PARTITION P1 VALUES LESS THAN (TO_DATE('01/03/2008','dd/mm/yyyy') by list : on définit une valeur par partition (utilisé lorsque la liste de valeur pour le champ considéré est faible) by hash : la partition de stockage est calculée dynamiquement par un calcul de type hash code (basé sur la fonction modulo du critère de partition choisi), cela permet de répartir équitablement les données sur les différentes partitions. Ce type de partitionnement est vraiment efficace lorsque la volumétrie est très importante. 27

28 Range Partitionning C est le type de partitionnement le plus utilisé et le plus ancien. La diapositive ci-dessus montre un aperçu de la syntaxe. La clé de partition dans cet exemple est le champ CDATE de type DATE. Les informations sont automatiquement rangées dans la partition correspondant à la date en cours car elle est générée automatiquement via la fonction SYSDATE qui est la valeur par défaut du champ CDATE. Dans le cas où l on insert une information avec une date au-delà du 1 février 2012, l instruction SQL devrait être en erreur. Pour éliminer cet inconvénient il convient d ajouter une partition avec la clé MAXVALUE comme le montre l exemple ci-dessous. ALTER TABLE F_PROXY_SC_5 ADD PARTITION "PDEFAULT" VALUES LESS THAN (MAXVALUE) TABLESPACE STAT_DATA; 28

29 Il existe 2 façons de partitionner un index sous Oracle : locally partitioned index : pour chaque partition de table créée, il y aura une (et une seule) partition d'index. Les données dans chaque partition d'index pointent sur l'ensemble des données d'une et unique partition de table. Logiquement, si la table a N partitions, l'index aura également N partitions globally partitioned index : l'index est partitionné indépendamment de la table. Une partition d'index peut pointer sur des données dans une ou plusieurs partitions de table. Un index globalement partitionné ne peut être que partitionné by range. Les index sur des tables partitionnées sont, par défaut, des index globaux sur une seule partition (en effet, par défaut, ils ne sont pas partitionnés). Partitionnement composite C'est une méthode de partitionnement hybride. Les données sont d'abord partitionnées by range (et également by list aujourd hui). Ensuite, chaque partition sera sous partitionnée soit by hash ou by list (et maintenant by range). Il n'est pas nécessaire d'avoir exactement le même nombre de sous partitions par partition : par exemple, une partition peut être constituée de 4 sous partitions alors qu'une autre sera composée de 5 sous partitions. Le mécanisme de découpage logique peut être étendu sur plusieurs champs, ainsi que sur 2 niveaux. On parle dans ce cas de sous partitionnement. 29

30 Composite range range partitioning Il est maintenant possible d effectuer un partitionnement par intervalle à deux niveaux sans faire appel à une clé composée de partition. Par exemple, partitionner par date de commande au premier niveau puis par date de livraison pour le sous-partitionnement. La version 11g supporte également le partitionnement composite avec le type «list» en premier niveau. Composite list-range partitioning Permet le partitionnement par intervalle au sein d une même liste de partitions. Par exemple, le partitionnement par mois sur une liste de régions définie. 30

31 OWB facilite la création des tables et index en partitions, la syntaxe étant toujours assez complexe à écrire manuellement. Syntaxe: list-range partitioning voir le manuel «SQL Reference» 31

32 Avantages du partitionnement Optimisation Pour les tables dépassant une certaine taille (plusieurs gigas), le partitionnement permet de distribuer les informations de manière plus efficace en fonction des critères de recherche et de la clé de partitionnement. Cela permet d éliminer certain goulet d étranglement en limitant les conflits d accès simultanés aux mêmes blocs de données et éliminant ainsi les problèmes de verrouillage. L accès aux tables organisées en partition met à profit le «partition pruning» qui consiste à interroger uniquement les partitions concernées en fonction du critère de recherche et de partitionnement. VLDB Dans le cadre des «Very Large Database» le partitionnement est presque incontournable. Lorsque les tables de fait ainsi que les dimensions dépassent en taille plusieurs gigas octets, il convient d utiliser le «Range Partitioning» afin de répartir les informations selon un critère de temps. Cela fait partie des bonnes pratiques, consulter à ce sujet la documentation «Data Warehouse Guide.» Résolution de problème de performances Dans bien des cas, quand la volumétrie des tables augmente considérablement et génère des problèmes de performance sur une base en exploitation, la transformation des tables en partitions peut être une méthode de résolution pour améliorer les temps de réponse. Le package PL/SQL DBMS_REDEFINITION permet de transformer les tables en partition sans avoir à générer de coupure de service pour les bases en production. Ce package est documenté dans le manuel «PL/SQL Packages and Types Reference.» 32

33 33

34 34

35 Démarche d optimisation Durée - doit être évoquée dés le début du projet, et doit être utilisée pendant toute sa durée. Objectifs - Etablir des objectifs quantifiables en éliminant les objectifs flous. Doivent permettre de définir des objectifs acceptés et approuvés par tous les intervenants. Contrôles - Les résultats doivent être contrôlés et communiqués régulièrement. Ces résultats doivent être comparés aux objectifs. Des dérives peuvent amener à corriger les objectifs. Coût du tuning Plus les problèmes de performances sont réglés tardivement et plus leur coût peut être élevé. 35

36 Gain pouvant être obtenus Il est important de ne pas perdre de vue certains principes en matière de performances et d optimisation des bases de données Oracle : En premier lieu, il est nécessaire de définir ce que l on cherche et de bien poser le problème. L objectif premier est de détecter les points de contention et les éventuels goulets d étranglement. En général, les gains qui peuvent être obtenu pour résoudre des problèmes de performance sont répartis de la manière suivante : - Optimisation du code SQL et des structures logiques 65 % - Réglage des structures physiques, répartition des entrées/sorties 20 % - Réglage de l instance et du moteur SGBD 10 % - Optimisation du système d exploitation 5 % 36

37 Étapes d optimisation La diapositive ci-dessus montre les étapes principales d une démarche d optimisation. Ces étapes doivent être franchies dans l ordre énoncé. Le résultat en terme de performances de chacune des étapes dépend du résultat des étapes précédentes. Des décisions prises dans une étape influenceront les actions des étapes suivantes. On distingue deux parties en terme d optimisation. Celle de l application et celle qui concerne l instance, la base de données et le système d exploitation. La première partie est la plus importante car on peut espérer dans certains cas, améliorer à plus de 60% les temps de réponse de l ensemble. Les bénéfices les plus importants sont tirés du réglage des requêtes SQL. En général, les problèmes de temps de réponse dans un bloc PL/SQL sont principalement dus à la lenteur d exécution des ordres SQL qu il contient. Les ordres SQL eux même sont difficiles à améliorer si le schéma relationnel est mal conçu. Cela dépend souvent d un modèle conceptuel qui a été négligé ou est absent. La deuxième partie des étapes de réglage dépendent largement de la phase d optimisation de l application. Les réglages de la mémoire sont souvent moins importants voir illusoire que ce que l on peut faire pour optimiser le «entrées/sorties.» 37

38 38

39 Curseurs : Architecture d exécution Pour soumettre des instructions SQL à une base de données Oracle, une session doit être établie entre le programme utilisateur (client) et le serveur de base de données. Le programme utilisateur peut être par exemple SQL*Plus, ou une application développée à l'aide d'un outil, tel qu'oracle Forms. Cette application ou cet outil est exécuté en tant que processus utilisateur. Lorsque la session est établie, les ordres SQL peuvent être exécuté. Le contexte d exécution d ordre SQL se nomme un curseur. 39

40 Comment les ordres SQL sont ils traités et exécutés par le noyau Oracle Le processus serveur alloue un espace de mémoire privé nommé context area afin de traiter les ordres SQL. La commande SQL est alors interprétée syntaxiquement et sémantiquement (parsing) puis exécutée (execute) dans ce contexe area. Les informations nécessaires à l exécution ainsi que les données récupérées (fetch) après le traitement sont stockées dans cet espace. Cet espace d exécution est géré de manière interne par le processus serveur et le programme utilisateur n y a pas de contrôle direct. Un curseur est donc un pointeur vers le context area. Traitement d un ordre SQL 1. Création du curseur. Le «context area» ou «private SQL area» est d abord alloué indépendamment de tout ordre SQL. Il est créé pour maintenir le contexte d exécution d un ordre SQL. Dans la plupart des cas, la création du curseur est automatique, cependant, en programmation avec des langages pré compilés, il est possible de déclarer explicitement un curseur. 2. Analyse de l ordre SQL (Parsing). L ordre SQL est envoyé par le programme client et le processus serveur effectue les opérations suivantes : - L ordre est analysé syntaxiquement et sémantiquement en vérifiant la définition des tables et des colonnes concernées dans le dictionnaire de la base de données («hard parse»). - Les droits d accès sont également contrôlés. Ces opérations donnent lieu à des requêtes SQL sous jacentes pour interroger le dictionnaire appelées : «recursive call». - Le plan d exécution («explain plan») est calculé pour déterminer le chemin d accès aux informations le plus rapide. - L ensemble est ensuite chargé dans l espace SQL partagé («shared SQL area») 40

41 Oracle exécute le «parsing» seulement s il n y a pas d ordre SQL similaire dans l espace SQL partagé (SQL Area). Dans le cas contraire, l ordre SQL peut être directement exécuté ce qui permet d optimiser («soft parse») le temps d exécution pour un ordre SQL régulièrement utilisé. Les requêtes d interrogation (SELECT notamment) sont différentes des autres ordres SQL car elles retournent un certain nombre de résultats sous forme de lignes au programme utilisateur. 3. Décrire le type de résultats de la requête. Cette étape est nécessaire lorsque le type de résultat n est pas connu à l avance. Par exemple, si les ordres SQL sont saisis en mode interactif comme avec SQL*Plus par exemple. La phase «Describe» consiste à déterminer les caractéristiques (types, longueur et nom) des résultats requis par l ordre SQL. 4. Définition des structures de réception des résultats (Define). Cette phase permet de définir l emplacement, les tailles et le type des variables de réception des informations recueillies (Fetch) par la requête SQL. 5. Relier les variables utilisateur (Bind Variables) à la requête. Lorsque les valeurs pour la clause WHERE sont passées via des variables «hôtes» du programme utilisateur, il est nécessaire d indiquer leurs adresses au serveur Oracle. 6. Exécuter l ordre SQL (Execute). A ce niveau Oracle dispose de toutes les informations pour exécuter l ordre SQL. Pour l exécution des ordres UPDATE et/ou DELETE, des verrous sont implicitement posés sur les lignes concernées par la requête SQL. Ces verrous seront libérés par les ordres de contrôle COMMIT, ROLLBACK ou SAVEPOINT. 7. Fetch. C est la phase ou les lignes des tables sont récupérées et éventuellement triées pour les envoyer au programme utilisateur. Elles sont transmises soit une par une, soit en paquet en fonction de la taille du Buffer de réception (Array Fetch) du programme client. 8. Close. L étape finale est la fermeture du curseur 41

42 Optimisation SQL : Plan d exécution L art d optimiser un ordre SQL passe par l affichage du plan d exécution afin d évaluer le chemin de recherche des informations dans la base de données. 42

43 Optimisation heuristique La génération du plan d'exécution est basée sur un ensemble de règles heuristiques définissant un score prédéterminé des méthodes d'accès. Il est possible que la structure de la requête influe sur le plan lorsque plusieurs méthodes ont le même score. L'optimiseur heuristique, basé sur une quinzaine de règles d optimisation, est appelé "Rule Based Optimizer" ou RBO. Les caractéristiques des données et la distribution des tables et index n'affectent pas le plan d'exécution. Les heuristiques peuvent s'avérer mal adaptées au contexte : cela entraîne souvent une génération d'un plan non optimal. Optimisation statistique L'optimisation statistique repose sur un modèle de coût et la connaissance de statistiques sur les objets manipulés. Génération de tous les plans possibles puis sélection du moins cher. Utilisation d'heuristiques pour réduire l'espace de recherche. Possibilité de spécifier des HINT pour privilégier une stratégie. L'optimiseur statistique est appelé "Cost Based Optimizer" ou CBO 43

44 Scores prédéfinis du Rule Based Optimizer La diapositive ci-dessus montre les 15 règles prédéfinies utilisée par l optimisation RBO. Le temps d accès aux données est proportionnel au rang du score. 44

45 RBO Versus CBO Le noyau Oracle intègre les deux moteurs d optimisation. Le moteur RBO traditionnel, basé sur les règles, est obsolète et ne sera plus supporté à terme. Cela implique qu il est fondamental d optimiser le code SQL en prenant en compte les résultats obtenus par le moteur CBO. 45

46 Collecte automatique des informations statistiques Le moteur Oracle à partir de la version 10g, collecte automatiquement des informations statistiques destinées à l optimisation des requêtes SQL et aux mesures de performance. Il y a deux types de statistiques : Les statistiques associées aux segments de la base (Tables et Index) qui permettent au moteur de base de données de déterminer le meilleur Plan d Exécution pour optimiser les temps de réponse des ordres SQL. Par exemple, le nombre de lignes (num_rows), le nombre de blocs (blocks) et la longueur moyenne d un enregistrement (avg_row_len) d une table de la base de données font partie des statistiques que le moteur d optimisation SQL peut exploiter pour améliorer les performances. Les informations statistiques de comportement de l instance de base de données sont collectées régulièrement (toutes les heures par défaut) et ces clichés sont stockés dans le référentiel de charge de travail AWR (Automatic Workload Repository). Ces clichés sont exploités par le moteur d analyse ADDM (Automatic Diagnostic Database Monitor) pour établir des diagnostics et des mesures de performance par comparaison. 46

47 Démarche d optimisation du code SQL Vous pouvez suivre la démarche présentée ci-dessus pour optimiser le code SQL. L idée est de tirer parti au maximum du moteur d optimisation CBO. Bien sûr, cette démarche part du principe que le modèle de données est propre et cohérent. Dans un premier temps, vous pouvez mettre au point le code SQL à part avant de l intégrer dans les blocs PL/SQL, avec SQL*Plus par exemple. Il est important de tester les requêtes sur des volumétries réalistes par rapport à ce qu il y aura en production. Une erreur classique est de coder du SQL sur une base vide, cela résulte souvent sur des problèmes de performances quelques temps après la mise en exploitation. Pour les requêtes complexes où la distribution des informations est difficile à déterminer pour le CBO, vous pouvez utiliser des HINTs. Ils permettent de privilégier une stratégie de recherche, cependant, il ne faut pas tomber dans l excès inverse en utilisant les indicateurs dans tous les cas de figure. Bien souvent, le moteur CBO détermine le meilleurs plan d exécution possible en fonction du schéma et de l architecture en place. Si malgré tout, les temps de réponses restent mauvais, il faut peut être remettre en question le modèle de données ou utiliser des techniques et astuces comme le partitionnement, la dénormalisation, etc La figure ci-dessus vous donne également la syntaxe pour le calcul des statistiques exploitées par le moteur d optimisation CBO. 47

Il est nécessaire de connaître au moins un système d'exploitation de type graphique.

Il est nécessaire de connaître au moins un système d'exploitation de type graphique. GBD-030 Oracle Prise en main Saint-Denis à 9h30 5 jours Objectifs : Une formation Oracle complète pour découvrir tous les concepts du système et les différentes façons de les utiliser concrètement tout

Plus en détail

SQL Les fondamentaux du langage (2ième édition)

SQL Les fondamentaux du langage (2ième édition) Introduction 1. Un peu d'histoire 11 2. Les normes SQL 12 3. Description rapide du modèle relationnel 14 3.1 Principaux concepts du modèle relationnel 15 3.2 Principales règles 16 4. Les opérateurs en

Plus en détail

//////////////////////////////////////////////////////////////////// Administration bases de données

//////////////////////////////////////////////////////////////////// Administration bases de données ////////////////////// Administration bases de données / INTRODUCTION Système d informations Un système d'information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données

Plus en détail

Cours 7 : Langage de définition, manipulation et contrôle des données

Cours 7 : Langage de définition, manipulation et contrôle des données Cours 7 : Langage de définition, manipulation et contrôle des données Objets d une base de données Dans un schéma Tables, vues Index, clusters, séquences, synonymes Packages, procédures, fonctions, déclencheurs

Plus en détail

1.1/Architecture des SGBD Les architectures physiques de SGBD sont très liées au mode de répartition.

1.1/Architecture des SGBD Les architectures physiques de SGBD sont très liées au mode de répartition. LP Informatique(DA2I), F7 : Administration Système, Réseaux et Base de données 15/11/2007, Enseignant : M. Nakechbnadi, mail : nakech@free.fr Première parie : Administration d une BD Chapitre 1 : Architecture

Plus en détail

I. Bases de données. Exemples classiques d'applications BD. Besoins de description

I. Bases de données. Exemples classiques d'applications BD. Besoins de description I. Bases de données Exemples classiques d'applications BD Les besoins Qu est ce qu un SGBD, une BD Architecture d un SGBD Cycle de vie Plan du cours Gestion des personnels, étudiants, cours, inscriptions,...

Plus en détail

Création d un catalogue en ligne

Création d un catalogue en ligne 5 Création d un catalogue en ligne Au sommaire de ce chapitre Fonctionnement théorique Définition de jeux d enregistrements Insertion de contenu dynamique Aperçu des données Finalisation de la page de

Plus en détail

II. EXCEL/QUERY ET SQL

II. EXCEL/QUERY ET SQL I. AU TRAVAIL, SQL! 1. Qu est-ce que SQL?... 19 2. SQL est un indépendant... 19 3. Comment est structuré le SQL?... 20 4. Base, table et champ... 21 5. Quelle est la syntaxe générale des instructions SQL?...

Plus en détail

Oracle Database 11g: Administration Workshop I Release 2

Oracle Database 11g: Administration Workshop I Release 2 Oracle University Appelez-nous: +33 (0) 1 57 60 20 81 Oracle Database 11g: Administration Workshop I Release 2 Durée: 5 Jours Description Ce cours constitue la première étape de votre formation en tant

Plus en détail

Séance de révision et manipulation de l utilitaire SQLLOADER

Séance de révision et manipulation de l utilitaire SQLLOADER Séance de révision et manipulation de l utilitaire SQLLOADER 1. Enoncé La base de données considérée représente les informations relatives à une bibliothèque qui gère le stockage, l indexation et l emprunt

Plus en détail

Compte rendu d activité Fiche n 1

Compte rendu d activité Fiche n 1 Compte rendu d activité Fiche n 1 Alexandre K. (http://ploufix.free.fr) Nature de l activité Création d une base de connaissances avec PostgreSQL Contexte : Le responsable technique souhaite la mise en

Plus en détail

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition

Plus en détail

Développer en PL/SQL. Sommaire du cours

Développer en PL/SQL. Sommaire du cours Sommaire du cours Module 1 Introduction et Rappels Module 2 Eléments de langage PL/SQL Module 3 Accès à la Base de données Module 4 Traitements stockés Module 5 Gestion des exceptions Module 6 - Compléments

Plus en détail

Oracle Database 10g: Les fondamentaux du langage SQL I

Oracle Database 10g: Les fondamentaux du langage SQL I Oracle University Appelez-nous: +33 (0) 1 57 60 20 81 Oracle Database 10g: Les fondamentaux du langage SQL I Durée: 3 Jours Description Ce cours offre aux étudiants une introduction à la technologie de

Plus en détail

Introduction aux Bases de Données

Introduction aux Bases de Données Introduction aux Bases de Données I. Bases de données I. Bases de données Les besoins Qu est ce qu un SGBD, une BD Architecture d un SGBD Cycle de vie Plan du cours Exemples classiques d'applications BD

Plus en détail

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste Christian Soutou Avec la participation d Olivier Teste SQL pour Oracle 4 e édition Groupe eyrolles, 2004, 2005, 2008, 2010, is BN : 978-2-212-12794-2 Partie III SQL avancé La table suivante organisée en

Plus en détail

SQL pour. Oracle 10g. Razvan Bizoï. Tsoft, Groupe Eyrolles, 2006, ISBN : 2-212-12055-9, ISBN 13 : 978-2-212-12055-4

SQL pour. Oracle 10g. Razvan Bizoï. Tsoft, Groupe Eyrolles, 2006, ISBN : 2-212-12055-9, ISBN 13 : 978-2-212-12055-4 SQL pour Oracle 10g Razvan Bizoï Tsoft, Groupe Eyrolles, 2006, ISBN : 2-212-12055-9, ISBN 13 : 978-2-212-12055-4 Table des matières PRÉAMBULE... MODULE 1 : PRÉSENTATION DE L ENVIRONNEMENT... 1-1 Qu'est-ce

Plus en détail

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs, relations,

Plus en détail

FMIN366 CM3 : Charger de gros volumes de données dans une base de données Oracle

FMIN366 CM3 : Charger de gros volumes de données dans une base de données Oracle FMIN366 CM3 : Charger de gros volumes de données dans une base de données Oracle 1. Manipulation de l utilitaire Oracle de chargement de données SQL*Loader Des fichiers de données au format CSV (Comma

Plus en détail

QC ETL QUASAR Conseil QC ETL. - 1 - Qu est-ce qu un ETL? - 2 Les fonctionnalités de QC ETL. - 3 L écriture de procédures de transformation

QC ETL QUASAR Conseil QC ETL. - 1 - Qu est-ce qu un ETL? - 2 Les fonctionnalités de QC ETL. - 3 L écriture de procédures de transformation QC ETL - 1 - Qu est-ce qu un ETL? - 2 Les fonctionnalités de QC ETL - 3 L écriture de procédures de transformation 1 1 Qu est-ce qu un ETL? La création d un SIAD (Système d Information d Aide à la Décision)

Plus en détail

L approche Bases de données

L approche Bases de données L approche Bases de données Cours: BD. Avancées Année: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algérie) I- : Mise à niveau 1 Cours: BDD. Année: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) L approche Base

Plus en détail

Modèle relationnel Création et modification des relations en SQL

Modèle relationnel Création et modification des relations en SQL Modèle relationnel Création et modification des relations en SQL ENT - Clé sql2009 BD - Mírian Halfeld-Ferrari p. 1 Insertion dans une relation Pour insérer un tuple dans une relation: insert into Sailors

Plus en détail

CREER ET FORMATER UNE PARTITION DE DISQUE DUR 1 QUE SONT LES PARTITIONS ET LES LECTEURS LOGIQUES? 6

CREER ET FORMATER UNE PARTITION DE DISQUE DUR 1 QUE SONT LES PARTITIONS ET LES LECTEURS LOGIQUES? 6 Table des matières. CREER ET FORMATER UNE PARTITION DE DISQUE DUR 1 QUE SONT LES PARTITIONS ET LES LECTEURS LOGIQUES? 6 QUE SONT LES DISQUES DE BASE ET LES DISQUES DYNAMIQUES? 6 FORMATAGE DES DISQUES ET

Plus en détail

Projet MVC-CD. Comportement de VP lors du déploiement itératif et incrémental du MPD vers la base de données cible

Projet MVC-CD. Comportement de VP lors du déploiement itératif et incrémental du MPD vers la base de données cible Projet MVC-CD Comportement de VP lors du déploiement itératif et incrémental du MPD vers la base de données cible Créé par S. Berberat, le 23 octobre.2014 Modifié par S. Berberat, le 29 octobre 2014 Page

Plus en détail

Dossier I Découverte de Base d Open Office

Dossier I Découverte de Base d Open Office ETUDE D UN SYSTEME DE GESTION DE BASE DE DONNEES RELATIONNELLES Définition : Un SGBD est un logiciel de gestion des données fournissant des méthodes d accès aux informations. Un SGBDR permet de décrire

Plus en détail

Bases de données relationnelles

Bases de données relationnelles Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses

Plus en détail

MySQL 5 (versions 5.1 à 5.6) Guide de référence du développeur (Nouvelle édition)

MySQL 5 (versions 5.1 à 5.6) Guide de référence du développeur (Nouvelle édition) Avant-propos 1. Les objectifs de ce livre 13 2. Les principaux sujets qu'aborde ce livre 13 3. À qui s adresse ce livre? 14 4. Les pré-requis 14 Introduction à MySQL 1. Introduction aux bases de données

Plus en détail

Oracle Database: Introduction to SQL NOUVEAU

Oracle Database: Introduction to SQL NOUVEAU Oracle University Appelez-nous: 1.800.529.0165 Oracle Database: Introduction to SQL NOUVEAU Durée: 5 Jours Description Le cours "Oracle Database: Introduction to SQL" explique comment écrire des sous-requêtes,

Plus en détail

Chap. 5 : Langage SQL (Structured Query Language) Pr. : Mohamed BASLAM Contact : baslam.med@gmail.com Niveau : S4 BCG Année : 2014/2015 1

Chap. 5 : Langage SQL (Structured Query Language) Pr. : Mohamed BASLAM Contact : baslam.med@gmail.com Niveau : S4 BCG Année : 2014/2015 1 Chap. 5 : Langage SQL (Structured Query Language) Pr. : Mohamed BASLAM Contact : baslam.med@gmail.com Niveau : S4 BCG Année : 2014/2015 1 Plan Généralités Langage de Définition des (LDD) Langage de Manipulation

Plus en détail

Salvia Liaison Financière. Manuel d installation version 15.00 Pour les professionnels des collectivités locales et de l habitat social

Salvia Liaison Financière. Manuel d installation version 15.00 Pour les professionnels des collectivités locales et de l habitat social Salvia Liaison Financière Manuel d installation version 15.00 Pour les professionnels des collectivités locales et de l habitat social Sommaire 1. Préambule... 3 2. Introduction... 3 3. Création de la

Plus en détail

Plan de formation : Certification OCA Oracle 11g. Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques

Plan de formation : Certification OCA Oracle 11g. Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques Plan de formation : Certification OCA Oracle 11g Description Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques industriels les plus avancés. Cette formation permettra

Plus en détail

Réseau ISO-Raisin. Surveillance des. Infections du Site Opératoire. (Surveillance des interventions prioritaires)

Réseau ISO-Raisin. Surveillance des. Infections du Site Opératoire. (Surveillance des interventions prioritaires) Réseau ISO-Raisin Surveillance des Infections du Site Opératoire (Surveillance des interventions prioritaires) Guide d utilisation de l application WEBISO Année 2015 Sommaire Guide utilisateur - Application

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, compression et partitionnement des données Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des

Plus en détail

CREATION WEB DYNAMIQUE

CREATION WEB DYNAMIQUE CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

CYCLE CERTIFIANT ADMINISTRATEUR BASES DE DONNÉES

CYCLE CERTIFIANT ADMINISTRATEUR BASES DE DONNÉES SGBD / Aide à la décision CYCLE CERTIFIANT ADMINISTRATEUR BASES DE DONNÉES Réf: KAO Durée : 15 jours (7 heures) OBJECTIFS DE LA FORMATION Ce cycle complet vous apportera les connaissances nécessaires pour

Plus en détail

EMC SourceOne TM for Microsoft SharePoint Recherche dans les archives Carte de référence rapide version 7.2

EMC SourceOne TM for Microsoft SharePoint Recherche dans les archives Carte de référence rapide version 7.2 Utilisez la fonctionnalité pour rechercher et restaurer du contenu SharePoint archivé dans EMC SourceOne La fonctionnalité de SharePoint est destinée aux administrateurs et utilisateurs de SharePoint.

Plus en détail

Oracle 11g Optimisez vos bases de données en production (ressources matérielles, stockage, mémoire, requêtes)

Oracle 11g Optimisez vos bases de données en production (ressources matérielles, stockage, mémoire, requêtes) Avant-propos 1. Lectorat 11 2. Pré-requis 12 3. Objectifs 12 4. Environnement technique 13 Choisir la bonne architecture matérielle 1. Introduction 15 2. Architecture disque 16 2.1 La problématique de

Plus en détail

Module 3 Exécution, interrogation d un formulaire

Module 3 Exécution, interrogation d un formulaire Module 3 Exécution, interrogation d un formulaire Manipulation du module Form Le module Form est un programme source qui peut être enregistré dans la base de données ou dans un fichier binaire sur le disque

Plus en détail

FONCTIONS DE TRAITEMENT} COUNT

FONCTIONS DE TRAITEMENT} COUNT Nom Prénom Promotion Date Buhl Damien Année 1 Groupe 2 21 Janvier 2007 CER Prosit n 22 Mots-Clés : - Requête/Langage SQL Le langage SQL (Structured Query Language) est un langage de requêtes, il permet

Plus en détail

Plateforme d'évaluation professionnelle. Manuel d utilisation de l interface de test d EvaLog

Plateforme d'évaluation professionnelle. Manuel d utilisation de l interface de test d EvaLog Plateforme d'évaluation professionnelle Manuel d utilisation de l interface de test d EvaLog Un produit de la société AlgoWin http://www.algowin.fr Version 1.0.1 du 18/01/2015 Table des matières Présentation

Plus en détail

Guide de démarrage rapide avec DataStudio Online Edition

Guide de démarrage rapide avec DataStudio Online Edition Guide de démarrage rapide avec DataStudio Online Edition Introduction Ce document vient en complément des films de démonstration disponibles sur le site web de data. L ETL ETL est un sigle qui signifie

Plus en détail

SEANCE 2 : REQUETES DE SELECTION & FORMULAIRES DE CONSULTATION

SEANCE 2 : REQUETES DE SELECTION & FORMULAIRES DE CONSULTATION SEANCE 2 : REQUETES DE SELECTION & FORMULAIRES DE CONSULTATION Année universitaire 20015-2016 Masters Économie Société - Finances Informatique appliquée SGBD Pierre-Henri GOUTTE La requête de sélection

Plus en détail

TP Contraintes - Triggers

TP Contraintes - Triggers TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution

Plus en détail

FCA SI2 GUIDE RAPIDE DE L UTILISATEUR

FCA SI2 GUIDE RAPIDE DE L UTILISATEUR FCA SI2 GUIDE RAPIDE DE L UTILISATEUR Introduction...2 1 Démarrage...3 1.1 Se connecter...3 1.2 Mettre à jour son Profil...3 1.3 Fonctionnalités du Système...4 2 Comment faire pour...5 2.1 Naviguer d un

Plus en détail

MIGRATION DE DONNÉES

MIGRATION DE DONNÉES Les contenus de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas être considérés comme un engagement de la société REVER.

Plus en détail

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1 LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1 SAS Cost and Profitability Management, également appelé CPM (ou C&P), est le nouveau nom de la solution SAS Activity-Based Management. Cette version

Plus en détail

Le language SQL (2/2)

Le language SQL (2/2) Les commandes de base sous Unix SQL (Première partie) Walter RUDAMETKIN Bureau F011 Walter.Rudametkin@polytech-lille.fr Création d'une base ([] facultatif) : createdb nombase [ -U comptepostgres ] Destruction

Plus en détail

Recueil des Fiches Concepteurs : Mise en œuvre d un site SharePoint 2013 Juin 2015

Recueil des Fiches Concepteurs : Mise en œuvre d un site SharePoint 2013 Juin 2015 Recueil des s s : Mise en œuvre d un site SharePoint 2013 Juin 2015 Ce document décrit le paramétrage pour la mise en œuvre des fonctionnalités standard de Microsoft SharePoint 2013. NADAP et SharePoint

Plus en détail

Bases de Données relationnelles et leurs systèmes de Gestion

Bases de Données relationnelles et leurs systèmes de Gestion III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation

Plus en détail

Oracle DBA 1. Business Management and Global Internet Center. B.M.G.I. Center. Intitulé de la formation : Programme de 05 jours

Oracle DBA 1. Business Management and Global Internet Center. B.M.G.I. Center. Intitulé de la formation : Programme de 05 jours Business Management and Global Internet Center Intitulé de la formation : Programme de 05 jours B.M.G.I. Center Centre Agréé Microsoft Office Adresse : 88 Ter, Bd. KRIM Belkacem - Télemly, 16004 Alger

Plus en détail

Documentation Talend. Charly Riviere CDG35

Documentation Talend. Charly Riviere CDG35 Documentation Talend Charly Riviere CDG35 1. Présentation générale Talend est un ETL pour "Extract Transform Load". Comme son nom l'indique il permet d'extraire des données pour ensuite les transformer

Plus en détail

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles) SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients

Plus en détail

Réseau ISO-Raisin. Surveillance des Infections du Site Opératoire. (Surveillance agrégée)

Réseau ISO-Raisin. Surveillance des Infections du Site Opératoire. (Surveillance agrégée) Réseau ISO-Raisin Surveillance des Infections du Site Opératoire (Surveillance agrégée) Guide d utilisation de l application WEBISO Année 2015 Sommaire 1 Introduction... 3 2 Connexion et authentification...

Plus en détail

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Le langage SQL pour Oracle - partie 1 : SQL comme LDD Le langage SQL pour Oracle - partie 1 : SQL comme LDD 1 SQL : Introduction SQL : Structured Query Langage langage de gestion de bases de donn ees relationnelles pour Définir les données (LDD) interroger

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/5 Titre professionnel : Reconnu par l Etat de niveau III (Bac), inscrit au RNCP (arrêté du 12/10/07, J.O. n 246 du 23/10/07) (32 semaines) Unité 1 : Structurer une application 6 semaines Module

Plus en détail

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 Tsoft et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 OEM Console Java OEM Console HTTP OEM Database Control Oracle Net Manager 6 Module 6 : Oracle Enterprise Manager Objectifs Contenu A la fin de ce module,

Plus en détail

Nous allons détailler dans cette documentation les fonctionnalités pour créer un objet colonne.

Nous allons détailler dans cette documentation les fonctionnalités pour créer un objet colonne. Généralités Dans le générateur d états des logiciels Ciel pour Macintosh vous avez la possibilité de créer différents types d éléments (texte, rubrique, liste, graphiques, tableau, etc). Nous allons détailler

Plus en détail

TRAVAUX PRATIQUES DE BASES DE DONNEES PARTIE A : CONCEPTION DU MCD ET MLD

TRAVAUX PRATIQUES DE BASES DE DONNEES PARTIE A : CONCEPTION DU MCD ET MLD TRAVAUX PRATIQUES DE BASES DE DONNEES PARTIE A : CONCEPTION DU MCD ET MLD Cette partie est à réaliser sur papier uniquement. Il s agit de réaliser un modèle conceptuel de données (MCD) suivi du modèle

Plus en détail

Formation DEV4 : SQL - Conception & Mise en Oeuvre

Formation DEV4 : SQL - Conception & Mise en Oeuvre Synopsis Formation DEV4 : SQL - Conception & Mise en Oeuvre Le SQL (Structured Query Language) est le langage standard de manipulation de données. À ce titre, il est le pilier fondamental de la base PostgreSQL,

Plus en détail

2011 Hakim Benameurlaine 1

2011 Hakim Benameurlaine 1 Table des matières 1 CRÉATION DES OBJETS DE BASES DE DONNÉES... 2 1.1 Architecture d une base de données... 2 1.1.1 Niveau logique... 2 1.1.2 Niveau physique... 3 1.2 Gestion d une base de données... 3

Plus en détail

Instructions SQL. Première partie : Langage de description et de gestion des données

Instructions SQL. Première partie : Langage de description et de gestion des données Instructions SQL Première partie : Langage de description et de gestion des données Quelques instructions et leur syntaxe 1. Introduction Trois principales catégories d instructions. Instructions de création

Plus en détail

Base de donnée relationnelle. Exemple de table: Film. Exemple de table: Acteur. Exemple de table: Role. Contenu de la table Role

Base de donnée relationnelle. Exemple de table: Film. Exemple de table: Acteur. Exemple de table: Role. Contenu de la table Role IFT7 Programmation Serveur Web avec PHP Introduction à MySQL Base de donnée relationnelle Une base de données relationnelle est composée de plusieurs tables possédant des relations logiques (théorie des

Plus en détail

DB Main Bien débuter.

DB Main Bien débuter. DB Main Bien débuter. Downloader depuis http://www.info.fundp.ac.be/~dbm/ L élaboration d une base de données se fait en 4 étapes : 1. L analyse conceptionnelle 2. Le MCD modèle conceptuel de données.

Plus en détail

1 Partie A : administration d une base de donnée à travers PhpMyAdmin

1 Partie A : administration d une base de donnée à travers PhpMyAdmin Ce TP se compose en 2 sections : une section de prise en main (sur ordinateur) et une section d exercice (sur papier) concernant l algèbre relationnelle. 1 Partie A : administration d une base de donnée

Plus en détail

Database Manager Guide de l utilisateur DMAN-FR-01/01/12

Database Manager Guide de l utilisateur DMAN-FR-01/01/12 Database Manager Guide de l utilisateur DMAN-FR-01/01/12 Les informations contenues dans le présent manuel de documentation ne sont pas contractuelles et peuvent faire l objet de modifications sans préavis.

Plus en détail

ORACLE TUNING PACK 11G

ORACLE TUNING PACK 11G ORACLE TUNING PACK 11G PRINCIPALES CARACTÉRISTIQUES : Conseiller d'optimisation SQL (SQL Tuning Advisor) Mode automatique du conseiller d'optimisation SQL Profils SQL Conseiller d'accès SQL (SQL Access

Plus en détail

Base de données. Objectifs du cours 2014-05-20 COURS 01 INTRODUCTION AUX BASES DE DONNÉES

Base de données. Objectifs du cours 2014-05-20 COURS 01 INTRODUCTION AUX BASES DE DONNÉES 1 Base de données COURS 01 INTRODUCTION AUX BASES DE DONNÉES Objectifs du cours 2 Introduction aux bases de données relationnelles (BDR). Trois volets seront couverts : la modélisation; le langage d exploitation;

Plus en détail

2012 - Copyright Arsys Internet E.U.R.L. Arsys Backup Online. Guide de l utilisateur

2012 - Copyright Arsys Internet E.U.R.L. Arsys Backup Online. Guide de l utilisateur Arsys Backup Online Guide de l utilisateur 1 Index 1. Instalation du Logiciel Client...3 Prérequis...3 Installation...3 Configuration de l accès...6 Emplacement du serveur de sécurité...6 Données utilisateur...6

Plus en détail

26 Centre de Sécurité et de

26 Centre de Sécurité et de 26 Centre de Sécurité et de Maintenance La fenêtre du Centre de sécurité et de maintenance (CSM) rassemble tous les outils nécessaires au contrôle, à l analyse, à la maintenance, à la sauvegarde et au

Plus en détail

1. Introduction... 2. 2. Sauvegardes Hyper-V avec BackupAssist... 2. Avantages... 2. Fonctionnalités... 2. Technologie granulaire...

1. Introduction... 2. 2. Sauvegardes Hyper-V avec BackupAssist... 2. Avantages... 2. Fonctionnalités... 2. Technologie granulaire... Guide de démarrage rapide : console de restauration granulaire Hyper-V Sommaire 1. Introduction... 2 2. Sauvegardes Hyper-V avec BackupAssist... 2 Avantages... 2 Fonctionnalités... 2 Technologie granulaire...

Plus en détail

Mysql. Les requêtes préparées Prepared statements

Mysql. Les requêtes préparées Prepared statements Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production

Plus en détail

IUT STID, 1 ère année Découverte de logiciels statistiques Prise en main du logiciel SPAD

IUT STID, 1 ère année Découverte de logiciels statistiques Prise en main du logiciel SPAD Université de Perpignan - IUT de Carcassonne Vivien ROSSI Année 2006/2007 IUT STID, 1 ère année Découverte de logiciels statistiques Prise en main du logiciel SPAD Ce document est tiré du site : http ://www.stat.ucl.ac.be/ispersonnel/lecoutre/stats/spad/

Plus en détail

I- Présentation générale II-Création d une base III-Remplir une table IV-Requêtes SQL SQLITEMAN KIT DE SURVIE

I- Présentation générale II-Création d une base III-Remplir une table IV-Requêtes SQL SQLITEMAN KIT DE SURVIE SQLITEMAN KIT DE SURVIE SQLITEMAN KIT DE SURVIE I-Présentation générale Fenêtre du «navigateur d objets», qui permet de visualiser ou modifier la structure de la base de données utilisées. Fenêtre de

Plus en détail

NIMBUS TRAINING. Mise en œuvre d une SGBD dans toutes les étapes du projet. Déscription. Objectifs. Publics. Durée. Pré-requis

NIMBUS TRAINING. Mise en œuvre d une SGBD dans toutes les étapes du projet. Déscription. Objectifs. Publics. Durée. Pré-requis Mise en œuvre d une SGBD dans toutes les étapes du projet. Déscription A partir des retours d expérience, et des préconisations des éditeurs, présenter les facteurs clés de succès et les bonnes pratiques

Plus en détail

Optimisation des bases de données

Optimisation des bases de données Optimisation des bases de données Mise en œuvre sous Oracle Laurent Navarro Avec la contribution technique d Emmanuel Lecoester Pearson Education France a apporté le plus grand soin à la réalisation de

Plus en détail

Documentation. HiPath 1100, HiPath 1200 Application Small Hotel Mode d emploi. Communication for the open minded

Documentation. HiPath 1100, HiPath 1200 Application Small Hotel Mode d emploi. Communication for the open minded Documentation HiPath 1100, HiPath 1200 Application Small Hotel Mode d emploi Communication for the open minded Siemens Enterprise Communications www.siemens.com/open CDRIVZ.fm Sommaire Sommaire 0 1 Généralités............................................................

Plus en détail

2.1/ Les privilèges sous oracle

2.1/ Les privilèges sous oracle LP Informatique(DA2I), UF7 : Administration Système, Réseaux et Base de données 13/12/2007, Enseignant : M. Nakechbnadi, mail : nakech@free.fr Première parie : Administration d une BD Chapitre 2 : Transaction,

Plus en détail

La Clé informatique. Formation Access XP Aide-mémoire

La Clé informatique. Formation Access XP Aide-mémoire La Clé informatique Formation Access XP Aide-mémoire Septembre 2003 Définitions de termes Base de données : Se compare à un énorme classeur ayant plusieurs tiroirs où chacun d eux contient des informations

Plus en détail

SUGARCRM MODULE RAPPORTS

SUGARCRM MODULE RAPPORTS SUGARCRM MODULE RAPPORTS Référence document : SYNOLIA_Support_SugarCRM_Module_Rapports_v1.0.docx Version document : 1.0 Date version : 2 octobre 2012 Etat du document : En cours de rédaction Emetteur/Rédacteur

Plus en détail

A propos de PC MACLAN pour Windows 95

A propos de PC MACLAN pour Windows 95 About PC MACLAN for Windows 95 A propos de PC MACLAN pour Windows 95 Ce chapitre explique ce qu est un réseau, les éléments qui le composent et les fonctions uniques de PC MACLAN for Windows 95. Les sujets

Plus en détail

SQL : création et mises-à-jour de schémas et de données

SQL : création et mises-à-jour de schémas et de données SQL : création et mises-à-jour de schémas et de données Commandes de définition de données (DDL) Commandes de mise-à-jour de données (DML) Vues SQL-MAJ, vues-1 / 33 Exemple Définition de la relation

Plus en détail

Publier des données sur le Web

Publier des données sur le Web Publier des données sur le Web Introduction Microsoft Excel fournit les outils dont vous avez besoin pour créer et enregistrer votre classeur sous forme d une page web et le publier sur le Web. La commande

Plus en détail

Oracle Database 11g : Les fondamentaux des langages SQL et PL/SQL

Oracle Database 11g : Les fondamentaux des langages SQL et PL/SQL Oracle University Appelez-nous: +33 (0) 1 57 60 20 81 Oracle Database 11g : Les fondamentaux des langages SQL et PL/SQL Durée: 5 Jours Description Ce cours vous permettra d acquérir les principes fondamentaux

Plus en détail

Création d'une nouvelle base de données

Création d'une nouvelle base de données 199 Chapitre 7 Création d'une nouvelle base de données 1. Vue d'ensemble Création d'une nouvelle base de données 1.1 Étapes de création d'une nouvelle base de données pour une application Le processus

Plus en détail

Module 2 Création d un formulaire simple

Module 2 Création d un formulaire simple Form Builder Développement d un formulaire Sauvegarde d un formulaire Établir une connexion avec le serveur Fenêtre de navigation Assistant de création de blocs (Data Block Wizard) Assistant de mise en

Plus en détail

1. Faire Démarrer, Paramètres, Panneau de configuration, Outils d administration, Gestion de l ordinateur.

1. Faire Démarrer, Paramètres, Panneau de configuration, Outils d administration, Gestion de l ordinateur. TP PERSONNALISER SON POSTE DE TRAVAIL LES COMPTES, LES GROUPES C'EST QUOI? Les comptes et les groupes permettent de gérer plus facilement l administration d une machine. Il semble assez logique que sur

Plus en détail

Découverte de l ordinateur. Explorer l ordinateur et gérer ses fichiers

Découverte de l ordinateur. Explorer l ordinateur et gérer ses fichiers Découverte de l ordinateur Explorer l ordinateur et gérer ses fichiers SOMMAIRE I L ORDINATEUR ET L EXPLORATEUR... 3 1.1 : PRESENTATION ET GENERALITES... 3 1.2 : CONNAÎTRE LES PROPRIETES D UN ELEMENT...

Plus en détail

Chap. III : Le système d exploitation

Chap. III : Le système d exploitation UMR 7030 - Université Paris 13 - Institut Galilée Cours Architecture et Système Le système d exploitation (ou O.S. de l anglais Operating System ) d un ordinateur est le programme qui permet d accéder

Plus en détail

Objectif. Participant. Prérequis. Pédagogie. Oracle Database 10g - Administration Workshop II. 5 Jours [35 Heures]

Objectif. Participant. Prérequis. Pédagogie. Oracle Database 10g - Administration Workshop II. 5 Jours [35 Heures] Plan de cours disponible à l adresse http://www.adhara.fr/.aspx Objectif Utiliser RMAN pour créer et gérer des jeux de sauvegarde et des copies d'image Récupérer la base de données jusqu'à un point dans

Plus en détail

Chapitre 1 Installer MySQL 5 21

Chapitre 1 Installer MySQL 5 21 Chapitre 1 Installer MySQL 5 21 1.1. Les outils nécessaires... 22 1.2. Télécharger et installer le serveur MySQL... 22 Télécharger la dernière version... 22 Lancer l installation sous Windows... 23 Lancer

Plus en détail

Introduction aux bases de données

Introduction aux bases de données 1/73 Introduction aux bases de données Formation continue Idir AIT SADOUNE idir.aitsadoune@supelec.fr École Supérieure d Électricité Département Informatique Gif sur Yvette 2012/2013 2/73 Plan 1 Introduction

Plus en détail

ORACLE SQL LDD. Langage de définition de données

ORACLE SQL LDD. Langage de définition de données ORACLE SQL LDD Langage de définition de données Le langage SQL (Structured Query Language) SQL a été normalisé par l ANSI puis par l ISO depuis 1986 sous ses différents aspects : LDD : définition des données

Plus en détail

Aide Webmail. L environnement de RoundCube est très intuitif et fonctionne comme la plupart des logiciels de messagerie traditionnels.

Aide Webmail. L environnement de RoundCube est très intuitif et fonctionne comme la plupart des logiciels de messagerie traditionnels. Aide Webmail 1. Découverte de l environnement : L environnement de RoundCube est très intuitif et fonctionne comme la plupart des logiciels de messagerie traditionnels. 1. La barre d application (1) Les

Plus en détail

Chapitre 7. Approfondir les connaissances

Chapitre 7. Approfondir les connaissances Chapitre 7 Approfondir les connaissances Déroulement du cours 1 : Le rôle du Designer d Univers 2 : Créer un Univers avec l Assistant 3 : Créer un Univers étape par étape 4 : Enrichir un Univers 5 : Création

Plus en détail

Réception et livraison de marchandise

Réception et livraison de marchandise Réception et livraison de marchandise SERVICE DES FINANCES Équipe de formation PeopleSoft version 8.9 Août 2014 TABLE DES MATIÈRES INTRODUCTION... 1 LES INTERVENANTS... 1 RÉCEPTION D UNE MARCHANDISE...

Plus en détail

Table des matières PREAMBULE...I 1 L OUTIL SQL*PLUS... 1-1 2 L INTERROGATION DES DONNEES... 2-1 3 LES OPERATEURS LOGIQUES... 3-1

Table des matières PREAMBULE...I 1 L OUTIL SQL*PLUS... 1-1 2 L INTERROGATION DES DONNEES... 2-1 3 LES OPERATEURS LOGIQUES... 3-1 Table des matières PREAMBULE...I 1 L OUTIL SQL*PLUS... 1-1 Le langage SQL... 1-2 Le langage PL/SQL... 1-4 Qu'est-ce que SQL*Plus?... 1-5 Commandes SQL*Plus... 1-7 Variables de substitution... 1-15 La commande

Plus en détail

7 VOS ADRESSES. Afin de faciliter la saisie des envois, ChronoShip OnLine vous permet de gérer votre carnet d adresses.

7 VOS ADRESSES. Afin de faciliter la saisie des envois, ChronoShip OnLine vous permet de gérer votre carnet d adresses. VOS ADRESSES 7 VOS ADRESSES Afin de faciliter la saisie des envois, ChronoShip OnLine vous permet de gérer votre carnet d adresses. Diverses options permettent d enrichir ce carnet d adresses : la saisie

Plus en détail

1. Introduction... 2. 2. Avantages, fonctionnalités, limitations et configuration requise... 2. Avantages... 2

1. Introduction... 2. 2. Avantages, fonctionnalités, limitations et configuration requise... 2. Avantages... 2 Guide de démarrage rapide : moteur Zip Sommaire 1. Introduction... 2 2. Avantages, fonctionnalités, limitations et configuration requise... 2 Avantages... 2 Fonctionnalités spécifiques au moteur Zip de

Plus en détail