¿Cuáles son los principales problemas que surgen al migrar datos?
Modernizar el software suele implicar también adaptar los datos con los que trabaja a la nueva plataforma. En muchas ocasiones, el nuevo desarrollo es relativamente sencillo y libre de complicaciones, pero resolver los problemas en la migración de datos pueden llevar mucho tiempo. Te explicamos algunos de los más comunes con los que te puedes encontrar en algún momento del proceso.
Diseño obsoleto, uno de los principales problemas en migración de datos
Aunque el diseño de un software sea muy bueno, al cabo de los años habrá nuevas necesidades que no se han tenido en cuenta en su creación. O, simplemente, la cantidad de datos a manejar ha superado las expectativas, y el diseño original ya no es capaz de dar una respuesta adecuada a causa de ello.
En el mejor de los casos, será necesario procesar la información original para adaptarla al formato de la nueva base de datos. Esto sucede, por ejemplo, si pasas de una base de datos estructurada, con datos estructurados, a una base de datos NoSQL. Y sucede porque es posible que algunas relaciones entre tablas pasen a convertirse en subdocumentos de la nueva base de datos.
En estos casos, es probable que en la estructura original también falte información necesaria para disponer de todo lo que vas a utilizar en la nueva aplicación. Las soluciones pasan por inferir estos valores que no conoces, si los posibles errores no son un problema. También por buscar otras formas de conseguir estos datos.
Entre ellas, recurrir a las fuentes originales si están disponibles o mantener durante un tiempo los dos sistemas recogiendo datos hasta disponer de un histórico lo bastante grande en la nueva aplicación. O puedes permitir que la aplicación sea capaz de trabajar con ambas estructuras de datos. En todo caso, la migración de los esquemas de la base de datos son uno de los principales quebraderos de cabeza al resolver los problemas en una migración de datos.
Evitar perder información, otro problema en migración de datos
Cuando un sistema que va a ser sustituido por otro más moderno no puede dejar de dar servicio ni siquiera durante un instante, la actualización puede ser muy complicada. Si, simplemente, se desactiva el sistema heredado para pasar a dar servicio con el nuevo, habrá un conjunto de datos que no está accesible en este. El motivo: serán demasiado recientes para que estén sincronizados.
Para resolver este problema en una migración de datos, se puede activar un sistema que capture los datos de forma redundante durante algún tiempo. De este modo, cuando dejes de usar el sistema heredado y pases a ocuparte del nuevo, los datos llevarán ya un tiempo almacenándose en ambos. Esto permitirá una transición mucho más suave.
Sin embargo, esto suele ser más complicado en sistemas distribuidos con una gran carga de trabajo. En algunas ocasiones, la mejor forma de realizar esta tarea es preparar el sistema para que la migración de los datos más recientes se haga con el sistema detenido. Eso sí, debe hacerse así durante un periodo de tiempo que sea lo más breve posible. En estos casos, incluso es posible que los usuarios no sufran tanto la parada necesaria del servicio. Será posible si pueden registrar sus operaciones en un buffer, que los remitirá al nuevo sistema tan pronto como esté operativo.
Los sistemas heredados suelen dar problemas por falta de coherencia
Uno de los objetivos de las bases de datos, en especial de las denominadas relacionales, es mantener la integridad de la información que contienen. Sin embargo, un mal diseño de software o el archivado de datos antiguos por motivos de rendimiento o de costes, entre otros muchos motivos, puede que tenga como consecuencia que haya datos que hacen referencia a otros que ya no están disponibles.
Cuando se lleva a cabo una migración de software y, con esta, una migración de datos, se analiza la aplicación existente y se asume que los datos que ésta gestiona estarán disponibles sin ningún tipo de incoherencia. Sin embargo, esto no siempre sucede. Entonces, la migración debe gestionar excepciones. Dejar fuera los datos incompletos, utilizar valores por defecto o tratar de calcular los que se han perdido son algunas estrategias que puedes llevar a cabo para conseguir dicha gestión.
En todo caso, un buen análisis del software heredado puede permitir detectar posibles problemas en la migración de datos antes de que estos se vayan a migrar. También tener preparado un plan para resolverlos llegado el momento.
Problemas en la migración de datos por el formato de los originales
Los problemas en las migraciones de datos no siempre se deben a errores, incoherencias o cambios en el modelo que se quiere migrar. En ocasiones, los causan los propios datos. Por estar almacenados en formatos que han quedado ya obsoletos o porque, simplemente, no son los mismos que estamos utilizando en la actualidad.
Un problema habitual en las migraciones de datos suele darse con los juegos de caracteres empleados. Mientras que en el software heredado se pueden utilizar códigos de idioma convencionales, o incluso simples caracteres ASCII, las aplicaciones actuales suelen trabajar con el formato Unicode. Este formato es más versátil y tiene la capacidad de representar texto en todo tipo de idiomas.
Aunque convertir un texto de un formato conocido a Unicode suele ser sencillo, hay que prestar mucha atención a otros problemas que puedes encontrar en una migración de datos. Por ejemplo, tienes que saber que las comparaciones de caracteres pueden dar un resultado diferente al que tenían en la aplicación heredada. También que la forma de ordenar caracteres puede ser diferente. Por eso, es importante analizar caso por caso las operaciones que se llevan a cabo con cadenas de texto en un formato que ha cambiado.
Como ves, actualizar las aplicaciones es solo una parte de una migración de software. Los problemas al migrar datos son muy comunes y debes tenerlo en cuenta para completar la transición de un software a otro de forma sencilla y con el menor número posible de complicaciones. Contar con una empresa especializada en la puesta al día de aplicaciones y, con ellas, los datos con los que trabajan, puede ahorrarte muchos quebraderos de cabeza y problemas inesperados. ¡Hazte con los servicios de expertos en migración de datos para evitar problemas!
Comments (0)