Pratique d un SGBD relationnel

Documents pareils
INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Information utiles. webpage : Google+ : digiusto/

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

PostgreSQL. Formations. Calendrier... 14

Module BD et sites WEB

Une famille d'applications permettant à toute organisation d'optimiser le suivi et la gestion de ses ressources internes vous présente

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

PostgreSQL. Formations. Catalogue Calendrier... 8

PostgreSQL. Formations. SQL avancé Calendrier... 18

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

En date du 11 décembre 2008

D'UN SITE INTERNET LES S D'UN SITE INTERNET PRATIQUE ET PERFORMANT PRATIQUE ET PERFORMANT

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

IFT3030 Base de données. Chapitre 2 Architecture d une base de données

Mercredi 15 Janvier 2014

Programmation Web. Introduction

Architectures web/bases de données

Devenez un véritable développeur web en 3 mois!

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

Programmation Web. Madalina Croitoru IUT Montpellier

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Visual Paradigm Contraintes inter-associations

FileMaker Server 12. publication Web personnalisée avec XML

Mise en œuvre des serveurs d application

CONNEXION. Une interface de connexion sécurisée, simple et accessible même depuis un appareil mobile. CONNEXION /

1.2 Genèse. 1.3 Version de Designer utilisée

Présentation du module Base de données spatio-temporelles

PostgreSQL, le cœur d un système critique

Formation en Logiciels Libres. Fiche d inscription

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

CESI Bases de données

SQL Server 2012 et SQL Server 2014

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

CAHIER DES CHARGES DE REALISATION DE SITE INTERNET

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1

Communiqué de lancement. Sage 100 Entreprise Edition Etendue Module CRM inclus

Introduction aux Bases de Données

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

Java DataBaseConnectivity

Bases de données cours 1

Hébergement MMI SEMESTRE 4

Installation et Mise en œuvre de MySQL

<Insert Picture Here>ApExposé. Cédric MYLLE 05 Février Exposé Système et Réseaux : ApEx, Application Express d Oracle

Gestion d identités PSL Exploitation IdP Authentic

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

PHP. Performances. Audit et optimisation LAMP. Julien Pauli. Cyril Pierre de Geyer. Guillaume Plessis. Préface d Armel Fauveau

UE 8 Systèmes d information de gestion Le programme

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

PROSOP : un système de gestion de bases de données prosopographiques

CAHIER DES CHARGES D IMPLANTATION

Implémentation des SGBD

Configuration de plusieurs serveurs en Load Balancing

PloneLabs un gestionnaire de contenu pour les laboratoires

les techniques d'extraction, les formulaires et intégration dans un site WEB

Introduction aux concepts d ez Publish

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

Documentation Liste des changements apportés

Unix/Linux I. 1 ere année DUT. Université marne la vallée

Dossier I Découverte de Base d Open Office

Formation : WEbMaster

I. Descriptif de l offre. L offre Sage 100 Entreprise Edition Entreprise

Cours Bases de données

Refonte front-office / back-office - Architecture & Conception -

26 Centre de Sécurité et de

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Echosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

CHAPITRE 1 ARCHITECTURE

Easy to. report. Connexion. Transformation. Stockage. Construction. Exploitation. Diffusion

Hébergement de sites Web

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

OpenText Content Server v10 Cours (ex 101) L essentiel de la gestion des connaissances

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

et Groupe Eyrolles, 2006, ISBN :

Quel ENT pour Paris 5?

Fournir un accès rapide à nos données : agréger au préalable nos données permet de faire nos requêtes beaucoup plus rapidement

Programme détaillé. Administrateur de Base de Données Oracle - SQLServer - MySQL. Objectifs de la formation. Les métiers

Architectures en couches pour applications web Rappel : Architecture en couches

La Geo-Business Intelligence selon GALIGEO avec 26/10/2005 1

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

Atelier 1. Portails documentaires : BioLib et Cemadoc

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

ENSIAS Rapport De Stage BPCS. Rapport de stage. Encadré par : MAREQUAZ Saâd. Réalisé par : Pratic Abdellah

Datawarehouse: Cubes OLAP. Marlyse Dieungang Khaoula Ghilani

Présentation Alfresco

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Introduction à MySQL (ou MySQL en 3 heures montre en main)

Bases de Données. Plan

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Introduction aux bases de données

Serveurs de noms Protocoles HTTP et FTP

i-depots i-gedexpert i-compta i-bureau

Pratique et administration des systèmes

SQL MAP. Etude d un logiciel SQL Injection

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

Transcription:

Pratique d un SGBD relationnel

1. Introduction aux différentes architectures des SI Trois tâches importantes le stockage des données, la logique applicative, la présentation. Parties indépendantes les unes des autres. Toutefois, une couche est utilisée dans celle d audessus : la conception de la logique applicative se base sur le modèle de données et la conception de la présentation dépend de la logique applicative. N. Chaignaud GM4 - Base de données 2

Stockage et accès aux données Il a pour but de conserver les données de façon structurée en permettant le partage des données via un réseau. La méthode d accès à ces données dépend du type d organisation de ces données. Dans le cas d une base de données relationnelle, l accès peut se faire par des API qui dépendent du langage et de l environnement. Quelle que soit l API, le langage SQL est utilisé. N. Chaignaud GM4 - Base de données 3

Logique applicative Traitements nécessaires sur les données afin de les rendre exploitables par chaque utilisateur (besoins variés et évolutifs). Nécessité de permettre l évolution du système sans pour autant devoir tout reconstruire. Utilise les données pour les présenter de façon exploitable par l utilisateur. Bien identifier les besoins des utilisateurs afin de réaliser une logique applicative utile tout en structurant les données utilisées. N. Chaignaud GM4 - Base de données 4

Présentation Partie visible pour l utilisateur. L ergonomie d un site Intranet HTML n est pas toujours idéale pour tous les types d applications. Il peut être intéressant de proposer plusieurs types d interface pour une seule logique applicative (par ex: client en html, admin en applet, ). N. Chaignaud GM4 - Base de données 5

Architecture client-serveur Constitué de 2 parties : un client gèrant la présentation et la logique applicative, un serveur stockant les données et gèrant une partie de la logique applicative. Dans cette architecture à 2 niveaux (architecture 2-tier), le client demande une ressource et le serveur la lui fournit sans faire appel à une autre application. L interface entre ces 2 parties est le langage SQL. Indépendance du client par rapport au serveur : la programmation du client effectue sans se préoccuper de la base de données (taille des disques, répartition des données, optimisation des accès, sauvegarde, etc.). N. Chaignaud GM4 - Base de données 6

Architecure c-s : avantages Qualité basée sur 2 technologies éprouvées : BDR et SQL. SGBD relationnels interfacés par un langage unique : SQL. SQL permet la gestion de transactions. 4 propriétés garantissent l intégrité des données dans un environnement multi-utilisateurs (ACID) : Atomicité : comportement indivisible ; soit toutes les modifications sur les données d une transaction sont effectives, soit aucune. Garantit un état cohérent de la base. Cohérence des données de la base. Isolation : les modifications effectuées au cours d une transaction visibles que par l utilisateur qui effectue cette transaction. Ces modifications seront visibles par tous si la transaction est correcte. Durabilité : stabilité de l effet d une transaction dans le temps (même en cas de perte d un disque). N. Chaignaud GM4 - Base de données 7

Architecure c-s : inconvénients 2 inconvénients principaux : difficulté à bien gérer les questions de sécurité : sécurité gérée au niveau du SGBDR contrôlant l accès aux données par des autorisations aux utilisateurs. Il faut accorder à chaque utilisateur des droits sur un grand nombre de tables laborieux. Ne créer qu un utilisateur avec lequel tous les utilisateurs se connectent aucune gestion de la sécurité (login + mot de passe pour accéder aux données sans restriction) durées et coûts de déploiement : installation et configuration sur chaque poste utilisateur. Mise à jour nécessite un nouveau déploiement. N. Chaignaud GM4 - Base de données 8

Architecture 3-tiers Séparer la réalisation des trois parties : un SGBDR pour le stockage des données, un serveur applicatif pour la logique applicative, un navigateur web pour la présentation. Architecture partagée entre : le client qui est le demandeur de ressources, le serveur d'application (middleware) chargé de fournir la ressource en faisant appel à un autre serveur, le serveur secondaire (serveur de base de données), fournissant un service au premier serveur. N. Chaignaud GM4 - Base de données 9

Architecture 3-tiers (suite) Essentiel du développement implanté au niveau du serveur applicatif. SGBDR nécessite un travail d administration car quantité de données importante. Conception de la base de données est la pierre angulaire du système. Navigateur web nécessite un code spécifique permettant de gérer l affichage. Code placé sur le serveur applicatif pour permettre une mise à jour sans nouveaux déploiements. N. Chaignaud GM4 - Base de données 10

Architecture 3-tiers : avantages Architecture développée au sein des entreprises. Système basé sur des technologies éprouvées : aspect relationnel et transaction. Logique applicative déplacée au niveau du serveur d application (maintien du SQL). Deux facteurs de qualité : choix du SGBDR et des programmes de conception et de gestion de la base. N. Chaignaud GM4 - Base de données 11

Architecture 3-tiers : avantages Facilité de déploiement application déployée que sur la partie serveur (serveur applicatif et serveur de base de données). installation et configuration minimes pour le client. Navigateur web compatible avec l application. Evolution régulière du système. Amélioration de la sécurité dans un système client-serveur tous les clients accédent à la base de données vulnérable. avec une architecture multi-tiers l accès à la base n est effectué que par le serveur applicatif. gérer la sécurité au niveau de ce serveur applicatif : liste des utilisateurs avec leurs mots de passe et leurs droits d accès. N. Chaignaud GM4 - Base de données 12

Architecture n-tiers Architecture distribuée découpe l application sur différents serveurs : la gestion des données, la gestion de la logique applicative et le client pour la présentation. Permettre l évolutivité du système : quantité de données stockée, disponibilité du serveur, nombre d utilisateurs, etc. Système indépendant du serveur sur lequel il s exécute. 2 types de répartition dans une architecture distribuée : répartir les données et répartir la logique applicative. N. Chaignaud GM4 - Base de données 13

Architecture n-tiers : répartir les données Plusieurs sources de données dans une même application avec différentes structures et gestions. Interface de programmation commune aux sources. Si relations entre les données des différents serveurs, alors nécessité de gérer des transactions distribuées. Base de données distribuées performance du système : augmenter la disponibilité des données. Eviter de démultiplier les transactions distribuées. réutilisation des systèmes existants dans une même application afin de restructurer le SI sans repartir de zéro mais nécessitant diverses technologies. N. Chaignaud GM4 - Base de données 14

Architecture n-tiers : répartir la logique applicative Distribuer les traitements sur différentes machines. Programmation orientée objets : composants instanciés puis utilisés à travers le réseau. Communication entre les différents éléments de l application (RMI). Déploiement et évolution du système : système distribué (EJB). Les buts recherchés : la performance, l évolutivité et la maintenabilité. N. Chaignaud GM4 - Base de données 15

2. Architecture MySQL N. Chaignaud GM4 - Base de données 16

N. Chaignaud GM4 - Base de données 17

Architecture MySQL Couche applicative Echanges avec le client 3 utilisateurs possibles : les administrateurs utilisant les utilitaires administratifs mysqladmin (fermer un serveur, créer ou détruire des bases) isamchk et myisamchk (réparations de tables) et mysqldump (sauvegarder des bases ou en copier à partir d autres serveurs) les clients communiquant avec le SGBDR par des APIs (C, Perl, PHP, Java, Python, C++) ; et les utilisateurs SQL interagissant avec le SGBDR grâce à mysql (requêtes SQL et visualiser les résultats) N. Chaignaud GM4 - Base de données 18

Couche logique Le processeur de requêtes (effectue et optimise les requêtes) le pré-compilateur DML (Data Manipulation Language) qui extrait la requête d une commande de l API le compilateur DDL (Data Definition Language) qui compile les commandes des administrateurs écrites en SQL le parseur qui transforme la requête en plan d exécution le pré-processeur qui effectue une analyse syntaxique et sémantique du plan (arbre) le gestionnaire de sécurité qui contrôle les droits d accès du client à la bas l optimisateur de requêtes qui tente d optimiser la requête le moteur d exécution réalise la requête en accédant à la couche physique. N. Chaignaud GM4 - Base de données 19

Couche logique La gestion de transactions le gestionnaire de transactions (unité élémentaire de travail comportant une ou plusieurs commandes) gère la continuité du traitement et fait les réparations nécessaires en revenant au dernier état stable de la base (commandes COMMIT et ROLLBACK). le gestionnaire de concurrence contrôle l indépendance des transactions. Il utilise des serrures sur les tables en cours de modification pendant une transaction. N. Chaignaud GM4 - Base de données 20

Couche logique La gestion des récupérations le gestionnaire de logs enregistre toutes les opérations effectuées sur la base. Si le système plante, on peut réeffectuer l ensemble des commandes sur la dernière version stable. le gestionnaire de récupération a pour but de remettre la base dans sa dernière version stable en utilisant le log. N. Chaignaud GM4 - Base de données 21

Couche logique La gestion du stockage (grâce aux buffers) Le gestionnaire de stockage est au plus bas niveau. Il véhicule la requête du gestionnaire du buffer vers la mémoire secondaire. Le gestionnaire de buffer alloue la mémoire pour l utilisation et la visualisation des données : taille allouée par buffer et combien de buffers par requêtes. Le gestionnaire de ressources accepte les requêtes du moteur et les envoie au gestionnaire de buffer. Il reçoit les références à des données en mémoire et retourne ces données au niveau supérieur. N. Chaignaud GM4 - Base de données 22