Se denomina migración de datos, al
proceso que tiene por objeto tanto la importación como la exportación de
una determinada información almacenada en un sistema de bases de datos,
para llevar a cabo su traspaso.
Estos cambios llevan consigo una
adaptación de todos los datos de una base de datos a otra. Por tanto
siempre que se producen cambios de un sistema de gestión a otro, se
habla inevitablemente de los procesos de migración de datos.
Con bastante frecuencia, las
operaciones de exportación de datos, requieren de un tratamiento
especial, resultando muy costosas de llevar a cabo. Esto sucede cuando:
- El formato de exportación de datos no coincide con el de importación de la nueva aplicación: Es muy típico encontrarse con una incompatibilidad de los formatos de salida y entrada entre dos aplicaciones, en algo tan básico como el formato. Por ejemplo, partiendo de un sistema que sólo sea capaz de exportar en formato ".wk1" e intentemos importar sus contenidos a una base de datos MySQL que sólo acepta la importación de archivos con formato y extensión ".sql", ".xml" o ".csv"
- Otro problema muy común es la
codificación del set de caracteres. Con frecuencia en muchos casos, se
tratan de importar datos codificados con normas ISO 8859-1, cuando las
tablas de la base de datos de destino esta configurada para formatos
UTF-8 Unicode. Dicho de otra forma, es necesario que los datos tengan
características de codificación para que puedan ser identificadas
correctamente y evitar una transformación inadecuada de los caracteres
especiales.
- Cuando la extensión del formato de archivo está bien definida, pero no lo está la codificación interna del formato. Dicho de otra forma, la información contenida en el archivo de exportación, no está correctamente definida o delimitada. Esto provoca que el sistema de destino al que se pretende exportar todos los datos, no diferencie correctamente qué información corresponde a qué campo descriptivo o etiqueta.
La delimitación de los campos y de la información en un formato de exportación
La migración de datos, depende
completamente de la manera en que representar la información. La
delimitación de los datos y los campos de información son conceptos
cruciales.
Los delimitadores como su propio nombre indica, son marcas que permiten identificar los segmentos de datos o contenidos de un determinado registro. Por tanto, cualquier formato de exportación de datos que esté debidamente delimitado, representa a la postre una tabla de una base de datos y en consecuencia todos sus campos. De esta forma se puede obtener una copia íntegra y exacta de la información original, quedando reproducida tanto en su forma y estructura como en su contenido.
Para lograr trasladar no sólo la estructura sino el contenido o información de origen, existen múltiples formas de representar y delimitar los datos, los campos que los contienen y en definitiva la estructura completa original.
Los delimitadores como su propio nombre indica, son marcas que permiten identificar los segmentos de datos o contenidos de un determinado registro. Por tanto, cualquier formato de exportación de datos que esté debidamente delimitado, representa a la postre una tabla de una base de datos y en consecuencia todos sus campos. De esta forma se puede obtener una copia íntegra y exacta de la información original, quedando reproducida tanto en su forma y estructura como en su contenido.
Para lograr trasladar no sólo la estructura sino el contenido o información de origen, existen múltiples formas de representar y delimitar los datos, los campos que los contienen y en definitiva la estructura completa original.
Según se muestra a continuación en el gráfico de delimitación de campos e información, es obligado establecer minimamente dos delimitadores que correspondan al inicio y al final de un dato o un campo. De esta forma, cualquier analizador de datos, es capaz de seguir un patrón sencillo de la codificación que se ha establecido para el formato de exportación correspondiente. A su vez es necesario establecer un delimitador que diferencia el inicio y el final de cada registro. Téngase en cuenta que un registro puede tener múltiples campos y múltiples datos, por lo que si se desean representar todos los datos de un registro, a veces se requiere obligatoriamente diferenciar la separación entre los diferentes asientos de la tabla.
Todos los separadores responden al esquema presentado, por lo que se observará siempre que la delimitación de datos y campos de un registro y a la postre de una tabla, mantienen un concepto de anidamiento singular.

Pero no siempre los formatos de exportación de información
responden a estos esquemas que la lógica impone, por ejemplo el formato
ISO2709, que emplea delimitadores iniciales diferentes a los
delimitadores finales. Es decir, el analizador de datos, define que el contenido de
datos que encuentre en el espacio correspondiente entre la primera
etiqueta de campo y la siguiente, corresponde a un dato de la primera
etiqueta y así sucesivamente.
A este modelo especial, hay que añadir
el modelo de delimitación por anidamiento nodal, delimitación por
caracteres especiales y código inicial y caracteres especiales finales.
En todos los casos es posible de igual forma establecer la distinción de
los diferentes datos y sus correspondientes campos.
Pasos para llevar a cabo una Migración de datos
- Limpieza de las tablas de la Base de Datos.
- Consolidación de las tablas de la Base de Datos.
- Mapeado de las tablas de Origen y Destino.
- Definición de Formato de Origen y Destino.
- Ruta de Saltos de Formato en la Migración.
- Definición del Set de Caracteres de Origen y Destino.
- Comprobación de los delimitadores de campos.
- Migración de Prueba.
- Evaluación y Comprobación de Errores.
- Depuración Final.
Formatos de Migración más Comunes
- Formato .CSV:
- CSV son las siglas de
Comma-separated values, y se considera uno de los formatos de
exportación más sencillos que se hayan diseñado nunca. CSV permite
representar todos los datos en forma de tabla, de forma que se adapta
por completo a toda la casuística de tipologías de bases de datos y
especificaciones de cada campo, con independencia de su naturaleza, ya
sea numérico, fecha, texto, etc.
- Se caracteriza por utilizar unos
caracteres separadores para diferenciar las columnas de la tabla. Dichos
separadores son siempre las comas ",". De esta forma el salto de línea
representa una fila de datos nueva, diferente a la anterior. Otra de las
reglas de construcción de un archivo CSV es la disposición de comillas
dobles para separar columnas, siempre que en el valor textual de cada
campo se incluyan comas "," como parte del contenido.
- El formato CSV no requiere de un set
de caracteres concretos, por lo que tiene una gran interoperabilidad en
diferentes aplicaciones.
- De cara a la importación y exportación de catálogos bibliográficos
es muy adecuado, siempre que se definan correctamente las etiquetas
catalográficas de cada columna de forma adecuada y se generen todos los
campos necesarios. Por lo que requiere de una exhaustividad descriptiva
importante para reflejar todos los campos que el estándar ISO2709
establece.
- Referencias sobre CSV
- Formato .TAB:
- El
fichero TAB, toma su nombre de Tabulación. Al igual que CSV es un
formato de texto, pero difiere en la forma de delimitar los campos de
datos, ya que utiliza las tabulaciones o espacios para separar cada
columna de datos. Por otro lado al igual que CSV, cada salto de línea
corresponde a una fila o registro nuevo de la tabla que se trata de
exportar. Estas características hacen que .TAB no sea un formato
adecuado de exportación al menos en lo que al catálogo se refiere, ya
que se generan excesivos caracteres en blanco para poder hacer coincidir
en cada columna la información correspondiente a un campo.
- De hecho es un formato de exportación
utilizado fundamentalmente para pequeñas migraciones de datos y para
tablas de menores dimensiones que no revistan de una complejidad o
extensión excesivas. En esos casos y en aquellos en los que los valores
de cada campo no son excesivamente largos, el formato .TAB sigue
utilizándose frecuentemente, aunque en claro detrimento en favor de CSV.
- Formato .XML:
- XML es uno de los mejores formatos para la exportación de la
información de un catálogo bibliográfico. Destaca fundamentalmente por
ser completamente adaptable a cualquier esquema de datos por complejo
que pueda resultar. Esto se consigue gracias a que es un lenguaje de
marcas extensible que depende de un Schema o Document Type Description
para su verificación. De esta forma se puede definir por completo las
características de cada uno de los campos de descripción de un catálogo
automatizado según las normas o reglas de catalogación establecidas. Un
ejemplo de ello es el formato MARC XML que trata de implantar la Library of Congress,
que permite adaptar sus registros a una serie de items que reflejan
todas las etiquetas, campos numéricos y subcampos correspondientes para
la descripción bibliográfica. De esta forma se logra representar todo el
etiquetado MARC y toda la casuística que conlleva atendiendo a una
sintaxis y normas definidas.
- Por tanto XML, al establecer
etiquetas de inicio y cierre de los contenidos, permite def¡nir de forma
muy sencilla el nombre de los campos, sus atributos y valores. A
diferencia de CSV que obligaba a introducir todos los datos de un
registro en una sola línea, XML permite el anidamiento de los registros
favoreciendo la separación de cuantos asientos bibliográficos o
registros sean necesarios, sin límites físicos en los archivos. Por este
motivo, resulta más fiable porque reduce errores y pérdidas de
información en las migraciones que se efectuen.
- Formato ISO 2709 Unimarc:
- Se
considera un formato de exportación fundamental, necesario en cualquier
sistema de gestión de bibliotecas. De hecho su norma internacional lo
titula como "Format for Bibliographic Information Interchange" Formato
para el Intercambio de Información Bibliográfica. Fue diseñado a partir
de la década de los 60 y desde entonces ha sufrido múltiples revisiones,
hasta llegar a la actual ISO 2709:1996.
- Cada registro en formato ISO2709 se caracteriza por tener cuatro apartados principales, a saber:
- Rótulo de la Etiqueta:
Son los primeros 24 caracteres del registro. Siendo la única porción
del formato que se traslada formateada en su extensión original. Además
incluye la extensión y dirección base de los datos contenidos en el
registro.
- Directorio:
El segmento de directorio, permite establecer las posiciones de entrada
en el registro, mediante las etiquetas de campo. A su vez, cada entrada
de directorio tiene cuatro subcampos que no pueden exceder de una
extensión de 9 caracteres.
- Etiqueta de Campo.
- Extensión del Campo.
- Caracter de Inicio del Campo.
- Definición de Parte.
- Campos de Datos: Son los elementos contenedores de toda la información bibliográfica.
- Separador de Registro: Un caracter sencillo de separación para cada registro.
- Rótulo de la Etiqueta:
Son los primeros 24 caracteres del registro. Siendo la única porción
del formato que se traslada formateada en su extensión original. Además
incluye la extensión y dirección base de los datos contenidos en el
registro.
- En relación a los campos del formato ISO2709, existen tres tipos fundamentales:
- Identificador de Campo en el Registro:
Es el campo que identifican el registro, siendo asignado por el centro o
institución catalogadora que ha elaborado la catalogación del
documento. Se identifica por la etiqueta 001.
- Campos Reservados: Contiene
información que puede ser necesitada para el procesamiento de la
información bibliográfica recogida en campos especializados. Se
identifican por estar representados mediante etiquetas que varían desde
002-009 y 00A-ZZZ.
- Campos Bibliográficos:
Son campos específicos para la descripción de los documentos y que
constan de rangos 010-999 y 0AA-ZZZ. Los campos de descripción
bibliográfica tienen separadores especificos, determinados a su vez por
la norma ISO 646, es decir por la American Standard Code for Information
Interchage o ASCII.
Además cada campo, puede disponer a su vez de subcampos que corresponden
o equivalen a las marcas de los dólares en formatos MARC, que están
limitados a un espectro comprendido entre 0 y 9.
- Todas estas características de la codificación de un registro bibliográfico en ISO2709, responden de forma directa a las convenciones establecidas en lo que se viene denominando como formato UNIMARC. Dicho de otra forma, con la norma ISO, se obtiene un registro bibliográfico que cumple con todas las especificaciones del estándar de descripción bibliográfica uniforme y convenido internacionalmente, es decir, UNIMARC. Esto se debe a que la estructura de datos utilizada es una implementación de las ISO2709. En definitiva y a efectos prácticos, codificar en UNIMARC es lo mismo que codificar en ISO2709.
Set de Caracteres más Comunes
Anteriormente se ha citado brevemente la disposición del ISO 8859-1 que es el set de caracteres para definir el alfabeto latino que incluye a su vez los símbolos diacríticos más utilizados en castellano y portugués es decir "ñ" y "ç" entre otros, y que corresponden a los primeros 256 caracteres del estándar Unicode. Dicho esto, si bien ISO 8859-1 tendría que ser compatible con el set UTF-8 Unicode, (por forma parte de la norma Unicode), la tendencia actual es la transformación del primero en éste último. Esto se debe a una serie de características que hacen especial al set de caracteres UTF-8 Unicode que son las siguientes:- ISO 8859-1
- Es la norma de codificación especializada en caracteres latinos de primer bloque que comprende los primeros 256 caracteres del set ISO 10646, del que derivó posteriormente en el set de codificación de caracteres UTF-8.
- Esta norma no es universal, puesto que sólo representa los caracteres de los principales idiomas europeos.
- La capacidad de codificación de ISO 8859-1 es de 8 bits al igual que UTF-8, pero con la desventaja de que los caracteres codificados en cualquiera de los casos ocupan más de 4bytes. Esto hace que la carga de un documento codificado con ISO 8859, sea más lenta.
- Es muy corriente encontrar archivos HTML, definidos con este set de
caracteres, por lo que HTML como formato de exportación tendrá que ser
verificado en este punto para ser convertido si fuera necesario.
- Véase Norma ISO 8859-1
- UTF-8 Unicode
- Es capaz de codificar cualquier caracter, puesto que esta diseñado para codificar con 8 bits de longitud de variable. De aquí que se considere el set de caracteres universal. (No obstante también se están empleando sets de hasta 32 bits que benefician principalmente a la codificación de caracteres de tipo ideográfico o visual, como caracteres chinos, japoneses o árabes)
- No comprime la codificación de los caracteres, por lo que las notaciones textuales son completas.
- Pese a las carencias de compresión de caracteres, los caracteres latinos propios de la ISO 8859-1 son codificados con extensiones entre 1 y 4 bytes. Esto supone una reducción de la memoria necesaria para ser cargados.
- UTF-8 es el set de caracteres predeterminado para XML. Por tanto los archivos exportados en dicho formato, se deben codificar, tanto de salida como de entrada con UTF-8 Unicode.
- Véase Norma UTF-8.
No hay comentarios:
Publicar un comentario