Chaque migration est une négociation avec des données qui sont pires que ce dont on se souvient. Des enregistrements en double que personne ne réconcilie, des dates dans trois formats, un champ de texte libre qui porte une signification qui était censé être un menu déroulant et une clé qui était unique jusqu’en 2019. La partie technique du déplacement des données est rarement la partie la plus difficile.
Ce que le travail implique
- Profiler honnêtement les données sources avant de s’engager dans un plan, y compris les parties que personne ne veut regarder
- Conception du schéma pour les requêtes qui seront réellement exécutées, plutôt qu'une translittération de l'ancienne structure
- Migrations sous contrôle de version et répétées contre une copie de production, à plusieurs reprises
- Réconciliation qui prouve que les nombres de lignes et les totaux correspondent, plutôt que de supposer
- Un plan de récupération qui a été testé, pas seulement écrit
- Séquençage de coupure conçu autour de l'entreprise, pas autour de la commodité des ingénieurs
Pourquoi nous sommes crédibles à ce niveau
Nous avons migré notre propre plateforme de production entre des moteurs SQL distribués avec des données en direct et nous savons par expérience que dans une base de données distribuée, une transaction voit un seul snapshot pour toute sa durée de vie, même en mode de validation en lecture, ce qui invalide discrètement le code qui était correct sur un seul nœud.
Ce qui déplace le prix
Nous vous proposons un devis après la découverte et le numéro est fixé avant que tout ne commence.Ce sont les choses qui le déplacent, de sorte que vous pouvez voir à peu près où se situe votre projet avant de nous parler.
- Le degré de propreté des données sources — cela domine tout le reste, généralement par une large marge
- Si les anciens et les nouveaux systèmes doivent fonctionner en parallèle, et pendant combien de temps
- Temps d'arrêt acceptable à la coupure, puisque le temps d'arrêt presque nul est une conception différente et plus coûteuse
- Si les données historiques doivent être conservées exactement ou peuvent être résumées
Questions qui nous sont posées
Autres Développement d'applications travaux
Dites-nous ce que vous essayez de faire
Une courte conversation est généralement suffisante pour savoir si nous sommes les bonnes personnes, si nous ne le sommes pas, nous le dirons et vous indiquerons quelque part mieux.
