Eranea : solution transparente de migration de bases de données

4
Solution de transformation / migration de bases de données 1. Introduction Les bases de données constituent la mémoire de l'entreprise à long terme. Leur contenu doit donc survivre aux évolutions technologiques et commerciales du marché informatique qui bouillonne actuellement de nouvelles solutions (NoSql, Hadoop, bases clefs-valeurs, bases de données en mémoire, cloud computing, etc.) après une période de relative stabilité autour du modèle relationnel cristallisé autour de standards comme IBM Db2, Oracle Database, Microsoft Sql Server. Le DSI doit donc « transporter cette mémoire » de l'entreprise d'une génération technologique à l'autre en maximisant la fluidité et l'invisibilité du transfert des données critiques vers une nouvelle plate-forme d'hébergement des données. La suppression des risques associés est clef pour le maintien de la qualité de service aux applications critiques de l'entreprise. Cette tâche est rendue plus complexe par le fait que chaque constructeur ne respecte qu'en partie les standards d'accès (Sql) et par le fait que ces standards sont incomplets sur certains pans de leurs spécifications En réponse à ce besoin, Eranea propose une solution : Holistique : elle couvre à la fois la transformation des structures (tables, indexes) et la transformation en temps réel des requêtes d'accès. Incrémentale : la migration des données peut le plus souvent s'effectuer par fragments de la base de données : des mécanismes d'intégrité transactionnelle comme le protocole X/Open XA permettent de garantir la cohérence des données même réparties entre l'ancienne et la nouvelle base de données durant la transformation. Transparente : l'adaptation des requêtes d'accès pour le respect de la syntaxe du nouveau gestionnaire de données est initialement transparente au code applicatif. Une moteur d'interception / transformation en temps réel des requêtes et des réponses permet une bascule initiale sans aucun modification du code applicatif. Efficace : c'est dans le moteur de transformation temps réel que sont réalisées toutes les adaptations de requêtes vers la nouvelle base. Il n'y a donc initialement aucun impact sur les développeurs qui peuvent rester focalisés sur leurs travaux habituels d'amélioration fonctionnelle Sans risque : la transparence de la bascule vers la nouvelle base de données et la progressivité de cette bascule permettent d'éliminer tous les risques de projet. 2. Objectifs Le DSI poursuit différents objectifs quand il décide de migrer ses bases de données : Optimisation (financière) : les bases de www.eranea.com © Eranea 2015 Page 1 de 4

Transcript of Eranea : solution transparente de migration de bases de données

Page 1: Eranea : solution transparente de migration de bases de données

Solution de

transformation / migration de bases dedonnées

1. IntroductionLes bases de données constituent la mémoire del'entreprise à long terme. Leur contenu doit doncsurvivre aux évolutions technologiques etcommerciales du marché informatique quibouillonne actuellement de nouvelles solutions(NoSql, Hadoop, bases clefs-valeurs, bases dedonnées en mémoire, cloud computing, etc.) aprèsune période de relative stabilité autour du modèlerelationnel cristallisé autour de standards commeIBM Db2, Oracle Database, Microsoft Sql Server.

Le DSI doit donc « transporter cette mémoire » del'entreprise d'une génération technologique àl'autre en maximisant la fluidité et l'invisibilité dutransfert des données critiques vers une nouvelleplate-forme d'hébergement des données. Lasuppression des risques associés est clef pour lemaintien de la qualité de service aux applicationscritiques de l'entreprise.

Cette tâche est rendue plus complexe par le faitque chaque constructeur ne respecte qu'en partieles standards d'accès (Sql) et par le fait que cesstandards sont incomplets sur certains pans deleurs spécifications

En réponse à ce besoin, Eranea propose une

solution :

• Holistique : elle couvre à la fois latransformation des structures (tables,indexes) et la transformation en temps réeldes requêtes d'accès.

• Incrémentale : la migration des donnéespeut le plus souvent s'effectuer parfragments de la base de données : desmécanismes d'intégrité transactionnellecomme le protocole X/Open XApermettent de garantir la cohérence desdonnées même réparties entre l'ancienne etla nouvelle base de données durant latransformation.

• Transparente : l'adaptation des requêtesd'accès pour le respect de la syntaxe dunouveau gestionnaire de données estinitialement transparente au codeapplicatif. Une moteur d'interception /transformation en temps réel des requêteset des réponses permet une bascule initialesans aucun modification du codeapplicatif.

• Efficace : c'est dans le moteur detransformation temps réel que sontréalisées toutes les adaptations de requêtesvers la nouvelle base. Il n'y a doncinitialement aucun impact sur lesdéveloppeurs qui peuvent rester focaliséssur leurs travaux habituels d'améliorationfonctionnelle

• Sans risque : la transparence de la basculevers la nouvelle base de données et laprogressivité de cette bascule permettentd'éliminer tous les risques de projet.

2. ObjectifsLe DSI poursuit différents objectifs quand ildécide de migrer ses bases de données :

• Optimisation (financière) : les bases de

www.eranea.com © Eranea 2015 Page 1 de 4

Page 2: Eranea : solution transparente de migration de bases de données

données Open Source de type PostgreSQLont largement progressé au fil desdernières années. Le dernier « quadrantmagique » du Gartner Group les place àégalité fonctionnelle avec les produitscommerciaux. Leur avantage au niveaudes coûts de licence est ensuite indéniable.

source : Gartner Group 2015

• Rationalisation : au fil des nouvellesapplications, la diversité, voirel'incohérence, des technologies de basesde données a émergé dans l'entreprise. LeDSI doit nécessairement rassembler toutesles données sur une plate-forme unifiéeafin d'en garder le contrôle et d'enmaîtriser les coûts dans une période oùleur volume explose.

• Flexibilité / Agilité : l'évolutiontechnologique des bases de données estactuellement en ébullition. La gestion etl'utilisation optimale des donnéesd'entreprise à travers les nouvellestechnologies (Big Data, etc.) estessentielle pour en extraire la quintessencecompétitive. Leur transformation doitdonc être menée par des moyens simpleset efficaces.

3. RéférencesLa technologie Eranea a déjà permis la réalisationde multiples migrations de bases de données, enparticulier au travers des projets de transformation

d'applications métier critiques vers Java/web, sonmétier de base.

Pour citer les plus récents :

• Transformation de DB2 vers PostgreSQLde la base de données du système de corebanking d'une grande banque privéeinternationale : 14'000 tables relationnelleset 5 téraoctets de données

• Transformation de DB2 vers Sql Serverd'une compagnie d'assurance : 1'500 tablesrelationnelles et 500 gigaoctets dedonnées.

La technologie Eranea est donc solidementéprouvée et vous permettra de transporter vosdonnées d'entreprise vers une nouvelle plate-forme dans le cadre d'un projet efficace et sansrisque.

4. MéthodologieEranea applique à la transformation de donnéesles mêmes pratiques qu'elle utilise dans latransformation globale de grands systèmes vers lecloud computing :

• automatisation : les différentes étapes detransformation d'une bases de donnéessont par essence répétées à plusieursreprises au cours de le vie du projet.Eranea dispose donc d'outils entièrementautomatiques d'analyse et transformationdu ddl (création des structures), dedéchargement, rechargement des donnéeset du dml (accès aux données). Ces étapespeuvent ainsi être répétées autant quenécessaire sans explosion des coûtshumains durant la vie du projet alors quela base de données continue à évoluerdans son contenu et ses structures pendantque le projet de transformation sepoursuit.

• Incrémentalité :

www.eranea.com © Eranea 2015 Page 2 de 4

Page 3: Eranea : solution transparente de migration de bases de données

◦ les techniques mises en œuvre par latechnologie Eranea permettent unebascule de la base de données vers lanouvelle cible « par morceaux » endivisant les données en sous-ensembles indépendant migrés demanière indépendante.

◦ la bascule vers la nouvelle cible esttransparente pour l'application jusqu'àla fin du projet : le moteur detransformation intercepte les requêtesenvoyées vers la base de données entemps réel, les analyse et les modifiepour les rendre compatibles avec lenouveau moteur mais en préservantleur iso-fonctionnalité par rapport àl'ancien moteur. Ainsi les développeursne subissent aucun impact durant lamigration. C'est seulement quand labascule est terminée que latransformation des requêtes d'accèspeut être mise en place dans le codesource de référence de l'application.

• Productivité : l'intégralité de latransformation se produit de manièretransparente et sans gel de maintenancepour les utilisateurs finaux et lesdéveloppeurs informatiques. Laproductivité de chacun est donc conservée.

• Sécurité : l'incrémentalité et latransparence de la méthode, couplée à unemécanique de tests objectifs et quantifiéspermet d'assurer une migration dénuée detout risque.

• Transparence : de multiples rapports issusdes outils d'analyse et de transformationpermettent au client de mesurer très tôtl'ampleur des modifications apportées parla technologie Eranea sur ses données etsur les méthodes d'accès applicative.

5. TechnologieLa solution Eranea se compose principalementdes outils suivants :

• Un outil d'analyse et de transformationdes contenants (tables, indexes, intégritéréférentielle, triggers, autorisations, etc.) :il assure que ces contenants sont redéfinisde manière compatible avec la plate-forme cible avec une structure la plusproche possible de l'origine.

• Un outil de déchargement / rechargementdes données : totalement parallèle (multi-threads), il permet de traiter de trèsgrands volumes de données avec desperformances de très haut niveau. Lors durechargement, il adapte les donnéesdéchargées de la source à un formatcompatible avec la cible (encodage,structure, etc.)

• Un moteur de transformation desrequêtes : basé sur différentes techniquesd'interception selon le contexte, il capturele texte de la requête qu'il analyse à lamanière d'un compilateur sql pour ensuiteregénérer une nouvelle requêtecompatible avec le nouvelle cibles. Auretour des données, il en adapte lesformats si nécessaire pour préserver latransparence applicative. Ce moteur peutfonctionner en mode passif où il ne faitque capturer les requêtes et donnéesretournées qui le traversent afin de lesanalyser ainsi que de capturer diversparamètres de performances (débit, tempsde réponse, etc.)

Ces pierres angulaires de la solution sont, de plus,dotées de fonctions de reporting très détaillées quiapportent toute la transparence nécessaire sur lestransformations réalisées à tous les niveaux pourassurer la migration vers la nouvelle cible.

Enfin, l'ensemble des travaux réalisés par ces

www.eranea.com © Eranea 2015 Page 3 de 4

Page 4: Eranea : solution transparente de migration de bases de données

divers composants est fait en mode totalementautomatique pour en assurer la répétabilitéefficace.

6. Organisation du projetUn projet se décompose en standard ainsi :

1. Analyse et réalisation de la transformationdes contenants vers la nouvelle cible(environnement de test).

2. Analyse et réalisation du déchargement /rechargement des données (environnementde test).

3. En parallèle des étapes ci-dessus, mise enplace du moteur d'interception en modepassif sur les systèmes de production pouranalyser l'activité et permettre au moteurd'évaluer les transformations qu'il devraréaliser.

4. Mise en action sur les jeux de test (batchet interactif) fournis par le client.Quantification de la pertinence des testsréalisés par la mise en œuvre d'outils decode coverage. Validation très stricte del'iso-fonctionnalité par comparaison desrésultats obtenus dans l'application lors del'exécution sur la base source et sur la basecible et par comparaison des changementseffectués sur les données dans les deuxbases

5. Passage en production par basculeprogressive des sous-ensembles dedonnées indépendants d'un point de vue del'intégrité transactionnelle (propriétésACID). Pendant cette période, lechangement de cible est totalementmasqué à l'application

6. Adaptation ultérieure du code applicatif deréférence au langage d'accès natif de lanouvelle cible. Cette adaptation esttotalement progressive : le moteurd'interception peut être laissé en fonction

tant que la dernière requête n'est pasmodifiée. Donc, les développeurs peuventréaliser de travail de maintenance demanière progressive, sans contraintetemporelle imposée par la transformation,au fil de leurs besoins d'évolutionfonctionnelle de l'application.

Lors de tels projets, Eranea accompagne sesclients qui le souhaitent sur l'acquisition descompétences et la mise en place de l'architecturetechnique et des procédures opérationnellesidoines par rapport à la nouvelle cible.

7. Prochaines étapesVous avez une base de données critique aufonctionnement de votre entreprise à transformersans risque vers une nouvelle cible afin derationaliser, d'optimiser, de transformer votresystème informatique ?

Nous sommes à votre disposition pour toutequestion ou information complémentaire.Contactez-nous par mail : [email protected]

www.eranea.com © Eranea 2015 Page 4 de 4