Architecture d'une base de données PDF

Summary

Ce document présente les fondamentaux de l'architecture d'une base de données, couvrant les concepts essentiels et les structures de mémoire. Il aborde aussi les connexions et les types d'instances de bases de données.

Full Transcript

2 Architecture d’une base de données C’est quoi une base de données? Une base de données est un ensemble structuré d’éléments d’information agencés sous forme de table, dans lesquels les données sont organisées selon certains critères en vue de permettre leur exploitation. Ces d...

2 Architecture d’une base de données C’est quoi une base de données? Une base de données est un ensemble structuré d’éléments d’information agencés sous forme de table, dans lesquels les données sont organisées selon certains critères en vue de permettre leur exploitation. Ces données sont utilisées par des programmes et par des utilisateurs différents. Elle permet de mettre les données à disposition des clients (Utilisateurs ou programmes) pour une consultation, une saisie ou bien une mise à jour tout en s’assurant des droits d’accès à ces derniers. Une base de données peut être locale c’est-à-dire utilisable sur une machine par un utilisateur ou bien répartie, c’est-à-dire stocké sur des machines distantes et accessible via un réseau. Se connecter à un serveur Oracle Un utilisateur de base de données peut se connecter à un serveur Oracle de trois manières: 1. Locale : L'utilisateur se connecte au système d'exploitation qui exécute l'instance Oracle et démarre une application ou un outil qui accède à la base de données stockée sur ce système. 2. Client/serveur: L'utilisateur démarre l'application ou l'outil sur un ordinateur local, et il se connecte via un réseau à l'ordinateur qui exécute la base Oracle. 3. Multi-tiers: L'utilisateur accède à un serveur d'applications à l'aide d'un outil (navigateur Web, par exemple) exécuté sur l'ordinateur local (client). Le serveur d'applications interagit alors avec un serveur de base de données back-end pour le compte du client Architecture d’un serveur de base de données Oracle Serveur de base de données Oracle Types d’ Instance d’une base de données Connexion à une instance de base de données Lorsqu’un utilisateur est connecté à une machine sur laquelle réside un Serveur Oracle, deux processus supplémentaire sont invoqués : Le processus utilisateur (client): est créé pour chaque programme exécuté par un utilisateur Le processus serveur: est chargé de la communication entre la SGA et le processus utilisateur. Une connexion est une voie de communication entre un processus utilisateur et une instance Oracle Database. Elle est établie à l'aide des mécanismes de communication interprocessus disponible ( locale et via le réseau) Une connexion spécifique entre un utilisateur et un serveur Oracle est appelé une Session. La session démarre lorsque la connexion de l'utilisateur est validée par le serveur Oracle et se termine lorsqu'il se déconnecte ou lorsqu'une fin de connexion prématurée se produit. Structures mémoires d’une base de données Zone de mémoire partagée La zone de mémoire partagée (Shared Pool) est une portion de la mémoire SGA qui contient: le cache library le cache du dictionnaire de données le cache des résultats d'interrogations SQL le cache des résultats de fonctions PL/SQL Des mémoires tampons pour les messages d'exécution en parallèle Des structures de contrôle. Cache Tampon de base de données Le cache de tampons (buffer cache) de la base de données est la partie de la mémoire SGA qui contient les images de blocs lues à partir des fichiers de données ou construites dynamiquement pour satisfaire au modèle de cohérence en lecture. Son accès est partagé par tous les utilisateurs connectés simultanément à l'instance. Tampon de journalisation Le tampon de journalisation (redo log buffer) est une mémoire tampon réutilisable située dans la mémoire SGA qui contient des informations sur les modifications effectuées dans la base. Ces informations sont stockées sous la forme d'entrées de journalisation. Celles-ci contiennent les informations nécessaires à l'annulation (redo) des modifications apportées à la base par des opérations LMD (langage de manipulation de données), LDD (langage de définition de données). Elles sont utilisées pour la récupération de la base. Large Pool L'administrateur de base de données peut configurer une zone de mémoire facultative appelée LARGE POOL pour allouer des zones de mémoire de grande taille aux éléments suivants : Mémoire de session pour le serveur partagé et l'interface Oracle XA (lorsque les transactions interagissent avec plusieurs bases de données) Processus serveur d'E/S Opérations de sauvegarde et de restauration d'Oracle Database Opérations Parallel Query Zone mémoire Java et Streams La zone de mémoire Java est utilisée pour l'ensemble du code Java et des données propres à la session dans la JVM (Java Virtual Machine). Elle est utilisée de différentes manières, en fonction du mode d'exécution d'Oracle Database. La zone de mémoire Streams est utilisée par Oracle Streams exclusivement. Elle contient les messages en file d'attente tampon et fournit la mémoire nécessaire aux processus Oracle Streams de capture et d'application des modifications. La mémoire PGA La mémoire PGA (Program Global Area) est une zone de mémoire contenant des données et des informations de contrôle pour un processus serveur. Chaque PGA contient un espace de pile. Dans un environnement avec serveur dédié, chaque utilisateur qui se connecte à l'instance de base de données comporte un processus serveur distinct. Pour ce type de connexion, la mémoire PGA contient une subdivision de mémoire connue sous le nom de zone UGA (User Global Area). La mémoire UGA comprend les éléments suivants : Une zone de curseurs pour stocker les informations d'exécution sur les curseurs. Une zone de mémoire de session utilisateur pour des informations concernant une session. Des zones de travail SQL pour le traitement des instructions SQL : Une zone de tri pour les fonctions qui classent les données telles que ORDER BY et GROUP BY. Une zone de hachage pour exécuter les jointures de hachage entre les tables. Une zone avec Dans un environnement de création d'index plusieurs serveur partagé, bitmap commune aux data clients partagent warehouses un même utilisée processus pour la serveur. création Dans ce modèle, d'indexUGA la mémoire bitmap. est transférée dans la mémoire SGA (dans la zone de mémoire partagée Une ou dans la zone dezone de fusion mémoire LARGEd'index POOL sibitmap elle estutilisée pour définir configurée), de sortelesque plans d'exécution la mémoire PGAbasés sur un contient index bitmap. uniquement l'espace de pile.

Use Quizgecko on...
Browser
Browser