Cobol - PostgreSQL Sessions
Transcription
Cobol - PostgreSQL Sessions
Sessions-PG Le projet PostgreSQL de la CNAF Philippe BEAUDOIN, Chef de projet Le 3/02/2011 La CNAF - Caisse Nationale des Allocations Familiales - Plus de 60 ans d'existence - 123 CAF sur toute la France ... - Multiples prestations dont : - Allocations familiales et aide aux familles Aide au logement RMI, RSA,... - 30 millions de personnes couvertes et 11 millions - 2 d'allocataires 69 milliards d'euros de prestations versées ©Bull, 2010 Le projet PostgreSQL de la CNAF Le S.I. de la CNAF - Gestion du dossier allocataire sur des serveurs mainframe - 2 applications (Cristal et SDP) Cobol + SGBDR 8 versions applicatives / an - Centres de production (CERTI) - 5 Bull : Serveurs NovaScale 9000 sous GCOS 8 3 IBM : sous Z/OS - Et des serveurs d'applications J2EE sous AIX 3 ©Bull, 2010 Le projet PostgreSQL de la CNAF Le projet (en un clic !) GCOS 8 GCOS 8 CRISTAL (cobol) RFM-II CRISTAL (cobol) SDP (cobol) SDP (cobol) DBSP (infiniband) RHEL-LINUX PostgreSQL Serveurs Bull - NovaScale 9000 4 ©Bull, 2010 Le projet PostgreSQL de la CNAF DBSP GCOS 8 CRISTAL (Cobol) SDP (Cobol) Liaison InfiniBand LINUX S.C. S.C. (c+SQL) (c+SQL) PostgreSQL S.C. = Surrogate Client 5 ©Bull, 2010 Le projet PostgreSQL de la CNAF Etudes préalables - Etude préliminaire de faisabilité (2005) - Migration possible sans difficulté technique particulière Apport de fonctionnalités nouvelles (programmation, exploitation, continuité de service, administration, ...) - Prototype (2006) - Réalisation conjointe Bull et CNAF A validé les conclusions de l'étude préliminaire Bon niveau de performance Parallélisation possible des traitements - => Décision de migrer (2008) 6 ©Bull, 2010 Le projet PostgreSQL de la CNAF Le plan projet de la migration vers PostgreSQL - Des équipes sur toute la France (développeurs, - testeurs, exploitants,...) Découpage en 3 domaines : - Application CRISTAL, application SDP Infrastructure et production - Avec un pilotage national du projet CRISTAL Dévelopmt PRODUCTION Tests Préparation Dévelpmt Tests SDP 9/08 7 1 CAF C. Déploiement C. ©Bull, 2010 1/09 5/09 Le projet PostgreSQL de la CNAF 9/09 1 Dépl S 12/09 3/10 Avancement du déploiement Avancement du déploiement 100,00% 90,00% 80,00% 70,00% 60,00% 50,00% 40,00% 30,00% 20,00% 10,00% 0,00% 01/05/09 31/05/09 30/06/09 30/07/09 29/08/09 CRISTAL - % des caisses 8 ©Bull, 2010 28/09/09 28/10/09 CRISTAL - % des dossiers 27/11/09 27/12/09 SDP - % des caisses Le projet PostgreSQL de la CNAF 26/01/10 25/02/10 SDP - % des dossiers 27/03/10 Participation de BULL au projet - Assistance au pilotage du projet - Expertise technique (avec la participation de Dalibo) - La définition des architectures Le design et le paramétrage des bases et des clusters - Développement de l'outil de migration des données - Assistance aux adaptations des programmes et outils - Assistance aux tests - Formation - Support 9 ©Bull, 2010 Le projet PostgreSQL de la CNAF Zoom sur les chantiers « Développement » - Les structures de données - L'adaptation des programmes - Les tests - La migration des données 10 ©Bull, 2010 Le projet PostgreSQL de la CNAF Structure des données - Mêmes structures de tables et d'index - Types de colonnes identiques ou équivalents - Les 2 (petites) difficultés : - Le choix de l'encodage Des structures de données complexes Cobol stockées sous forme d'une colonne BYTEA à la place de VARCHAR • Une étude pour les identifier • 11 ©Bull, 2010 Le projet PostgreSQL de la CNAF Adaptation des programmes - 900 sources CRISTAL sur 5 versions - 250 sources SDP sur 1 version - Contexte favorable : - SQL concentré dans une couche d'accès aux données => code métier non touché Outil existant pour la double génération des programmes d'accès aux bases RFM et DB2 - Très peu de modifications dans le SQL et dans le - 12 Cobol Impact non négligeable sur les environnements et outils de développement et test ©Bull, 2010 Le projet PostgreSQL de la CNAF Tests - Tests unitaires par les équipes de - développement Tests d'intégration complémentaires en non régression Tests de validation/recette : - Production batch en double pendant 1 mois Enregistrement et re-jeu d'une journée d'activité TP Implication forte d'une CAF avec une recette formelle - Puis tests de non régression sur chaque version 13 ©Bull, 2010 Le projet PostgreSQL de la CNAF Migration des Données Cobol SELECT DBSP PostgreSQL INSERT PG RFM - Migration directe par programme - Insertions multi-lignes et exécution en parallèle - Réalisation d'un outil pour générer les 7000 14 programmes ! Comparaison après migration Migration complète des plus grosses bases en 24h ©Bull, 2010 Le projet PostgreSQL de la CNAF Zoom sur le chantier « Production » - Instances et bases PostgreSQL - Les chaînes batch - L'administration des bases - La Haute-Disponibilité - Les performances 15 ©Bull, 2010 Le projet PostgreSQL de la CNAF Instances et bases PostgreSQL - 2 instances (clusters) et 2 bases par CAF - => 168 bases et clusters Sur 10 partitions - Volumétrie : - Σ bases = 4 To 250 Go pour la plus grosse base - Paramétrage des clusters : une étude en amont pour - 16 fixer les bonnes valeurs des paramètres communs à toutes les instances bâtir un modèle d'utilisation de la mémoire en fonction des tailles relatives des CAF ©Bull, 2010 Le projet PostgreSQL de la CNAF Administration PostgreSQL - PgAdmin III pour les développeurs - PhpPgAdmin pour les testeurs et supports - applicatifs Tâches récurrentes d'administration totalement automatisées : - Sauvegardes (niveau fs, avec Legato-Networker) Réorganisations (CLUSTER) Scripts psql pour toutes les opérations touchant toutes les bases - Surveillance Nagios sur : - 17 Linux Liaison DBSP PostgreSQL avec check_postgres.pl ©Bull, 2010 Le projet PostgreSQL de la CNAF Chaines batch et JCL - Pas d'impact sur la structure des chaînes batch - Quelques adaptations mineures des JCL - Même ordonnanceur (ACE) pour piloter les quelques - 18 activités nouvelles Linux Même niveau d'automatisation qu'auparavant ©Bull, 2010 Le projet PostgreSQL de la CNAF Architecture Haute-Disponibilité pour 1 CAF : Centre de production GCOS 8 Clients J2EE Batch TP Autres clients PG Cristal PG SDP Clone-1 Cristal SDP Batch ©Bull, 2010 EMCSRDF Cristal STD SDP Sync.18h PG Cristal PG SDP Cristal SDP Sync.inter-batch DBSP TP 19 Linux Site de PRA Cristal SDP Clone-2 Le projet PostgreSQL de la CNAF Cristal SDP Performances - PostgreSQL beaucoup plus performant - Option SQL Cache développée pour ecpg (ecpg -r prepare) - Mais la liaison inter-partition ajoute un coût - Bilan net : - Temps de réponse TP moyen un peu meilleur Durée des batchs le plus souvent inférieure Quelques gros batchs plus longs … mais parallélisation de leur exécution - Requêtes SQL simples … - … mais nombreuses : 1 milliard de requêtes / jour !!! 20 ©Bull, 2010 Le projet PostgreSQL de la CNAF Perception générale du client - Tous les acteurs plébiscitent PostgreSQL - Le projet s'est terminé dans les temps - Les apports attendus sont bien là - Nombre de problèmes du moteur PostgreSQL = 0 - Quelques projets d'évolution - Amélioration de la Haute-Disponibilité Archivage des WAL • Utilisation de l'extension E-Maj pour supprimer un jeu de miroirs et regrouper des cluster ? • - PostgreSQL 9.0 - Chaque mois, PostgreSQL participe au versement de 3 Milliards € 21 ©Bull, 2010 Le projet PostgreSQL de la CNAF