Rendimiento del Data Migration Framework

En casi todos los proyectos empresariales de CRM, es muy probable que se nos plantee la necesidad de realizar una migración inicial de datos desde otras aplicaciones. Para este escenario, Microsoft dispone de un conjunto de herramientas agrupadas bajo el nombre de Data Migration Pack. Este pack contiene plantillas de migración para algunas aplicaciones como Act o Siebel. Para el resto de aplicaciones, es el propio usuario el que debe establecer la relación entre los datos de origen y los datos de destino (CRM). Para ello, al instalar el Data Migration Framework, se crea una base de datos de staging con una estructura análoga a la de la base de datos de CRM. Una vez hemos migrado los datos de nuestras aplicaciones a esa base de datos de staging se ejecuta la herramienta de importación. Hasta aquí todo perfecto.
Pero volviendo al título de este mensaje, ¿cuál es el rendimiento de la herramienta?. ¿Cuánto tardaré en migrar mis registros? Bueno, pues trasladé esta misma pregunta a soporte de Microsoft y la respuesta es la siguiente:
 
  • En la versión 1.0, la migración se realizaba a una velocidad de 1-2 registros/segundo. El acceso de la herramienta al CRM era vía servicios web.
  • En la versión 1.2, se modificó la forma de acceso al CRM para hacerlo mediante componentes COM+. La velocidad media de migración mejoró a 10 registros/segundo.
  • En la versión 3.0 se vuelve a acceder a CRM mediante servicios web. Por el momento no hay cifras oficiales sobre su rendimiento.

Pues bien, en diversas pruebas que he realizado en una migración compleja, he obtenido tasas de migración de 4-6 registros/segundo. Este dato hay que tomarlo con cautela ya que, no podemos comparar rendimientos sin disponer de un juego de pruebas normalizado, el mismo hardware, etc. Sin embargo, lo que si que quiero es prevenir a todos aquellos que se tengan que enfrentar a un proceso de migración para que tengan muy en cuenta el tema del rendimiento. Os pongo un ejemplo. Migración de 2 millones de registros entre clientes, actividades, etc. A una tasa de 6 registros por segundo nos sale un total de 92 horas de migración, ¡casi 4 días!.

Conclusión: debemos tener muy en cuenta el tema del rendimiento a la hora de planificar nuestros procesos de migración. Por último, se nos plantea la pregunta de si se puede acelerar este proceso. La respuesta es que con el Data Migration Framework no es posible acelerar el proceso salvo que se haga tuning de SQL y se mejore el hardware del servidor de SQL. Si tenemos requisitos estrictos de tiempo máximo de migración habrá que estudiar otras alternativas como puede ser desarrollar nosotros un programa de migración con tecnología multithreading para paralelizar tareas de migración.

Esta entrada fue publicada en CRM. Guarda el enlace permanente.

Deja un comentario