Migración de ISAM a SQL con la Solución de Go Up Technology 10 razones por las cuales convertir sus aplicaciones y bases de datos a través de la solución 100% automática de Go Up Technology puede hacer la diferencia entre el éxito y el fracaso. Go Up Technology Página 1 www.GoUpte.com Sumario Al realizar una migración desde ISAM a SQL, nos encontramos con una larga lista de verificación de procedimientos que debe realizarse adecuadamente en el orden correcto para garantizar una conversión exitosa. El fracaso al seguir por lo menos una de esas tareas puede sembrar el caos en la base de datos convertida, un resultado que puede ser catastrófico para las aplicaciones de misión crítica. Este libro blanco explica por qué utilizar la verdadera solución 100% automática de Go Up Technology es la mejor manera de evitar complicaciones, y asegurar una conversión exitosa. Go Up Technology Página 2 www.GoUpte.com Índice Hipótesis y Opciones ................................................................................... 4 10 Problemas Comunes al Realizar una Conversión de ISAM a SQL ............. 5 1. Problemas Manuales................................................................................ 5 2. Conversión del Contenido ......................................................................... 5 3. SQL Directas .......................................................................................... 5 4. Rendimiento ........................................................................................... 6 5. Integridad de los Datos............................................................................ 6 6. Implementación de las Reglas SQL en su Aplicación .................................... 6 7. Transacciones y Bloqueos ........................................................................ 6 8. Manipulación Física de Archivos Reales en el Disco ...................................... 7 9. Definición del Objeto en la Base de Datos .................................................. 7 10.Orientación y Capacitación ....................................................................... 8 10 Razones para utilizar la Verdadera Solución 100% Automática de Go Up Technology .................................................................................................. 9 1. Problemas Manuales.............................................................................. 10 2. Conversión del Contenido ....................................................................... 10 3. SQL Directas ........................................................................................ 10 4. Rendimiento ......................................................................................... 10 5. Integridad de los Datos.......................................................................... 11 6. Implementación de las Reglas SQL en su Aplicación .................................. 11 7. Transacciones y Bloqueos ...................................................................... 11 8. Manipulación Física de Archivos Reales en el Disco .................................... 11 9. Definición del Objeto en la Base de Datos ................................................ 12 10.Orientación y Capacitación ..................................................................... 12 Conclusión ................................................................................................. 13 Go Up Technology Página 3 www.GoUpte.com Hipótesis y Opciones Este libro blanco está escrito con la hipótesis de que el lector ya ha tomado la decisión de cambiar de ISAM a SQL. De no ser así, es altamente recomendable leer otro de nuestros libros blancos – “Cambiar de ISAM a SQL–. Las bases de datos SQL son más complejas y precisan de un mantenimiento más intensivo en comparación con las bases de datos ISAM (como Pervasive Btrieve). Aquí enumeramos las 10 principales razones para realizar el cambio a SQL de todos modos.” En cuanto a las opciones, los clientes Magic que desean convertir su base de datos de la aplicación de ISAM a SQL, suelen tener sólo dos: 1. Realizar la conversión de la base de datos manualmente, utilizando el personal interno o un subcontratista 2. Realizar la conversión de la base de datos con herramientas automáticas o semiautomáticas, generalmente proporcionadas por un subcontratista Desafortunadamente, la segunda opción a menudo no es lo que parece, ya que lo que algunos subcontratistas llaman una “herramienta automática”, ni siquiera es verdaderamente automática en un 100%, y de hecho incluye una cantidad engañosa de trabajo manual. Go Up Technology Página 4 www.GoUpte.com 10 Problemas Comunes al Realizar una Conversión de ISAM a SQL Existen numerosos problemas potenciales al realizar una conversión de ISAM a SQL sin una herramienta verdaderamente automática en un 100%. A continuación se enumeran 10 de los más preocupantes que deberían ser tenidos en cuenta por los clientes Magic: 1. Problemas Manuales Realizar una conversión manual o semiautomática a SQL a partir de ISAM virtualmente garantiza que algo será pasado por alto. Es prácticamente imposible lidiar correctamente con todos los inconvenientes que deben ser tratados en una conversión de esa magnitud, a menos que sea llevada a cabo con una verdadera solución 100% automática. Por otra parte, una conversión manual o semiautomática es más vulnerable a los errores y, generalmente, resulta en soluciones no estándar que son implementadas a través de la aplicación. Lo peor del caso es que una conversión manual o semiautomática requiere un período más prolongado de “Code Freeze” para su aplicación, pudiendo tener implicaciones financieras negativas para su empresa, y/o sus clientes. 2. Conversión del Contenido Cambiar su backend de ISAM a SQL no sólo significa gestionar la conversión de la base de dados por sí sola. También es necesario manejar la creación de objetos en la nueva base de datos SQL, convertir los datos, compararlos con los datos anteriores, y abordar los cambios en el entorno Magic/uniPaaS. Estos problemas tienden a complicarse cuando los datos incluyen un número de una biblioteca física, o si su administración de datos utiliza “Nombres Lógicos”. Intentar realizar este trabajo de forma manual o semiautomática sólo aumenta las probabilidades de que algo se pierda. Go Up Technology Página 5 www.GoUpte.com 3. SQL Directas Una de las grandes ventajas de las bases de datos SQL es la habilidad de utilizar instrucciones SQL directas en su aplicación Magic/uniPaaS. Como lo establece la documentación de Magic Software, "El objeto del Comando SQL Directo permite proporcionar una instrucción SQL que es enviada a la base de datos SQL subyacente para proporcionar la vista de los datos de tarea, o para realizar el procesamiento requerido por el comando”. Otra ventaja que ofrecen las bases de datos SQL es la habilidad de utilizar la cláusula WHERE en sus programas Magic/uniPaaS y mover los Ranges desde una expresión Magic a las nstrucciones de la cláusula WHERE. Una conversión manual o semiautomática puede desatender la incorporación de estos potenciadores del rendimiento. 4. Rendimiento Existen más de 50 elementos que pueden afectar el rendimiento de la aplicación y deben ser tratados durante la conversión (el almacenamiento de los campos de Magic, la configuración del cursor de tablas, optimización de claves e índices, los Hints para las bases de datos, funciones Cnd Range, etc.). Una conversión manual o semiautomática posiblemente no podrá manejar todos estos inconvenientes, ni obtener el máximo provecho de Magic a través del objeto de comando SQL Directo. Sin una implementación completa de todas estas cuestiones, los problemas de rendimiento serán prácticamente seguros. Y lo que es peor, mientras más avanzada sea la versión de la base de datos ISAM, más profundos serán sus problemas en el rendimiento. 5. Integridad de los Datos La conversión de los datos es un componente muy importante a la hora de realizar una conversión de ISAM a SQL, y hay muchos asuntos que pueden afectar la calidad de esos datos si eso sucede. Si el proceso de transferencia de datos es llevado a cabo con errores, o aun peor, termina dañando los datos, entonces la cantidad de tiempo necesaria para realizar las correcciones crecerá exponencialmente. 6. Implementación de las Reglas SQL en su Aplicación Trabajar con una base de datos SQL requiere la adopción de una serie de reglas y directrices de codificación que detallan un marco para los programas de su aplicación. La conversión manual a SQL o el uso de proveedores que no están calificados o no tienen la experiencia necesaria, podría resultar en un fracaso total o parcial para implementar estas importantes reglas de la forma correspondiente. Una implementación incorrecta de estas reglas corre el riesgo de exponer su base de datos y aplicación a una variedad de errores y bugs en el futuro. Go Up Technology Página 6 www.GoUpte.com 7. Transacciones y Bloqueos Una de las más importantes ventajas de una base de datos SQL es su habilidad para manejar los datos transaccionales. De igual manera se relaciona la preservación de la funcionalidad relacionada con los bloqueos, como se define en la aplicación original. Estos dos asuntos están entrelazados. Durante la conversión a una base de datos SQL, suelen ocurrir problemas que requieren una intervención y tratamiento adecuados para preservar la funcionalidad, por un lado, mientras que todavía permite el uso de capacidades de transacción, por otro lado. 8. Manipulación Física de Archivos Reales en el Disco Una opción disponible para los programadores de Magic que trabajan con bases de datos ISAM es la habilidad de realizar acciones físicas sobre archivos físicos. Por ejemplo, muchos programadores pueden codificar operaciones y actividades en sus programas Magic que actúan sobre los archivos de base de datos físicos de Pervasive/Btrieve utilizando funciones DB o IO (por ejemplo, DBDEL, IODEL, etc.). Algunos incluso utilizan comandos de DOS operando en esos archivos (salen a los comandos DOS y llaman una expresión para copiar o renombrar carpetas/archivos). También estaba permitido trabajar con “Nombres Lógicos” que determinan la localización o expresión de un archivo físico en la tabla Task DB. Al realizar una conversión a una base de datos SQL, todos estos asuntos experimentan cambios radicales que deben ser abordados uno por uno. No es posible que una aproximación manual o semiautomática pueda manejar esto adecuadamente. 9. Definición del Objeto en la Base de Datos Realizar la conversión de su base de datos de ISAM a SQL requerirá crear la nueva base de datos, y luego transferir los datos hacia ella. Una vez concluido este proceso, la base de datos y su estructura acompañarán a la aplicación y a su empresa, de ahí en adelante. Por esta razón, es importante obtener las definiciones de los objetos de manera correcta, con los nombres de los objetos que apoyen las reglas de SQL, pero las decisiones correctas no siempre están basadas en las configuraciones predeterminadas. Este es un factor importante en el que puede resultar un desastre la conversión a través de una solución manual o semiautomática. Go Up Technology Página 7 www.GoUpte.com 10. Orientación y Capacitación Desarrollar aplicaciones que funcionen con bases de datos SQL requiere de programadores que adquieran nuevos conocimientos, pero estos conocimientos no pueden comprarse. Un curso de Administrador de Base de Datos SQL puede enseñar los temas relacionados a las bases de datos SQL, pero esta enseñanza no incluye las reglas específicas que pertenecen a Magic y uniPaaS. Por eso es importante que este conocimiento esté disponible en una empresa durante la conversión, ya que en última instancia deberán hacerse cargo del mantenimiento de la aplicación inmediatamente después de terminado el proceso de conversión. Go Up Technology Página 8 www.GoUpte.com 10 Razones para utilizar la Verdadera Solución 100% Automática de Go Up Technology La mejor forma de realizar una conversión de ISAM a SQL es utilizando la verdadera solución 100% automática de Go Up Technology. Este es la única aproximación que hará cumplir una multitud de prácticas adecuadas encapsuladas para garantizar que CADA paso que DEBE ser realizado, realmente, SEA realizado. Lograr esto de forma manual será de una dificultad extrema y consumirá más tiempo incluso para los expertos de más alto nivel, que por causa de las restricciones de cronograma pueden ser tentados, o también presionados, para recortar presupuestos. No existe el recorte de presupuesto cuando es utilizada una verdadera solución automática en un 100%, y los plazos son posibles de cumplir, ya que no se requiere intervención manual. Un cliente Magic que considera una conversión de ISAM a SQL y se preocupa por las consecuencias de realizarla manualmente, puede estar tranquilo, ya que las 10 principales preocupaciones enumeradas anteriormente se invierten para transformarse en las 10 razones principales para utilizar la verdadera solución 100% automática de Go Up Technology. 1. Problemas Manuales La solución de Go Up Technology es en verdad 100% automática, y la única herramienta disponible que puede ejecutar una conversión 100% automática. Hay muchos farsantes en el mercado que aseguran ofrecer servicios de conversión automáticos, pero en la realidad ocultan el hecho de que la mayoría de sus esfuerzos se realiza de manera manual. Es muy fácil identificarlos. Simplemente insista para que realicen su conversión completamente en las instalaciones de su empresa y bajo su mirada atenta. Si la solución que le ofrecen es 100% automática, usted podrá verlo por sí mismo. En el caso en que insistan en realizar CUALQUIER aspecto de la conversión fuera de sus instalaciones (lejos de las miradas ajenas), entonces puede estar seguro de que lo están engañando, y que tampoco deben ser honestos sobre otras cosas. Una verdadera conversión 100% automática garantiza la estandarización y minimiza los errores que normalmente suceden durante el trabajo manual. Además no precisa la utilización del code freeze, y los plazos para llevar a cabo la conversión, generalmente, son más cortos. Go Up Technology Página 9 www.GoUpte.com 2. Conversión del Contenido La verdadera solución 100% automática de Go Up Technology garantiza que todos los asuntos relevantes con una conversión de ISAM a SQL son gestionados adecuadamente durante el proceso (para obtener especificaciones más completas sobre la conversión, descargue el producto Go.SQL en PDF). Nuestra solución incluye scripts para crear una nueva base de datos SQL, una aplicación para convertir los datos y verificar su integridad, la creación de reportes y logs, la configuración de los entornos Magic/uniPaaS para trabajar con la nueva aplicación y base de datos convertida, orientación y Capacitación, y por supuesto, scripts y programas para manejar las tablas de soporte administradas por los “Nombres Lógicos” o bibliotecas múltiples. Este último punto es factor crucial para los usuarios de Pervasive/Btrieve quienes sacan provecho de esta característica y, a menudo, se equivocan cuando solicitan una conversión de ISAM a SQL manualmente o con apenas una herramienta semiautomática. 3. SQL Directas La verdadera solución 100% automática de Go Up Technology garantiza que su backend convertida será capaz de beneficiarse con la habilidad de la base de datos SQL de utilizar las instrucciones SQL Directas en su aplicación Magic/uniPaaS. También podrá remplazar los Ranges de la expresión Magic con las instrucciones de cláusula WHERE. 4. Rendimiento Existen más de 50 elementos que pueden afectar el rendimiento del sistema en una base de datos SQL. La solución de Go Up Technology asegura que cada elemento recibirá la atención y optimización adecuada, comenzando por la definición del objeto en la base de datos, continuando por definir el tipo de almacenamiento apropiado en la aplicación Magic, y finalizando por remplazar los ranges en el programa por la cláusula WHERE e implementar las instrucciones SQL Directas. Go Up Technology es el único proveedor de conversiones que ofrece la garantía de que el rendimiento de su aplicación convertida no decaerá, y ¡será mejor en comparación con su versión anterior! Go Up Technology Página 10 www.GoUpte.com 5. Integridad de los Datos La verdadera solución 100% automática de Go Up Technology no sólo incluye un componente de conversión de datos con verificación integral de la integridad de los mismos, sino que también incluye en cada proyecto de conversión la verificación de los datos mismos por el equipo de Go Up Technology para garantizar que el proceso sea realizado de manera fluida y sin problemas. La vasta experiencia de nuestro equipo al lidiar con dichos problemas en la conversión de datos, asegura que el proyecto será dirigido de forma rápida y eficiente. 6. Implementación de las Reglas SQL en su Aplicación La experiencia es lo que cuenta, y Go Up Technology es la empresa con más experiencia que ofrece soluciones de conversión de base de datos para las aplicaciones Magic y uniPaaS. Con más de 15 años de experiencia y cerca de 1.000 aplicaciones Magic y uniPaaS convertidas con éxito (junto con sus bases de datos), hemos adquirido un amplio conocimiento incorporado en nuestra herramienta de conversión 100% verdaderamente automática. Un ejemplo – la lista de reglas SQL que hemos integrado completamente en su aplicación durante la conversión. Asimismo, realizamos una transferencia total de conocimientos a los desarrolladores de nuestros clientes sobre estas reglas SQL. Esta lista incluye el manejo de las tablas con índices no únicos, seleccionar todos los segmentos principales del índice en una vista, manejar las transacciones y bloqueos, gestionar las expresiones DELETE, manipular las funciones DB y IO, operaciones Command, apoyar los “Nombres Lógicos”, etc. 7. Transacciones y Bloqueos Cada propuesta remitida por Go Up Technology incluye un compromiso para mantener la funcionalidad del sistema. Además de esta garantía, durante la conversión llevamos a cabo optimizaciones que incluyen cambios para reducir el problema de los bloqueos en el futuro. Por ejemplo, verificar si DB se encuentra abierto en el modo Escritura (predeterminado por Magic hasta la versión 9.4) que, en cambio, puede ser modificado al modo Sólo Lectura. También apoyamos la implementación de las transacciones en la aplicación durante el proceso de conversión. 8. Manipulación Física de Archivos Reales en el Disco Nuestra verdadera solución 100% automática permite la preservación de las acciones físicas sobre los archivos físicos a los que muchos desarrolladores ISAM se han acostumbrado. La solución soporta el trabajo continuo con los “Nombres Lógicos”, remplazando las funciones IO y DB por comandos SQL, manejando la operación de comando DOS y otras actividades. Go Up Technology Página 11 www.GoUpte.com 9. Definición del Objeto en la Base de Datos Cuando Go Up Technology convierte su base de datos ISAM en SQL, se crea su nueva estructura de base de datos utilizando un proceso de optimización probado. Nuestros procesos de optimización tienen en cuenta diversos aspectos sobre la base de datos original e introducen ese factor en la creación de la base de datos destino. Asimismo, se define la base de datos de manera tal que minimizará las necesidades de conversión de datos inminentes (por ejemplo, el numeric5 es declarado como un número entero que permite hasta 9 dígitos). Por otra parte, se seleccionan los tipos de datos que pueden proporcionar el mejor rendimiento para su aplicación Magic/uniPaaS. 10. Orientación y Capacitación Go Up Technology incluye la orientación y entrenamiento junto con sus proyectos de conversión. Contamos con la opción de involucrar a los desarrolladores del cliente en el proceso de conversión, con la finalidad de que aprendan directamente a partir de las fuentes, y se sientan más cómodos al encargarse inmediatamente del mantenimiento de la aplicación convertida. Go Up Technology Página 12 www.GoUpte.com Conclusión Gastar a espuertas y economizar en nimiedades cuando se trata de realizar la conversión de bases de datos de misión crítica puede ser una opción comercial fatal. Cuando fue tomada la decisión de invertir en un back-end SQL, recortar el presupuesto al realizar una conversión de manera manual o a través de un contratista inexperto, no tiene ningún sentido. La mejor manera de garantizar una conversión de alta calidad es utilizar la verdadera solución 100% automática de Go Up Technology. Go Up Technology Página 13 www.GoUpte.com