Université De Boumerdes Université De Limoges Département de physique/Infotronique IT/M2 Systèmes d’information et bases de données Réalisé par : Mr RIAHLA Doctorant a l’université de limoge (France) 2009/2010 Université De Boumerdes Université De Limoges Systèmes d’information 2009/2010 Systèmes d’information Un système d'information (noté SI) représente l'ensemble des éléments participant à la gestion, au stockage, au traitement, au transport et à la diffusion de l'information au sein d'une organisation. Réalisé par : Mr RIAHLA 3 Rôle d’un systèmes d’information Collecter les informations Stocker les informations Traiter les informations Diffuser les informations Réalisé par : Mr RIAHLA 4 Systèmes d’information 5 Systèmes d’information – Besoin de plus en plus d'informations • Grande diversitée dans la nature des informations: – données financières – données techniques – données médicales –… • Ces données constituent les biens de l'entreprise et peuvent être très convoitées. Réalisé par : Mr RIAHLA 6 Systèmes Informatiques Un des moyens techniques pour faire fonctionner un système d’information est d’utiliser un système informatique (coeur). Les Systèmes informatiques sont devenus la cible de ceux qui convoitent l’information. Réalisé par : Mr RIAHLA 7 Définitions (mots clefs) Serveurs d'application Midleware N-tiers, 3-tiers, client-serveur Application web SOA Infrastructure physique Poste de travail Serveurs Imprimantes Périphériques particuliers (scanner...) Robot / serveur de sauvegardes Infrastructure physique Salle machine Arrivée électrique Climatisation Sécurité du bâtiment Sécurité incendie Localisation de l'infrastructure Infrastructure physique Câblage et infrastructure réseau câbles (RJ45 / fibre optique) armoire de brassage concentrateurs commutateurs routeurs wifi Réseau autonome (Autonomous System) Infrastructure physique LAN et WAN Liaisons multi-sites LS (Ligne Spécialisé) ligne DSL Laser Liaison internet FAI Infrastructure logique Sous réseaux Zone démilitarisée (ou DMZ) DNS Pare feu (Firewall) Serveur mandataire (Proxy) Définition du routage VPN (Réseau Privé Virtuel) Services d'infrastructure SNMP Service de supervision Serveur HTTP – reverse proxy Serveurs de mails Filtrage anti-spam Services d'infrastructure Serveurs LDAP – Active Directory SSO - Kerberos Serveur d'application Intergiciel (middleware) : serveur de transaction file d'attente de messages (Mom) ORB (Object Request Broker) Services d'infrastructure Serveur de temps (NTP) Monitoring Ordonanceur Gestion des licences Logiciels PGI progiciel intégré de gestion (ERP) CRM (gestion de la relation client) SCM (gestion de la chaîne logistique ) HRM (gestion des ressources humaines) Gestion de contenu (CMS) et GED Logiciels Logiciel de groupe de travail (Groupware) Informatique décisionnelle Systèmes spécifiques Stockage des données But du stockage conserver l'information (archivage des données) rendre l'information disponible (publication des données) réutiliser l'information (traitement des données) Stockage de données Disques SATA, SCSI, SSD RAID Médias amovibles CD, DVD disques usb, clés usb bandes Stockage des données NAS (Network attached storage) ftp NFS (Network File Système) smb et cifs webdav sshfs SAN (Storage Area Network) Stockage de données Bases de données (BDD) relationnelle (SQL) hiérarchique (LDAP) objet (Zope) XML Fichiers Mécanismes de réplication - rsync Archivage Sauvegardes des des des des serveurs postes bases de données services critiques Services de stockages externes / internes Multi-localisation des sauvegardes Sûreté Identification / authentification / habilitation SSO, Kerberos, certificats Gestion des intervenants Protection extérieur Protection intérieur Confidentialité des données personnelles, devoir de secret. Haute disponibilité Qualité de service suffisant Envisager tous les scénarios de défaillance Réaliser des scénarios de reprise Grappes Gestion des astreintes Équilibrage de charge Répartition de charge Virtualisation Grid computing Université De Boumerdes Bases de données 2009/2010 Université De Limoges Bases de données En informatique, une base de données est un lot d'informations stockées dans un dispositif informatique. Les bases de données sont généralement organisées et structurées de manière à pouvoir être facilement manipulées et stocker efficacement de très grandes quantités d'informations. L'organisation logique des données se fait selon un modèle de données. La structure physique des fichiers comporte des index destinés à accélérer les opérations de recherche et de tri. Bases de données La motivation fondamentale de l'organisation des données est de permettre d'effectuer des inférences (requêtes) sur celles-ci. Le modèle de données relationnel est aujourd'hui le plus utilisé parce qu'il est formellement démontré que ce type de représentation permet de résoudre toutes requêtes, contrairement aux modèles hiérarchique et réseau. Stocker avec moins de redondance possible. SGBD Le logiciel qui manipule les bases de données est appelé système de gestion de base de données (SGBD). Il permet d'organiser, de contrôler, de consulter et de modifier la base de données. Les opérations sont parfois formulées dans un langage de requête tel que SQL – le plus connu et employé pour les modèles relationnels. IBM DB2, Oracle Database, MySQL, Postgresql et Microsoft SQL Server sont les principaux systèmes de gestion de base de données sur le marché. SGBD Université De Boumerdes Language SQL 2009/2010 Université De Limoges SQL Structured query language (SQL), ou langage structuré de requêtes, est un pseudo-langage informatique (de type requête) standard et normalisé, destiné à interroger ou à manipuler une base de données relationnelle avec : Un langage de définition de données (LDD) permet de modifier la structure de la base de données. Un langage de manipulation de données (LMD) permet de consulter / modifier le contenu de la base de données Réalisé par : Mr RIAHLA 33 SQL Un langage de contrôle de données (LCD) permet de gérer les privilèges, càd les utilisateurs et les actions qu'ils peuvent entreprendre Un langage de contrôle des transactions (LCT) permet de gérer les transactions, c'est-à-dire rendre atomique divers ordres enchaînés en séquence et d'autres modules destinés notamment à écrire des routines (procédures, fonctions ou déclencheurs) et interagir avec des langages externes. Réalisé par : Mr RIAHLA 34 SQL: Langage de définition de données Création d'une table : CREATE TABLE Etudiant (nom varchar(250), prenom varchar(250), naissance DATE, inscription DATE); Modification de la structure d'une table : ALTER TABLE table1 ADD COLUMN adresse longtext NULL; ALTER TABLE table1 DROP COLUMN inscription ; Suppression d'une table : DROP TABLE Etudiant ; Réalisé par : Mr RIAHLA 35 SQL: Langage de définition de données Ajout d'une contrainte sur une table : ALTER TABLE Etudiant ADD CONSTRAINT ck_jour CHECK (Journaissance IN ('Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi', 'Dimanche')); Réalisé par : Mr RIAHLA 36 SQL: Langage de manipulation de données Requête de base :SELECT {liste_colonnes} FROM {TABLES} WHERE {conditions}; SELECT nom FROM employes WHERE salaire > 1500 ORDER BY salaire; SELECT * FROM TABLE1 WHERE TABLE1.colonne1 NOT IN (SELECT colonne2 FROM TABLE2) SELECT * FROM TABLE1 LEFT OUTER JOIN TABLE2 ON TABLE1.colonne1 = TABLE2.colonne2 WHERE TABLE2.colonne2 IS NULL Réalisé par : Mr RIAHLA 37 SQL: Langage de manipulation de données Ajout d'une ligne : INSERT INTO employees (name, service) VALUES ('Martin', 'comptabilité'); Modification de lignes : UPDATE employees SET service='accueil' WHERE name = 'Martin'; Suppression d'une ligne : DELETE FROM employees WHERE name = 'Alpha'; A voir LCD LCT SQL procedurale Merci Réalisé par : Mr RIAHLA 40