Université de la Méditerranée Aix-Marseille II École Supérieure d Ingénieurs de Luminy Département informatique Luminy case 925 13288 Marseille cedex 09 IPPI Instruction des Prêts Personnels Immobiliers Nicolas Tassara Année 2007
Présentation de Projet IPPI Caractéristiques Architecture complète Application Travail réalisé - Planification - Optimisation de l application - Purge o Contexte o Problématique o Développement o Contexte o Problématique o Développement Bilan 2
Analyse de l existant Présentation de 3
Experian-Prologia Projet IPPI Créée en 1984, par un groupe de chercheurs Rachetée en juillet 2000 par Air Liquide Puis par Experian en octobre 2005 Domaine d expertise : Gestion des ressources humaines Bancaire Compétences techniques : Ingénieur, Master, Doctorant Certification ISO 9001 4
Projet IPPI Projet IPPI 5
Caractéristiques Projet IPPI - Caractéristiques - Architecture - Application Produit complet pour l instruction de crédit immobilier Projet spécifique pour un groupe bancaire Projet a débuté en 2002 et 1ère livraison en 2004 Environ 2000 agences munies de IPPI Equipe de dix personnes 6
Architecture Projet IPPI - Caractéristiques - Architecture - Application 7
Application Projet IPPI - Caractéristiques - Architecture - Application 8
Projet IPPI Travail réalisé 9
Planification 10
Optimisation de l application Projet IPPI - Optimisation - Purge Contexte et problématique Requête de la page d accueil Complexe et coûteuse Nombre de tables important dans la requête Accès complet sur de grosses tables Consommation excessive de CPU Table synthétisant les données nécessaires Mise à jour de cette table pendant l instruction Script permettant la gestion des stocks 11
Optimisation de l application (suite) Analyse de l existant - Optimisation - Purge Problèmes rencontrés : La solution optimise t-elle bien? Résultats identiques? Pas d image de la base de production Tests ne reflètent pas l utilisation réelle Résultats Explain plan moins volumineux Appel à moins de table (15 vs 4) Peu d accès complet à des tables Plus de calcul dans la requête Temps d exécution réduit par 13 Serveur Oracle moins saturée Performance améliorée en production 12
Mise en place d une purge Analyse de l existant - Optimisation - Purge Besoin et contexte Optimiser la BD en diminuant le nombre de dossiers Pas de suppression de dossier Respecter les pré-requis des DBAs du client Lancement 1 fois par mois 13
Mise en place d une purge (suite) Analyse de l existant - Optimisation - Purge Solution pour le MCD delete «manuel» (Inenvisageable) 140 tables dépendent de la table DOSSIER delete on cascade sur les FK Le SGBD gère la hiérarchie Solution pour la volumétrie Transaction moins important Suppression par bloc Rollback si erreur par bloc Solution pour les pièces jointes Sauvegarde du chemin Suppression des PJ si Commit effectué 14
Mise en place d une purge (suite) Analyse de l existant - Optimisation - Purge Algorithme du batch de purge Export full de la base (charge du client) Activer les delete on cascade Lancement du batch Générer les stats Désactiver les delete on cascade 15
Mise en place d une purge (suite) Analyse de l existant - Optimisation - Purge Algorithme du batch de purge Export full de la base (charge du client) Activer les delete on cascade Lancement du batch Générer les stats Désactiver les delete on cascade 16
Mise en place d une purge (suite) Analyse de l existant - Optimisation - Purge Problèmes rencontrés Tests exhaustifs Pas de suppression en trop Pas d enregistrements résiduels non supprimés Temps d exécution du batch Beaucoup de dossiers à supprimer Conséquence de la purge Tablespaces contigus Nécessité de réorganiser les tablespaces Purge optimisera-t-elle les performances? Base propre ¼ de la base supprimé 17
Analyse de l existant Bilan 18
Bilan Analyse de l existant Expérience professionnelle Implication forte dans Projet concret Responsabilités Planification et suivi de mon avancement Formation complète sur une architecture spécifique Formation au métier de la banque Formation initiale Opérationnel et efficace Abstraction suffisante face aux problèmes Bonnes bases en développement (SQL, Java ) 19
Université de la Méditerranée Aix-Marseille II École Supérieure d Ingénieurs de Luminy Département informatique Luminy case 925 13288 Marseille cedex 09 IPPI Instruction des Prêts Personnels Immobiliers Nicolas Tassara Année 2007