migrating to the cloud chap 3 495856

Download Migrating to the Cloud Chap 3 495856

If you can't read please download the document

Upload: markomx

Post on 18-Feb-2016

214 views

Category:

Documents


1 download

DESCRIPTION

Ajeno, tomado de la red

TRANSCRIPT

Migrar a la nubeOracle Client/Server ModernizacinTom Laszewski Prakash NauduriEditor TcnicoWard SpangenbergAMSTERDAM BOSTON HEIDELBERG LONDRES NUEVA YORK OXFORD Pars SAN DIEGO SAN FRANCISCO Singapur Syngress Sydney Tokio es una huella de Elsevieradquirir Editor: Chris Katsaropoulos Desarrollo Editor: Matt atienden Project Manager: Jessica Vaughan Diseador: Alisa AndreolaSyngress es una huella de Elsevier 225 Wyman Street, Waltham, MA 02451, EE.UU.2012 Elsevier Inc. Todos los derechos reservados.Ninguna parte de esta publicacin puede ser reproducida o transmitida de cualquier forma o por cualquier medio, electrnico o mecnico, incluyendo fotocopiado, grabacin o cualquier sistema de almacenamiento y recuperacin de informacin sin el permiso por escrito del editor. Detalles sobre cmo solicitar el permiso, ms informacin acerca de los permisos Publisher's polticas y nuestros acuerdos con organizaciones tales como el Copyright Clearance Center y el Copyright Licensing Agency, pueden ser encontrados en nuestra pgina web: www.elsevier.com/permissions.Este libro y las contribuciones individuales que figuran en l estn protegidos bajo copyright por el editor (excepto como se puede observar en el presente).Avisos elconocimiento y las mejores prcticas en este campo estn cambiando constantemente. Las nuevas investigaciones y experiencia ampliar nuestra comprensin, los cambios en los mtodos de investigacin o las prcticas profesionales pueden llegar a ser necesarios.Los practicantes e investigadores siempre debe confiar en su propia experiencia y conocimiento en la evaluacin y el uso de cualquier informacin o mtodos que se describen en este documento. En el uso de dicha informacin o mtodos deben ser conscientes de su propia seguridad y la de los dems, incluidas las partes para quienes tienen una responsabilidad profesional.En la mayor medida permitida por la ley, ni el Editor ni los autores, colaboradores o editores, asumen responsabilidad alguna por lesiones y/o daos a personas o bienes, como una cuestin de responsabilidad por productos defectuosos, negligencia o de otra manera, o de cualquier uso o explotacin de cualesquiera mtodos, productos, instrucciones o ideas contenidas en el presente material.Biblioteca del Congreso de catalogacin en publicacin Data Laszewski, Tom.La migracin a la computacin en nube: Oracle Client/Server modernizacin / Tom Laszewski, Prakash Nauduri.p. cm.ISBN 978-1-59749-647-6 1. La computacin en nube. 2. La migracin de los sistemas. 3. Oracle (archivo de computadora) 4. Computacin de cliente/servidor.I. Nauduri, Prakash. II. Ttulo.QA76.585.L38 2012 004.6782EDC23 2011029908British Library catalogacin en publicacin un catlogo de datos de registro de este libro est disponible en la Biblioteca Britnica.ISBN: 978-1-59749-647-6Impreso en los Estados Unidos de Amrica 12 13 14 15 16 10 9 8 7 6 5 4 3 2 1para obtener informacin sobre todas las publicaciones Syngress visite nuestro sitio web en www.syngress.commetodologa einformacin de diseo en este captulo:opciones de migracin CAPTULO3 Diseo y la metodologa delos servicios de migracin Como cualquier proyecto de desarrollo de software, migracin de los proyectos requieren una planificacin cuidadosa y una buena metodologa para asegurar la ejecucin exitosa. Al migrar de una plataforma a otra base de datos una buena parte de la base de datos diseo puede llevarse adelante, especialmente el diseo de esquema de base de datos relacional para las Migraciones. Puede ser necesario hacer algunos cambios en el diseo y la arquitectura existente si desea aprovechar las nuevas funciones en la base de datos Oracle en favor de los antiguos mecanismos, tales como el uso de la particin de tablas de base de datos y Oracle Real Application Clusters (RAC) para soportar varias cargas de trabajo en lugar de mantener bases de datos diferentes en sincrona con las tecnologas de replicacin de base de datos. Por lo tanto, un cierto grado de racionalizacin es posible cuando la migracin a Oracle desde otras bases de datos, lo que se traduce en la consolidacin de muchas bases de datos y los esquemas de la base de datos de origen en unos esquemas en Oracle.Para habilitar este tipo de razonamientos y otras optimizaciones en el diseo de bases de datos, es esencial comprender una migracin tpica del ciclo de vida del proyecto y la importancia de cada fase. Hay muchos factores que afectan el xito de un proyecto de migracin, tales como la disponibilidad de personal capacitado, herramientas y tecnologas para la migracin, una comprensin de la base de datos de origen y destino de arquitecturas, y la planificacin de proyectos realistas. La identificacin de estos factores antes de embarcarse en un nuevo proyecto de migracin puede acelerar la ejecucin y ayudar a usted para crear soluciones eficaces a los desafos encontrados en el camino.Las opciones de migracinde todas las opciones para las migraciones de aplicaciones cliente/servidor en comparacin en la tabla 1.4 en el Captulo 1, la migracin de la base de datos es el ms comn, ya que permite a los usuarios migrar a nuevas plataformas de bases de datos de las aplicaciones, pero dejar intacta, sin cambios en la funcionalidad existente y las reglas de negocio, incluidos los idiomas en los que las aplicaciones fueron desarrollados originalmente. Este enfoque proporciona la ruta de migracin ms fcil a una nueva plataforma, y asegura la continuidad del negocio en el nuevo entorno, junto con menos trastornos. En los casos donde las aplicaciones se han vuelto muy difciles de mantener y actualizar con nuevas caractersticas para admitir los requisitos de negocio, son reescritos en nuevos idiomas que aprovechan las ltimas tecnologas y estndares. Tales migraciones convierten en completamente nuevos proyectos de desarrollo y diseo de software slo en lugar demigrar a la nube. DOI: 10.1016/B978-1-59749-647-6.00003-X 45Copyright 2012 Elsevier Inc. Todos los derechos reservados.46 Captulo 3 Diseo y la metodologa demigracin de plataforma esfuerzos. En los casos en que la empresa la funcionalidad proporcionada por la aplicacin es crtica para el negocio y el objetivo es hacer que la aplicacin sea accesible desde diversos canales (navegador, dispositivos mviles, etc.), la aplicacin normalmente se reajust para ejecutarse en un entorno que emula un servidor para permitir el acceso multicanal multicliente.Aplicaciones heredadas implementadas en mainframes IBM y otros derechos de propiedad y plataformas heredadas son generalmente reequipado para abrir y ejecutar en plataformas distribuidas utilizando software que puede simular entornos mainframe de IBM o que efectivamente pueden proporcionar las mismas capacidades en sus propios (por ejemplo, Oracle Tuxedo).Opcin de migracin que usted elija depender de sus necesidades de negocios y limitaciones (por ejemplo, tiempo, costo y factibilidad). La migracin es la opcin ms fcil al servicio Web a habilitar una aplicacin existente para que pueda interactuar con otras apli- caciones en la Web o con las aplicaciones implementadas en un entorno de nube. Por supuesto, este enfoque tambin exige que estas aplicaciones pueden modificarse para incorporar capacidades de servicios Web utilizando cualquiera de las soluciones de terceros o caractersticas nativas, sin requerir una modificacin significativa. Incluso si una aplicacin escrita en un lenguaje como Visual Basic o PowerBuilder no es capaz de acceder a otras aplicaciones a travs de la red, puede ser modificado para hacerlo. Tampoco es necesario para cada programa que incluya una solicitud para ser modificado. Slo los programas que proporcionan importantes servicios de negocio reutilizables deben ser identificados y modificados al servicio Web-enable. Las opciones de migracin como plataforma de base de datos de migraciones y replataformado aplicaciones desarrolladas sobre plataformas heredadas son muy populares porque son ms fciles de ejecutar y darse cuenta de los beneficios de tales migraciones rpidamente. Por otro lado, las opciones de migracin que impliquen una reescritura completa/rearchitecture de una aplicacin o el desarrollo de una nueva pieza de software tienen menos probabilidades de ser elegida debido a los costos y el tiempo involucrado en la ejecucin de dichos proyectos.ltimamente, han surgido nuevas tecnologas de bases de datos destinadas a proporcionar transparencia a las aplicaciones. Estas tecnologas bsicamente le permiten capturar llamadas a la base de datos emitidos por una aplicacin y luego traducirlas al instante para ejecutarlos contra la base de datos de destino. El objetivo de este enfoque es reducir significativamente la aplicacin cambia como resultado de las migraciones de base de datos. Sin embargo, las organizaciones necesitan una prueba exhaustiva de estas tecnologas para el rendimiento y la precisin de las instrucciones SQL convertido antes de desplegarlos en entornos de misin crtica.Algunos proveedores de bases de datos estn haciendo grandes demandas que, mediante estas tecnologas, las migraciones de base de datos se puede llevar a cabo en pocas semanas. Sin embargo, a partir de la experiencia de los autores, prueba solo requiere un esfuerzo considerable. Estas tecnologas emergentes, definitivamente tienen un papel en la reduccin del esfuerzo global de migracin en grandes proyectos de migracin mediante la reduccin de los cambios en la aplicacin debido a migraciones de bases de datos.Diseo y la metodologa demigracin, independientemente de la opcin elegida para su aplicacin, una metodologa de migracin de sonido y diseo debe estar en su lugar antes de embarcarse en un proyecto de esta ndole.Diseo y metodologa 47Figura 3.1Cascada metodologa de desarrollo de softwaremetodologas de desarrollo de software tradicional como cascada constan en las diferentes fases del proceso de recopilacin de requisitos, diseo, implementacin, pruebas y mantenimiento, como se ilustra en la Figura 3.1.La metodologa en cascada puede ser aplicado a los proyectos de migracin, pero a veces la fase de recopilacin de requisitos es reemplazado con una fase de evaluacin. Por ejemplo, para las Migraciones, con plena participacin de reescribir o transformacin significativa para las aplicaciones existentes, la fase de recopilacin de requisitos es aplicable. En los proyectos en los que slo las plataformas de base de datos estn siendo consideradas para la migracin, no hay necesidad de reunir los requisitos de negocio de nuevo, ya que las aplicaciones existentes ya tienen todas las reglas de negocio y los requisitos de cuidado. As, en lugar de la recopilacin de requisitos, la fase de evaluacin se utiliza para comprender el entorno existente y determinar la mejor manera de migrar a un nuevo entorno. A diferencia de la metodologa en cascada, fases de un ciclo de vida de migracin puede llevarse a cabo en paralelo (por ejemplo, unidad/pruebas funcionales de los componentes de aplicaciones y bases de datos como y cuando se migran).Asimismo, las pruebas de rendimiento de algunos componentes puede realizarse antes de la aplicacin o la migracin de la base de datos est completa.Migracin de una base de datos a otra plataforma requiere algunas modificaciones a las aplicaciones existentes, debido a las diferencias tcnicas entre las distintas bases de datos. La figura 3.2 ilustra un ciclo de vida tpico de la migracin.Echemos una mirada en profundidad a cada fase del ciclo de vida de un proyecto de migracin.Evaluacin dela fase de evaluacin es similar a la fase de recopilacin de requisitos de la cascada Mtodo para el desarrollo de software. En lugar de reunir los requisitos comerciales48 Captulo 3 Metodologa y DiseoGrfico 3.2una migracin tpica del ciclo de vida del proyectodesde una perspectiva de desarrollo de software, sin embargo, debe recopilar informacin per- tencin a la gestin de proyectos (que se encargar de gestionar el proyecto, y cmo), el coste potencial de la migracin, la migracin enfoques, herramientas a utilizar, y as sucesivamente. En esta fase, un inventario detallado de la cartera de aplicaciones es creada para evaluar el impacto de la migracin de la plataforma de base de datos sobre el ecosistema de TI, incluyendo otras aplicaciones, Integration Services, Reporting, y los procesos de backup y recuperacin.Para realizar una evaluacin a fondo, los siguientes temas son de inters en esta fase: Controladores para las Migraciones (retos, requisitos) es muy importante para entender los impulsores de un esfuerzo de migracin. Por ejemplo, si el cliente de licencias de tecnologas anteriores estn a punto de caducar, su necesidad de migrar a una nueva plataforma es urgente. La expiracin de apoyo oficial y la extensin del apoyo de una plataforma de base de datos existente puede ser muy caro para los clientes, de modo que deben migrar rpidamente, pero no es necesario transformar sus aplicaciones, por lo que preferira que muy pocos cambios en sus aplicaciones como resultado de la migracin. Inventario del entorno actual creando un inventario detallado de la actual cartera de aplicaciones realmente ayuda en condiciones de comprender el alcance de un esfuerzo de migracin. Esto incluye recopilar informacin sobre el nmero de programas, secuencias de comandos y las interfaces externas implicadas. Tambin incluye informacin de configuracin de hardware y software, incluyendo versiones de sistema operativo, base de datos de versiones, las caractersticas/funcionalidades en uso, e informacin similar.Diseo y metodologa 49 Herramientas/Opciones de migracin no es raro para probar diferentes tecnologas y herramientas de migracin para evaluar su eficacia y precisin. Un alto nivel de auto- macin junto con precisin en la migracin puede resultar en menos tiempo en la migracin y las pruebas. Muchos clientes efectan pequeas pruebas de concepto para tratar los proyectos de migracin de diferentes opciones, tales como emulacin wrapper o tecnologas, que permiten a las aplicaciones comunicarse con una base de datos diferente sin requerir cambios en el cdigo de la aplicacin. Esto puede reducir el esfuerzo de migracin global en los casos en que la aplicacin es simple y no tiene requisitos de rendimiento ms exigentes.Advertenciaelegir siempre una herramienta de migracin o el proveedor que ha sido probada y no pretende apoyar la migracin de cualquier lenguaje de programacin o una base de datos sobre la marcha. En casi todos los casos, cuando los proveedores gastan una cantidad considerable de tiempo, mejorar sus herramientas en lugar de per- formando las migraciones, algunas modificaciones a las herramientas es esencial para abordar casos fringe de lenguaje de programacin o una base de datos Uso de funciones que no se pueden convertir automticamente.Establecer criterios de xito verificable para estas herramientas de migracin y/o proveedores, de modo que las posibilidades de fracaso son reducidos durante la ejecucin del proyecto de migracin. proveedor de servicios de migracin de las empresas suelen evaluar al menos un par de proveedores de servicios de migracin si no tienen habilidades de migracin y personal en casa.En muchos casos, los proveedores de servicios de migracin de utilizar sus propias herramientas para realizar una evaluacin detallada y migracin. La migracin estimacin de esfuerzo Este es generalmente proporcionado por el proveedor de servicios de migracin o proveedor de bases de datos y es la ms comn de las empresas solicitar informacin al considerar un proyecto de migracin. Hemos discutido cmo estimar el esfuerzo de migracin en detalle en el Captulo 2. Como hemos sealado, la estimacin depende de factores tales como el tamao de la aplicacin y la base de datos, componentes y factores de la complejidad de la base de datos, entre otros. Requisitos de capacitacin necesidades de capacitacin para el personal de TI existente en la nueva plataforma de base de datos necesitan ser evaluados para asegurar que pueden apoyar el nuevo entorno y puede participar eficazmente en el proceso de migracin, si es necesario.Por lo tanto, es importante identificar programas adecuados de capacitacin para el personal de TI basados en sus roles en la organizacin. La mayora de programas comunes de formacin recomendado para administradores de bases de datos y desarrolladores que son nuevos a la base de datos Oracle son: Introduccin a la base de datos Oracle SQL, PL/SQL de Oracle Desarrollo de aplicaciones Administracin de Base de datos Oracle Oracle Database Performance Tuning de latransferencia de conocimientos tambin puede tener lugar desde el equipo del proyecto de migracin a la administracin y a los equipos de desarrollo que ser responsable de mantener el nuevo sistema en el futuro.50 Captulo 3 Metodologa y diseo que las necesidades de recursos de la base de datos de destino de los requisitos para la implementacin de la nueva base de datos medio ambiente tambin necesita ser evaluada. Esta evaluacin debera incluir funciones y caractersticas de la base de datos crticos, as como un software adicional que puede ser necesaria para apoyar el proceso de migracin y mantener la migracin despus de que se haya desplegado. Estos recursos normalmente incluyen hardware, almacenamiento y software de Oracle, incluyendo Oracle Database y Oracle SQL Developer y, opcionalmente, Oracle GoldenGate. Para la virtualizacin en un entorno de nube, el software Oracle VM pueden tambin ser utilizados. necesidades de recursos para el proyecto de migracin recursos como el hardware y software necesarios para realizar las tareas de migracin tambin necesitan ser identificados. Las organizaciones deben adquirir nuevo hardware y software para apoyar el proyecto de migracin, o pueden provisionar estos recursos desde un proveedor de servicios en nube (Infraestructura como servicio (IaaS) y Plataforma como servicio (PaaS).Tiempo suficiente se debe asignar para esta fase para tener una completa y media- ingful evaluacin del proceso de migracin. No es raro ver a grandes organizaciones de TI con decenas de bases de datos para migrar el gasto de ocho a 12 semanas por formando una evaluacin completa. Al realizar las evaluaciones en profundidad para ayudar en los proyectos de migracin, los integradores de sistema que utilizan una variedad de herramientas que capturan cantidades de informacin exhaustiva de los sistemas de origen; esta informacin les ayuda a analizar las dependencias entre los distintos componentes de una aplicacin y la base de datos, as como la complejidad del esfuerzo de migracin. Estas herramientas analizan cada programa de aplicacin y cada lnea de cdigo en estos programas para pintar una imagen detallada. La informacin siguiente le ayuda a un integrador de sistemas evaluar el impacto de la migracin de la base de datos en las aplicaciones de una empresa: Programas de interactuar directamente con la base de datos, esto ayuda a los integradores de sistemas para identificar el nmero de programas que pueden requerir cambios a instrucciones SQL o cambios en las API especficas de la base de datos. Programas u otras aplicaciones que ejecutan operaciones directamente esta ayuda a los integradores de sistemas para identificar los programas que pueden verse afectados si hay algn cambio en el comportamiento transaccional de la base de datos de destino (Oracle), tales como: Los programas que tengan control de transacciones explcitas declaraciones en ellas (por ejemplo,Commit y Rollback). Normalmente, estos programas mantienen el control sobre la trans- accin inician. Programas que invocar un procedimiento almacenado para iniciar una transaccin, pero no tienen control sobre la transaccin. En este caso, el procedimiento almacenado mantiene control sobre una transaccin. Programas de esa cuestin explcita del lenguaje de manipulacin de datos (DML) (por ejemplo, INSERT/UPDATE/DELETE), pero no controlan la transaccin completa. En muchos casos, un programa de maestra inicia estos programas para ejecutar acciones trans- base de datos y devolver los resultados. programas o scripts que descargar datos desde o cargar datos en la base de datos de origen estos programas tendrn que ser eventualmente modificado para incluir lametodologa y 51cambios de diseo como el uso de la base de datos Oracle-utilidades especficas, comandos y parmetros asociados, as como los cambios a cualquier SQL incrustado. El nmero de secuencias de comandos de administracin de la base de datos de gestin o de la identificacin de dichos scripts el integrador del sistema ayuda a estimar el esfuerzo involucrado en la migracin de estos scripts por cualquiera de ellos o reescritura de eliminarlos completamente para utilizar herramientas especficas de Oracle como Oracle Enterprise Manager (OEM) para las tareas de administracin rutinarias y las tareas de supervisin. El tipo y nmero de interfaces externas todas estas interfaces necesitan ser analizadas ms a fondo para estimar el esfuerzo de migracin.Es mejor para capturar tanta informacin como sea posible en la etapa de evaluacin y analizarla para frustrar cualquier desafos tcnicos que puedan surgir durante la migracin. Esto tambin tiene la ventaja de construir una amplia documentacin en el largo plazo.Nota dela fase de evaluacin tiende a consistir en un ejercicio intenso durante el cual las decisiones cruciales que afectan el proyecto de migracin estn hechas. Las organizaciones a veces pasan meses en lugar de semanas de finalizar su eleccin de estrategia de migracin, herramientas, y el proveedor de servicios. Muchos proveedores de servicio ofrecen evaluacin en profundidad como un servicio pagado para realizar un inventario del entorno actual y la presentacin de informes sobre las interdependencias entre diferentes aplicaciones, anlisis de impacto, y de la caracterstica/funcionalidad de uso. Durante la fase de evaluacin, es bastante comn que las organi- zaciones para llevar a cabo proyectos piloto para demostrar que las elecciones que se han hecho van a ayudar a la organizacin a alcanzar su meta.Anlisis y Diseo dela fase de anlisis y diseo usualmente consiste en la determinacin de los detalles de implementacin sobre el destino de la base de datos (Oracle). Debido a las diferencias en la aplicacin de los tipos de datos, funciones y privilegios de seguridad, gestin de transacciones y cdigo SQL, es importante desarrollar un plan que aprovecha las caractersticas apropiadas y funcin- alities en la base de datos de Oracle. Tambin se deber tener cuidado para asegurar que las caractersticas seleccionadas no se traducen en un aumento en la aplicacin de cambios de cdigo o una disminucin en la calidad de los datos en trminos de truncamiento de datos elementos tales como dgitos o milisegundos de datos timestamp. Los siguientes son los temas ms importantes que necesitan ser abordados durante esta fase: diseo del esquema de base de datos es muy importante considerar cmo asignar el origen de esquema de base de datos de Oracle como esto puede afectar las aplicaciones e instrucciones SQL incrustado dentro de ella. Bases de datos difieren en cmo sus esquemas de base de datos, los usuarios y los objetos estn organizados. Muchas bases de datos admiten mltiples bases de datos bajo un motor de base de datos (que rigen los procesos). Debajo de cada base de datos, los objetos pueden ser organizados en trminos de los esquemas y los usuarios. Por otra parte, Oracle slo admite una base de datos por cada instancia (o motor) y permite la creacin de esquemas mltiples dentro de una base de datos. Esta diferencia en el diseo del esquema de la base de datos entre Oracle y52 Captulo 3 Metodologa de diseo yotras bases de datos puede resultar en una colisin de objetos en el esquema de la base de datos de destino como otras bases de datos permiten que los objetos con el mismo nombre pero con diferentes estructuras de existir con diferentes bases de datos. Como resultado, los nuevos esquemas que pueden necesitar ser creada en Oracle y las modificaciones adecuadas pueden necesitar que se llevarn a cabo en las aplicaciones para reflejar el nuevo diseo en el esquema de la base de datos Oracle. Convencin de nomenclatura de objetos de base de datos tres importantes cuestiones que normalmente surgen durante las migraciones de base de datos a la base de datos de Oracle con respecto a la convencin de nomenclatura de objetos de base de datos: Uso de palabras reservadas bases de datos difieren considerablemente en lo que ellos consideran las palabras reservadas (es decir, palabras que no pueden utilizarse como nombres de objetos o nombres de columnas en tablas de la base de datos). Esto es porque las bases de datos utilizan estas palabras internamente en su software de procesamiento de datos. Durante la migracin, es posible que algunas tablas de la base de datos y sus nombres de columna podra ejecutarse en esta restriccin en la base de datos de destino (Oracle). Muchas de las herramientas de migracin, incluyendo Oracle SQL Developer, proporcionar informacin sobre dicha posibilidad. Estas herramientas tambin pueden convertir los nombres de objetos, utilizando un determinado convenio, a un nombre aceptable en Oracle. Las restricciones de longitud de nombre de objeto Oracle tambin impone una restriccin adicional de 30 caracteres en trminos de la longitud de los nombres de objetos de base de datos. Algunas bases de datos, como Microsoft SQL Server, permiten nombres de objetos de hasta 128 caracteres de longitud. As, durante la migracin de una base de datos de Oracle, los nombres de objetos que violen esta restriccin debe ser tratado. Oracle SQL Developer Tool puede identificar esos casos y generar un informe que puede ayudar a los desarrolladores a mantener un seguimiento de las zonas donde este problema tendrn repercusin en la aplicacin. El uso de caracteres especiales en los nombres de objeto el uso de caracteres especiales como # como primer carcter para nombres de objetos en una base de datos de Oracle no est permitido; esto no es un problema en otras bases de datos. Como resultado, estos objetos tienen que ser cambiados de nombre en la base de datos de Oracle durante la conversin, lo que puede provocar cambios en las aplicaciones que acceden a esos objetos. Asignacin de tipo de datos todas las bases de datos son compatibles con una variedad de tipos de datos para manejar numrico, carcter, objeto de gran tamao, XML y datos de marca de tiempo. Tipos de datos disponible para la manipulacin numrica, carcter, y son en su mayora de datos timestamp estndar, pero difieren significativamente en trminos de lmites de longitud y precisin de datos permitidos. Los problemas ms comunes encontrados durante la migracin de la base de datos de Oracle son: La falta de un tipo de datos Booleano o tipo de datos BIT La base de datos de Oracle no tiene soporte para tipos de datos booleanos y tipos de datos de bit. As, mientras que la migracin a Oracle, estos tipos de datos se deben convertir a un solo dgito numrico o un tipo de datos de un solo carcter. La falta de tipos de datos patentadas, como TIMESTAMP en Sybase algunas bases de datos permiten la creacin de columnas en tablas especiales (p. ej., TIMESTAMP) que las actualizaciones de la base de datos y cuando un registro de la tabla se accede. La base de datos de Oracle no admite cualquiera de esos tipos de datos similar a lo que la base de datos Sybase ofrece en la forma de su tipo de datos TIMESTAMP.Diseo y metodologa 53 Comportamiento de bloqueo la mayora de bases de datos relacionales requieren bloqueo temporal de las filas de las tablas cuando un usuario accede a las filas como resultado de la ejecucin de la consulta de la base de datos (por ejemplo, seleccionar las declaraciones). Debido a este comportamiento, estas bases de datos pueden sufrir peridicamente de las extensiones de bloqueo cuando est bajo carga pesada. Sin embargo, Oracle no requieren bloqueo de filas cuando simplemente leyendo las filas. En lugar de ello, admite true el bloqueo a nivel de fila, y proporciona una vista coherente de lectura de datos. A lo largo de las mismas lneas, otras bases de datos tambin permiten la lectura de datos no confirmados (alias lecturas sucias). Esta funcin normalmente se lleva a cabo con la ayuda de un nivel de aislamiento en la base de datos, que se utiliza tradicionalmente para la lectura de datos de tablas sin bloquearlos. Oracle no admite esta funcin. Por lo tanto, las aplicaciones que utilizan esta caracterstica necesita ser evaluado cuidadosamente para implementar una solucin eficiente en Oracle. Uso de COMMIT/ROLLBACK en desencadenadores Oracle no permitir el uso de cualquier trans- accin sentencias de control como COMMIT/ROLLBACK en Desencadenadores. Algunas bases de datos, tales como Sybase, permiten un control parcial (commit o rollback) de instrucciones SQL que tambin se ejecutan en un desencadenador. Como tal, la migracin de una base de datos que admite este comportamiento a la base de datos Oracle requiere cambios en el cdigo de trigger.SQL Developer convierte automticamente estas declaraciones a trans- acciones autnomas donde corresponda, pero esto tambin puede tener un impacto sobre el conjunto de la trans- accin flujo de la aplicacin y, por lo tanto, se deben tomar las medidas adecuadas para solucionar el problema. El uso de cadenas de longitud cero (cadenas vacas) a diferencia de la mayora de bases de datos Oracle, apoyan el concepto de cadenas vacas que tienen una longitud de cero, pero no se consideranulo (es decir, desconocida). Por otra parte, Oracle no admite cadenas de longitud cero. En Oracle, si una columna no tiene ningn valor, se considera que tiene un valor nulo. As, cuando la migracin de aplicaciones a Oracle desde otra base de datos, es necesario convertir cualquier predicados que evaluar la columna de una tabla en una cadena de longitud cero para una comparacin con aNULL. En Oracle, hay una diferencia entre comparar una columna con un valor nulo y una cadena vaca y cmo el motor de base de datos resuelve dicha comparacin. Por ejemplo, la siguiente consulta no evaluarn toTRUE en Oracle y no devolver ninguna fila, incluso si hay una fila en latabla EMP donde theMGR columna no tiene ningn valor (es decir, una cadena de longitud cero). Observe el uso del predicado que involucra una cadena de longitud cero.Seleccione FROMEMP WHEREmgr = '';sin embargo, la siguiente instruccin SQL evaluar a condicin aTRUE en Oracle y devuelven filas. Observe el predicado que impliquen una evaluacin para theNULLvalor.Seleccione FROMEMP WHEREMGR es nulo; Casos de insensibilidad esta caracterstica en una base de datos permite que los datos se recuperan, independientemente de si los criterios de bsqueda que coincidan con los datos de la base de datos (por ejemplo, los datos de la base de datos puede estar en maysculas y los criterios de bsqueda pueden estar en minsculas o en maysculas y minsculas en letras). Obviamente, esta caracterstica se implementa para mejorar la experiencia del usuario. Bases de datos difieren en trminos de cmo se facilitan54 Captulo 3 Metodologa yesta caracterstica de diseo en una base de datos. Microsoft SQL Server permite la activacin de la sensibilidad a maysculas y minsculas estableciendo el parmetro intercalar en el nivel de base de datos o en el nivel de columna de una tabla. Cuando se establece este parmetro en el nivel de base de datos, todas las tablas apoyo case-insensitive bsquedas en ellos. En Oracle, esto puede lograrse de tres maneras.1. Configurar los parmetros relacionados con la ordenacin y evaluaciones computacionales en el nivel de instancia (en el archivo de configuracin spfile.ora). Los dos parmetros que controlan este comportamiento de Oracle son: NLS_sort=BINARY_CI (Valor predeterminado: binario) NLS_COMP=lingstico (Valor predeterminado: ANSI)2. Para activar esta caracterstica de Oracle en el nivel de sesin, los dos parmetros mencionados en el nivel de instancia de configuracin (es decir, andNLS theNLS_sort_parmetros Comp) puede establecerse en el nivel de sesin emitiendo los comandos siguientes en la base de datos Oracle usando una herramienta como SQL*Plus o alguna otra herramienta de desarrollo de bases de datos:alter session set NLS_SORT = 'BINARY_ci'; alter session set NLS_COMP = "lingstico";NotaPara ejecutar estos comandos el usuario de la base de datos necesita sesiones theALTER privilegio.3. En el nivel de consultas SQL, esta caracterstica puede ser activada mediante la adicin de clusulas apropiadas en la instruccin SQL. Por ejemplo:de scott.emp donde NLSSORT (''ENAME'','nls_sort=' 'BINARY_CI") =(NLSSORT('Miller','nls_sort=''BINARY_ci''')) SeleccioneSugerenciaPara garantizar un rendimiento ptimo de case-insensitive consultas que impliquen tablas con grandes volmenes de datos, es recomendable que los ndices tambin crearse en las columnas utilizadas para estas consultas, mediante clusula theNLS_Sort como se ilustra en la opcin 3 (es decir, la habilitacin al nivel de consulta). Se puede crear un ndice como sigue:ENAME CREATEINDEX_IDX EN SCOTT.EMP (NLSSORT (''ENAME'','nls_sort=''BINARY_ci'''));tambin es posible utilizar la funcin UPPER() o el NLS_UPPER() en las instrucciones SQL para convertir los datos obtenidos a partir de tablas, as como los identificadores de entrada enmaysculas. Como se discuti en la opcin 3, esto requerir la creacin de un ndice funcional de las columnas utilizadas para case-insensitive bsquedas y modificar las instrucciones SQL para incorporar estas funciones. Puede haber otros problemas de diseo especfico para la base de datos de origen en trminos de cmo una determinada caracterstica o funcionalidad ha sido explotada para facilitar un requisito especfico de negocios. Una cuidadosa consideracin y resolucin a lametodologa y el diseo 55estas cuestiones de diseo es esencial para conjurar cualquier obstculos potenciales durante la migracin y los esfuerzos posteriores a la migracin.MigracinLa cantidad de tiempo que se tarda en completar la migracin real de objetos y datos de una base de datos es relativamente menor que la cantidad de tiempo que tarda en completar una migracin general desde la evaluacin hasta la implementacin de produccin. Las migraciones de una base de datos relacional a otro son comparativamente ms fcil que las migraciones de un no- base de datos relacional para una base de datos relacional, porque la organizacin de objetos en una base de datos relacional es bastante similar en comparacin con los que no son de bases de datos relacionales, como las bases de datos de red y jerrquico. Todos los principales proveedores de bases de datos relacionales ofrecen herramientas que tambin proporcionan slidas funciones de migracin de manera automatizada. Independientemente del nivel de automatizacin y factor de xito de cualquier herramienta de migracin, sin embargo, a veces es necesaria la intervencin manual durante la migracin desde una base de datos a otra. La migracin de la base de datos tareas pueden dividirse en las siguientes categoras: el esquema de base de datos de migracin de datos migracin programa almacenado de la base de datos de migracin migracin de aplicaciones Administracin de la base de datos de secuencias de comandosde migracin migracin todas las tareas enumeradas, la tarea de migracin de aplicaciones requiere el mayor esfuerzo manual, aunque las nuevas herramientas y tecnologas estn siendo desarrolladas para facilitar esta tarea. Trataremos de esquema de base de datos y tareas de migracin de datos migracin en ms detalle en el Captulo 5, y vamos a discutir la migracin de aplicaciones en detalle en el Captulo 8.En este captulo nos centraremos en las mejores prcticas para la ejecucin de estas tareas.Esquema de la base de datos deesquema de la base de datos de migracin migracin migracin consiste esencialmente en tablas, ndices y vistas de una base de datos. Las bases de datos relacionales son similares en trminos de cmo los datos se organizan en tablas e ndices, pero son diferentes en trminos de extensiones adicionales a estas tablas e ndices que estn diseados para mejorar el rendimiento y facilitar el desa- rrollo. La mayora de herramientas de migracin puede convertir el esquema de la base de datos relativamente rpidamente y con precisin. Los esquemas de base de datos especfico del destino puede ser generada a partir de las herramientas de modelado como Erwin. Estas son las cosas ms importantes a considerar durante el esquema de la base de datos de migracin: Asegurar la integridad del esquema es necesario asegurarse de que todos los objetos de la base de datos de origen se han migrado a la base de datos de destino. Es muy comn tener varios esquemas y bases de datos en apoyo de una aplicacin.Tener dependencias circulares entre varios esquemas y bases de datos puede generar errores durante la creacin del esquema de la base de datos de destino, ya que algunas de estas dependencias no puede existir cuando un esquema en particular se va a migrar. Tras56 Captulo 3 Metodologa de diseo ycreacin de todos los esquemas en Oracle, todos los objetos que estn marcados como no vlidos que necesitan ser recompilados y verificado para asegurarse de que se han migrado correctamente. tablas con funciones del sistema como valor predeterminado de clusulas sobre columnas muchas bases de datos son compatibles con las funciones del sistema como el valor predeterminado de clusulas sobre las columnas de la tabla. En casi todos los casos, estas funciones del sistema no existe en la base de datos de Oracle. Como resultado, algunas tablas no puede ser creado en Oracle, haciendo otros objetos dependientes no vlido. Se recomienda analizar el registro resultante de la tarea de creacin de esquema y aislar y corregir tales errores. La utilizacin de ndices agrupados ndices agrupados en bases de datos como Sybase permiten el almacenamiento de datos en una manera ordenada fsicamente para que coincida con el orden lgico (index). A medida que se agreguen datos, se clasifican y se almacenan en el orden definido por el ndice agrupado.Esto ayuda a reducir el tiempo que se tarda en devolver los datos ordenados y para recuperar datos por co-Ubicar el ndice as como los datos reales en el mismo objeto. La base de datos de Oracle proporciona una funcionalidad similar con ndice de tablas (IOTs organizada). En IOTs, las columnas de clave principal y la clave no se almacenan datos en el mismo objeto.Esto ayuda a los usuarios a evitar tener que buscar datos en tablas por separado, despus de bsquedas de ndice, al ejecutar una consulta en Oracle. Creacin de usuarios de la base de datos y la funcin de la base de datos apropiada asignacin de roles y privilegios de los objetos deben ser asignados a los usuarios. A nivel de objeto y de esquema privi- leges pueden agruparse en roles y asignan a los usuarios segn sea necesario. Crear roles y otorgarles a los usuarios puede ayudar en la gestin de numerosos privilegios a nivel de objeto. El cambio de nombres de objeto cualquier cambios en los nombres de objeto de base de datos debido a restricciones en la base de datos, como se discuti en el "Anlisis y Diseo" de este captulo, deben ser identificadas y compartidas con todos los miembros del equipo para que puedan realizar los cambios adecuados en sus aplicaciones u otros componentes de la base de datos. Particionamiento de tablas de base de datos Oracle permite grandes tablas de dividirse en segmentos ms pequeos para una facilidad de gestin y para el mejor desempeo debido a la consulta de la base de datos del Optimizador de capacidad para podar las particiones durante la ejecucin de la consulta, resultando en una reduccin en el importe global de los datos escaneados. Basndonos en el volumen de datos, el rendimiento y los requisitos de facilidad de administracin, algunas tablas pueden ser elegidos para el particionado. Aunque muchas de las bases de datos relacionales mesa de apoyo parti- cionado, implementan esta caracterstica de forma diferente en trminos de los mtodos permitidos para el particionamiento, tales como la gama, hash, y compuestas de particionamiento. Herramientas de migracin generalmente no migrar de particionamiento informacin relacionada al migrar la base de datos de esquemas. Por lo tanto, es importante considerar una adecuada estrategia de particin de esquema en Oracle tras la migracin y antes de la migracin de datos.Migracin de datosdespus de la migracin, el esquema de la base de datos algunos datos representativos de la base de datos de origen se migran a la base de datos de destino para permitir las pruebas y asegurar que los scripts de migracin de datos o herramientas elegidas para la tarea estn configurados correctamente. El enfoque ms comn para la migracin de datos es, sin duda, el uso de secuencias de comandos que se ejecutan las utilidades de base de datos para exportar datos de la base de datos de origen y destino de importar en la base de datos (Oracle), porque son fciles de usar y son gratis.Diseo y metodologa 57independientemente de las herramientas y scripts que se utilizan para realizar la migracin de datos, migraciones de bases de datos muy grandes requieren un proceso de planeacin. Cuando la migracin de bases de datos muy grandes (aquellos con al menos unos pocos terabytes de datos) es importante tener derecho la estrategia de migracin de datos, tiene las herramientas adecuadas, y, lo que es ms importante, utilice las caractersticas de base de datos apropiado como particin y compresin. Migracin de bases de datos de gran tamao est plagado de retos, entre ellos una estrecha ventana de tiempo y la falta de recursos del sistema (por ejemplo, reas de almacenamiento para archivos de datos). Las siguientes estrategias de carga y extraccin de datos puede optimizar la extraccin de datos, la transferencia y la carga de procesos: Paralelamente la extraccin de datos de la base de datos de origen Carga de datos en la base de datos de destino en paralelo Utilizando procesos multiproceso para la carga de datos ndice de evitacin de mantenimiento durante el proceso de carga de datos Reduccin de operaciones de E/S y uso de zonas de ensayo a travs de canalizaciones con nombre para la transferencia de datos entre bases de datos de origen y destino dela migracin de datos tarea es menos tiempo que la migracin de la base de datos y pruebas de programas almacenados y migracin de aplicaciones. Las tareas de migracin de datos se pueden clasificar en los siguientes tres modos: Migracin de datos sin conexin, como el nombre implica, los datos en este modo es migrado en un modo desconectado o sin conexin (es decir, los datos de la base de datos de origen se extrae en archivos planos y luego se cargan en la base de datos de destino utilizando las herramientas nativas y scripts). Porque la extraccin y de la carga de procesos estn desconectados uno del otro, los usuarios pueden cargar datos cuando tienen algn tiempo de inactividad en la base de datos, o durante las horas no pico. Normalmente, esto se consigue utilizando las herramientas nativas y scripts suministrados por los proveedores de bases de datos (por ejemplo, Oracle SQL*Loader desde Oracle, y Cargar/descargar utilidades proporcionadas por la base de datos IBM DB2). Migracin de datos migracin de datos online en este modo requiere la conexin a las bases de datos de origen y destino utilizando JDBC (Java Database Connectivity) u Open Database Connectivity (ODBC) o base de datos de drivers, gateways, y luego migrar entre ellos. Como el nombre sugiere, durante la migracin de datos, ambas bases de datos tienen que estar disponibles para las conexiones y la conectividad de red entre los dos es obligatorio. Generalmente, este modo se utiliza para pequeas bases de datos con cargas de trabajo que no son muy pesados. Desde la migracin de datos en este modo puede generar una carga adicional en el sistema de origen (CPU, memoria, E/S de operaciones) y, por lo tanto, influye de apli- cacin del rendimiento, generalmente no es recomendado para grandes bases de datos o bases de datos muy usada. Captura de datos modificados (CDC) CDC implica el seguimiento de los cambios que ocurren en la base de datos de origen y luego peridicamente replicando los cambios a la base de datos de destino. Este es un mtodo muy til para migrar bases de datos muy grandes con poco o ningn tiempo de inactividad disponibilidad. El CDC se puede aplicar de dos maneras: Mediante la minera de registro Esta es la tcnica ms utilizada para la implemen- tacin de los CDC. La minera consiste en leer el registro online o archivado de los registros de transacciones de bases de datos y extraer de ellos las transacciones como son58 Captulo 3 Metodologa y diseoejecutado. Despus de que los cambios son capturados desde la fuente, o bien son almacenados en un archivo intermedio para ser transmitidos posteriormente a la base de datos de destino, o inmediatamente transferido y aplicado a la base de datos de destino. Este mtodo es muy popular porque introduce menos sobrecarga en el sistema de origen en trminos de impacto en el rendimiento de las bases de datos y aplicaciones, y es fcil de configurar y utilizar. Uso de desencadenadores con este mtodo, los desencadenadores son implementados en la base de datos de origen para capturar los cambios y escribirlos en una tabla provisional; los cambios se replicarn en la base de datos de destino. Crear nuevos desencadenadores en tablas de la base de datos de origen es un proceso engorroso que est llena de desafos. Adems, este mtodo afecta significativamente el rendimiento del sistema de origen, y, como tal, no es el mtodo ms popular para la captura de datos modificados.Oracle ofrece una variedad de herramientas que soportan todas las tareas de migracin de datos hemos dis- deca groseras. Tambin ofrece ricas caractersticas y productos que pueden optimizar la carga, organizacin y recuperacin de datos de la base de datos. El cuadro 3.1 ilustra diversos productos Oracle y tecnologas que pueden utilizarse para tareas de migracin de datos, segn corresponda.Captulo 4 ahonde en cada uno de los productos mencionados en la tabla. En grandes proyectos de migracin, una combinacin de los productos mencionados en el cuadro 3.1 puede ser aprovechada.Base de datos de migracin de programa almacenadola tarea de migrar la base de datos incluye la migracin de los programas almacenados Procedimientos almacenados, desencadenadores y opiniones que, en muchas bases de datos relacionales, se utilizan para implementar la lgica de negocio crticos. En las bases de datos como Microsoft SQL Server y Sybase, procedimientos almacenados y desencadenadores son ampliamente usados por los desarrolladores para admitir funciones simples (por ejemplo, las operaciones CRUD permite crear, leer, actualizar y eliminar).Sin embargo, usar procedimientos almacenados exclusivamente para operaciones CRUD puede resultar en laTabla 3.1 Las ofertas de Oracle para diversas tareas de migracin de datosMtodo de migracin de datosmigracin de datos sin conexin ofertas de Oracle Oracle SQL*Loader Utility, Oracle tabla externa de funciones de base de datos Oracle SQL Developer y Oracle Data Integrator pueden generar los scripts para realizar la extraccin de datos sin conexin y carga.Migracin de datos online Oracle SQL Developer, Oracle Data Integrator, Oracle Database gateways cambi la captura de datos Oracle GoldenGate y Oracle Data Integrator (para DB2/ (utiliza log minera) 400, Oracle) cambi la captura de datos Oracle Data Integrator (para la mayora de las bases de datos) (Utilizacin de disparadores)metodologa y diseo 59inflexibilidad porque el tipo de operacin contra una tabla est limitado por la funcionalidad implementada en el procedimiento almacenado.Las principales tareas asociadas con la migracin de programas almacenados son: limpieza y optimizacin del cdigo Oracle SQL Developer y otras herramientas de migracin migracin de apoyo de programas almacenados muy bien. Sin embargo, es recomendado que pruebe estos convierten los procedimientos almacenados y disparadores para la precisin y eficiencia del cdigo convertido. Los desarrolladores pueden aplicar un simple requisito de negocio de muchas maneras, haciendo ms difcil para herramientas para optimizar todas estas tcnicas de codificacin en el cdigo convertido. Los procedimientos almacenados y funciones con cientos de lneas de cdigo o ms debe ser verificado y probado para la eficiencia en trminos de uso de funciones de base de datos optimizada, as como prcticas de codificacin. Tratamiento de errores en procedimientos almacenados y disparadores para aplicaciones que dependen en gran medida de los procedimientos almacenados y desencadenadores, es muy comn ver a anidar llamadas a procedimientos almacenados. Migraciones automatizadas pueden no ser capaces de manejar el control de errores para anidar la invocacin del procedimiento almacenado. Por lo tanto, es necesario prestar especial atencin a la gestin de errores, especialmente para las invocaciones a procedimientos almacenados anidados. Uso de tablas temporales extensamente Algunos programadores de bases de datos utilizar tablas temporales extensamente para simplificar las consultas y evitar escribir una consulta compleja que involucra varias tablas. Las primeras versiones de algunas bases de datos tambin haba restricciones en el nmero de tablas que podran unirse en una consulta de manera eficiente. Por lo tanto, migrar procedimientos almacenados con un montn de tablas temporales amerita una mirada ms cercana para que puedan ser evitados y puede resultar en el cdigo simplificado que aprovecha las caractersticas nativas de una base de datos de Oracle. Normalmente, las herramientas de migracin mantener un uno-a-una asignacin de tablas temporales durante la migracin de una base de datos a otra. Pero importante de los procedimientos almacenados que se ejecuta muy a menudo y tienen requisitos de rendimiento exigente debe ser examinada cuidadosamente para elimi- nate tablas temporales innecesarios en el nuevo entorno. Las funciones de conversin de procedimientos almacenados en la base de datos de Oracle no admite la devolucin de los resultados a los llamantes utilizando el verbo en procedimientos almacenados.Este verbo slo est permitida en Oracle funciones almacenadas y no en procedimientos almacenados.Sin embargo, es muy comn encontrar Sybase y procedimientos almacenados de Microsoft SQL Server utilizando el parmetro de salida as como el verbo de retorno para pasar valores y datos de la persona que llama. Convertir estos procedimientos almacenados en funciones en Oracle tambin resultados en una firma llamada diferente (es decir, la sintaxis para ejecutar un procedi- miento almacenado versus la ejecucin de una funcin almacenada es diferente porque funciones almacenadas en Oracle debe devolver un valor). Determinar el impacto de los procedimientos almacenados devolver conjuntos de resultados en aplicaciones Java (JDBC) la base de datos Oracle devuelve el resultado al llamador programas conjuntos a travs de variables definidas explcitamente en procedimientos almacenados. Sin embargo, otras bases de datos devuelven varios conjuntos de resultados de manera implcita, sin tener que declarar variables para hacerlo. Esto se traduce en cambios adicionales a los programas Java al migrar a60 Captulo 3 Diseo y la metodologa deOracle, tales como la declaracin de variables adicionales, enlace y acceso explcito de estas variables para los datos del conjunto de resultados. Trataremos este tema con ms detalle en el Captulo 7.Migracin de aplicaciones demigracin o portabilidad de aplicaciones puede ser el resultado de cualquiera de migrar una aplicacin de un entorno a otro debido a una reescritura completa, o simplemente desde una plataforma de base de datos subyacente que se va a migrar a una nueva plataforma, como Oracle. Normalmente, el desarrollo de la aplicacin se divide en dos categoras: Desarrollo de aplicaciones personalizadas en esta categora, las aplicaciones se desarrollan generalmente en casa, las organizaciones de TI, para apoyar las funciones de negocio.Estas aplicaciones casi siempre intentamos aprovechar todas las caractersticas nativas de la plataforma de base de datos, as como otros sistemas TI en la organizacin, para impulsar el mximo rendimiento y una mejor integracin. Como resultado, las aplicaciones tienden a ser muy dependientes de la plataforma de base de datos en la que inicialmente fueron desple- gado. Como consecuencia, cualquier cambio en la plataforma de base de datos puede resultar en cambios en las aplicaciones. Caractersticas y funcionalidades aprovechada por estas aplicaciones tambin dependen del conjunto de habilidades del programador. Los desarrolladores tratan de utilizar las caractersticas se sientan ms cmodos. Una vez que una aplicacin se convierte en obsoletos debido a la falta de los conocimientos necesarios para mantener sus caractersticas, o debido a la aplicacin volviendo demasiado quebradizos para aadir nuevas funciones, la aplicacin se migra a un nuevo entorno. Desarrollo de aplicaciones genricas (o aplicaciones empaquetadas) Normalmente, esta categora se aplica a los proveedores de software independientes (ISV). Los ISV desarrollar software de aplicacin genrica que abastece a una industria en particular o de un mercado vertical. Tambin tienden a desarrollar aplicaciones que no dependen en gran medida de la base de datos. De hecho, los principales ISV ofrecen versiones de aplicaciones basadas en una plataforma de base de datos determinado. La migracin de una aplicacin empaquetada en una sola base de datos a otro implica la instalacin y configuracin de la nueva versin de la aplicacin empaquetada e importar los datos y todas las personalizaciones de la aplicacin original.Esto no es una tarea trivial, porque pruebas exhaustivas que se debe hacer despus de la migracin. A partir de tiempo al tiempo, los proveedores de software independientes estn obligados a aadir soporte para nuevas bases de datos para su software de aplicacin debido a la demanda de los clientes. Tambin estn bajo presin para mantener una sola o pocas codebases como sea posible para reducir el esfuerzo que supone gestionar varios codebases, cada uno de los cuales atiende a una base de datos diferente, porque esto significa que si se tienen que implementar una nueva caracterstica, tendrn que modificar toda la aplicacin codebases de manera similar y garantizar la coherencia entre ellos.Desde una perspectiva de migracin, aplicaciones personalizadas siempre estn migrados a nuevas plataformas de base de datos completamente, porque no hay ninguna necesidad de apoyo tanto a las viejas y nuevas plataformas de base de datos en el largo plazo. Estas aplicaciones pueden ser cambiados para aprovechar plenamente las ventajas de la nueva plataforma de base de datos. Pero los ISV necesidad de apoyar a todas las plataformas de base de datos existente, incluso a medida que aada soporte para bases de datos nuevas. As, para eldiseo y la metodologa de 61 deellos, se convierte en un esfuerzo de portabilidad porque son simplemente agregar ms cdigo a una aplicacin existente, de modo que tambin funcionar con la nueva base de datos. Los ISV intentar reducir el software de aplicacin codebase mediante prcticas de codificacin condicional como ramas condicionales a una parte de cdigo distinta dependiendo de la plataforma de base de datos en el que se implementa. Muy grande de ERP (enterprise resource planning) software paquetes suelen tener codebases separada para cada base de datos.Como ya hemos mencionado, cuando debatamos sobre la fase de la evaluacin de la migracin, la comprensin de los efectos de la migracin sobre las aplicaciones de la plataforma de base de datos es muy importante. Aplicaciones dependen de la plataforma de base de datos de muchas maneras: informacin de conexin especfica de la base de datos todas las bases de datos requiere cierta informacin para establecer una conexin con l. En el caso de cambios en las bases de datos, esta informacin tiene que ser actualizado en las aplicaciones que se conectan a una base de datos especfica. Si cada uno de los programas en una aplicacin se conecta directamente a la base de datos, en lugar de depender de una capa de acceso a la base de datos central, de lo contrario esta tarea trivial se convierte en un desafo. Esta tarea se puede automatizar mediante el uso de secuencias de comandos del sistema operativo para buscar y reemplazar cadenas de conexin adecuada en programas de aplicacin. El uso de parmetros especficos de la base de datos de controladores ODBC/JDBC para la base de datos de proveedores tienen diferentes parmetros para admitir diferentes requisitos, tales como el control de la transaccin, la fecha/timestamp formatos, y as sucesivamente. El controlador JDBC de Oracle, de forma predeterminada, se activa la confirmacin automtica en una conexin. Esto podra crear problemas, especialmente cuando se llama a un procedimiento almacenado en la base de datos de Oracle, que aprovecha las tablas temporales globales. Habiendo establecido theAUTOCOMMIT por defecto, los datos de las tablas temporales se eliminan despus de cualquier instruccin de manipulacin de datos (INSERT,DELETE orUPDATE). Para evitar este escenario,la confirmacin automtica para una conexin JDBC debe ser explcitamente desactivado. Por ejemplo:Conn.setAutoCommit(false); el uso de bases de datos especficas instrucciones SQL con la base de datos de instrucciones SQL especficas con extensiones patentadas requiere cambios cuando la base de datos los cambios de plataforma. Es un gran reto para identificar cmo muchos programas de aplicacin necesitan ser cambiados debido a su uso de instrucciones SQL que no se ajustan a la American National Standards Institute (ANSI) SQL estndares o que no son compatibles con la base de datos de Oracle. En la fase de evaluacin, hay un gran nfasis en la identificacin de esos programas y de su base de datos inter- acciones en general (es decir, llamar a procedimientos almacenados, resultado el procesamiento, el uso de SQL incrustadas, etc.). invocar procedimientos almacenados de la base de datos y funciones que devuelven conjuntos de resultados aplicaciones utilizando OLEDB/ODBC Drivers generalmente no necesitan ser modificados cuando se migran a la base de datos Oracle. Sin embargo, a partir de la ltima versin de Oracle Database 11g R2 (11.2.0.1), las aplicaciones Java utilizando el controlador JDBC de Oracle invocar procedimientos almacenados devolver conjuntos de resultados de la base de datos necesita ser modificado para dar cabida a los requisitos especficos de Oracle en trminos de62 Captulo 3 Metodologa y diseoincluyendo variables bind para conjuntos de resultados, el procesamiento de varios conjuntos de resultados, y una funcionalidad similar. Esperamos que estos cambios no sern necesarios en futuras versiones de la base de datos Oracle. API para la manipulacin de objetos grandes, hay diferencias en la API de JDBC se utiliza para manipular objetos grandes en Oracle en comparacin con bases de datos como Informix.Administracin de la base de datos de migracin de scriptes comn utilizar scripts para automatizar las tareas de administracin de bases de datos generales.Los administradores de bases de datos el amor para desarrollar sus propios scripts para administrar bases de datos.Sin embargo, el uso de scripts para administrar las bases de datos pueden complicar las cosas porque cuando guionistas dejar una organizacin, los nuevos administradores no tienen pleno conocimiento de cmo usar los scripts de manera efectiva. Los scripts que se utilizan para supervisar el rendimiento, y tareas de administracin de bases de datos tales como usuario de mantenimiento- nance, objeto de mantenimiento, y el mantenimiento de la base de datos, no es necesario migrar a Oracle debido a la disponibilidad de los OEM, que pueden administrar y controlar bases de datos, servidores de aplicaciones y el almacenamiento desde una consola central. Los scripts que se utilizan para extraer o cargar datos como parte de los procesos por lotes ejecutados desde los planificadores de tareas pueden necesitar ser migrado a hacer uso de utilidades de Oracle (por ejemplo, SQL*Loader, Bomba de datos, etc.) para realizar funciones similares. Oracle proporciona un rico conjunto de herramientas para gestionar estos processesdamong ellos Oracle Data Integrator (ODI) y Oracle Warehouse Builder (OWB)dwhich no necesitan mucha codificacin. Sin embargo, los scripts aprovechando las utilidades de base de datos nativo para carga/descarga de datos necesitan ser portado a usar Oracle Database utilities en su lugar.PruebasPruebas de esfuerzo involucrados en la aplicacin y la base de datos despus de la migracin suele ser el mayor contribuyente para el esfuerzo de migracin. Las pruebas en un proyecto de migracin generalmente incluye tareas tales como la verificacin de datos, pruebas de lgica empresarial migrado en procedimientos almacenados, funciones y desencadenadores, las pruebas de interaccin de la aplicacin con las nuevas plataformas de base de datos, y prueba de los scripts de mantenimiento de base de datos. Algunas de estas tareas se pueden realizar fcilmente con la ayuda de herramientas automatizadas o relativamente simple de secuencias de comandos. Pero algunas tareas, tales como la prueba de los objetos de la base de datos con la lgica de negocios, puede ser engorroso debido a la falta de herramientas de pruebas automatizadas. Adems, las secuencias de comandos que estn actualmente en uso en el entorno fuente necesitan ser adaptados al nuevo ambiente primero, y tambin necesitan ser probados.Echemos un vistazo a las diferentes herramientas y estrategias que se utilizan para cada una de estas tareas: La forma ms sencilla de verificacin de datos para garantizar que los datos migrados desde una base de datos de Oracle es exacta es vigilar de cerca el proceso de migracin de datos y asegurarse de que no se presentan errores durante el proceso. Incluso si las herramientas de migracin no informar de errores, cuestiones tales como el truncamiento de los valores decimales y lametodologa y el diseo decaracteres de 63 campos de datos puede resultar debido al inapropiado el tamao de las columnas de la base de datos de destino. Migracin de datos Unicode tambin necesita atencin. GoldenGate Veridata de Oracle puede ser utilizado para realizar comparaciones lado a lado de los datos entre dos bases de datos; sin embargo, admite slo una pocas bases de datos (SQL Server, Oracle, Teradata, HP y HP Enscribe SQL/MP). Ms informacin acerca de Oracle GoldenGate Veridata www.oracle.com/us/products/middleware/data-integration/059246 est disponible en .html. Generalmente, los integradores de sistemas tienen sus propios conjuntos de herramientas que pueden ayudar conel proceso de verificacin de datos. Prueba de los procedimientos almacenados y funciones de base de datos generalmente estos objetos son probados en la unidad mientras se migran para precisin sintctico y semntico.Sin embargo, despus de la migracin de una base de datos entera, es necesario probar la inter- las dependencias entre los diferentes objetos de la base de datos. Oracle SQL Developer proporciona funciones para la unidad-prueba de un procedimiento almacenado y/o funcin. Sin embargo, a veces es muy difcil llegar a todas las posibles combinaciones de valores de parmetro que procedimientos almacenados o funciones pueden aceptar. Por lo tanto, despus de todos los casos de prueba adecuadamente documentada y escrita puede ayudar significativamente en las pruebas de esfuerzo. Pruebas de aplicacin en la mayora de las organizaciones, las pruebas de aplicaciones personalizadas desarrolladas in-house es realizado por los usuarios que trabajan en su camino a travs de las interfaces de usuario basadas en forma manual documentado casos de prueba. Los ISV, por otro lado, suelen tener prueba automatizada suites disponibles para probar aplicaciones completas. Herramientas de prueba tales como Oracle Application Testing Suite (avena) puede ser usada para pruebas de carga y funcionales de las aplicaciones para la escalabilidad y el rendimiento, ya que puede ayudar en la construccin de casos de prueba desde cero, especialmente para aplicaciones Web. La avena puede grabar todas las interacciones que tienen lugar a travs de las aplicaciones Web y reproducirlos para probar el modo en que la aplicacin interacta con la nueva base de datos. Mantenimiento de la base de datos pruebas de script es muy importante probar los scripts asociados con las tareas de backup y recuperacin de bases de datos. La mayora de las tareas de backup y recuperacin pueden automatizarse utilizando OEM y scripts y comandos utilizados por el OEM para realizar estas tareas tambin pueden ser reutilizados. Las pruebas de estos scripts es un proceso manual que debe llevarse a cabo en un entorno aislado. La base de datos Oracle tambin ofrece mtodos alternativos para realizar copias de seguridad de bases de datos, tales como el uso de copias de seguridad basadas en disco para realizar automticamente copias de seguridad incrementales y las operaciones de recuperacin.Si un integrador de sistemas es elegido para realizar la migracin, el ensayo generalmente se convierte en una parte de la oferta de servicio porque requiere un esfuerzo considerable.Migracin de aplicaciones de optimizacin de una base de datos a otra base de datos que a veces se traduce en un rendimiento deficiente. Esto ocurre porque estas aplicaciones son altamente optimizado para un determinado sistema de base de datos durante largos perodos de tiempo. OEM puede utilizarse para ayudar a resolver sus problemas de rendimiento despus de la migracin. Es muy comn que las organizaciones64 Captulo 3 Metodologa y diseopara dejar al menos dos a tres meses para la prueba de rendimiento despus de la migracin de las aplicaciones de misin crtica. Algunos problemas de rendimiento tambin puede ser capturado durante la fase de pruebas de integracin y funcionales. Pero algunos problemas puedan surgir slo bajo ciertas cantidades de carga en el sistema. Por lo tanto, es esencial para probar el rendimiento de la nueva plataforma completamente para identificar posibles cuellos de botella en el sistema y resolverlos antes de que la nueva plataforma se lanza en la produccin. Pueden surgir problemas de rendimiento debido a alguna de las siguientes razones: Bases de datos de recursos insuficientes del sistema difieren en sus necesidades de recursos del sistema, como memoria, CPU y E/S porque han sido architected de forma diferente. Algunas de las bases de datos utilizan procesos multiproceso, mientras que Oracle est basado en el proceso en la mayora de plataformas, excepto Microsoft Windows. Oracle utiliza las operacio- nales de las estructuras de base de datos tales como deshacer segmentos que requieren operaciones de E/S adicionales que otras bases de datos no tienen. Por lo tanto, si el sistema en el que se implementa la base de datos de Oracle no se ajusta correctamente, puede ocasionar un rendimiento deficiente. Mala planes de ejecucin de consultas SQL para optimizar las consultas, el optimizador de consultas de SQL de Oracle depende de estadsticas para las tablas y los ndices de la base de datos durante el curso normal de la operacin de base de datos. Sin embargo, si estas estadsticas son obsoletos debido a la masiva de datos los cambios realizados en un corto periodo de tiempo, o estn ausentes por alguna razn, las sentencias SQL no funcionar bien. Supervisa de forma proactiva el rendimiento de OEM de sentencias SQL y base de datos de alerta ser adminis- trators de cuestiones. Tambin ejecuta los trabajos para recopilar estadsticas de objetos de base de datos periodi- camente para evitar estos problemas. Sin embargo, es posible que durante la migracin, algunas instrucciones SQL complejas que fueron convertidas a Oracle requieren ndices adicionales. subestimar la carga de trabajo de la poblacin de usuarios concurrentes o subestimar la carga mxima de trabajo o la poblacin de usuarios concurrentes pueden resultar en menores de dimensionamiento del sistema utilizado para la base de datos de Oracle. Esto tambin puede resultar en la falta de asignacin de memoria para el motor de base de datos Oracle en la forma de una pequea rea global compartida (SGA). Tener insuficientes estructuras de bases de datos Oracle para obtener un rendimiento ptimo, es necesario que el tamao de la base de datos de Oracle estructuras tales como los espacios de tablas temporales y el segmento de UNDO tablespace (alias ROLLBACK SEGMENTS) debidamente, puesto que la base de datos Oracle automticamente asigna espacio en ellos segn sea necesario. Si son de talla baja, el rendimiento ser deficiente debido a frecuentes asignaciones en estos espacios de tablas, resultando en un aumento de espera por la base de datos.Muchos de estos problemas se identifican proactivamente por OEM, incluyendo recomendaciones para abordarlos. Despus de la migracin de la base de datos preliminar y se realizan pruebas de rendimiento, Oracle Real Application Testing (RAT) puede ser utilizado para probar el impacto de diferentes escenarios de optimizacin (p. ej., el uso de nuevos ndices, el efecto de compartimentacin, compresin y cifrado, etc.), en el nuevo entorno de Oracle. RAT permite la captura y reproduccin de la carga de trabajo en una base de datos de Oracle, y es mucho ms fcil de instalar y configurar que otras herramientas en el mercado.Diseo y la metodologa deimplementacin de 65 aosmuchas de las tareas a ser ejecutadas en la fase de despliegue, conseguir su entrada desde la fase de evaluacin y de la fase de anlisis y diseo. Durante estas fases, la arquitectura del sistema de destino y todos los componentes de software necesarios para ser utilizados en el nuevo sistema son evaluados. Sobre la base del resultado de estas fases, los nuevos sistemas de software y hardware son adquiridos. Trabajar en esta fase puede comenzar temprano en el proyecto de migracin, ya que muchas organizaciones tienen que seguir ciertas prcticas comerciales relativas a la adquisicin de nuevo hardware y software.Porque esta fase puede implicar la adquisicin de nuevo hardware, adems de instalar el software de bases de datos Oracle en muchos casos, medidas adicionales tienen que ser tomados para configurar los recursos del sistema segn los requisitos de implementacin de base de datos Oracle, como la configuracin de almacenamiento compartido y configuracin de inter- redes conectadas entre los nodos de servidor de base de datos que ser parte de una base de datos Oracle RAC. Tareas comunes ejecutados en la fase de implementacin se incluyen las siguientes: Configuracin de hardware Esta tarea incluye la configuracin de servidores de bases de datos, la asignacin de almacenamiento y la configuracin de la red. Configuracin del servidor tambin puede implicar tareas relativas a la configuracin de un clster para apoyar la base de datos Oracle RAC. Adems, la tarea de configuracin de hardware consiste en configurar los sistemas, redes y almacenamiento en el sitio de recuperacin ante desastres. Se debe tener cuidado cuando el dimensionamiento del hardware y almacenamiento basado en el perfil de la carga de trabajo de la aplicacin y la base de datos. Polticas y procedimientos deben ser desarrollados para la implementacin de bases de datos Oracle en un entorno de nube privada para que las instancias de bases de datos de Oracle puede ser abastecido como y cuando se necesitan, y para consolidar las bases de datos de Oracle en Oracle Exadata database machine plataforma. Instalacin y configuracin del Software esta tarea se compone principalmente de instalar y configurar el software de Oracle, y la instalacin del esquema de base de datos Oracle migrados en los sistemas implementados en el entorno de produccin para apoyar las aplicaciones. Despus de que el esquema de la base de datos se ha establecido la seguridad de la base de datos, funciones y privilegios que debern asignarse a los usuarios de la aplicacin, junto con el acceso a los servidores fsicos. La carga inicial de datos despus de crear los esquemas de la base de datos en el entorno de produccin, la siguiente tarea consiste en cargar los datos ms actuales de la base de datos de origen. En los casos en que la base de datos de produccin de origen no puede ser afectado con la extraccin de datos, el ms reciente de restaurar las copias de seguridad en un servidor diferente y los ltimos datos se extraen de la copia de seguridad. A continuacin, se cargan los datos en la nueva base de datos de Oracle utilizando herramientas y scripts que fueron escogidos para la tarea durante la fase de anlisis y diseo. Tambin es esencial para garantizar que se crean los ndices deseados en todas las tablas de la base de datos y que las ltimas estadsticas de tabla y de ndice se recogen antes de la base de datos est listo para los usuarios. Prueba de los scripts de copia de seguridad y recuperacin y procesos es muy importante probar todos los scripts y procesos para las operaciones de copia de seguridad y restauracin de bases de datos. En muchos casos, los administradores utilizan una plantilla estndar para generar nuevos scripts para la66 Captulo 3 Metodologa y disearnuevas bases de datos. Sin embargo, estos scripts que necesitan ser probados para asegurarse de que funcionar como se espera cuando realmente importa; si no funciona como se espera, recuperacin de la base de datos puede estar en peligro. OEM: permite la configuracin de las tareas de backup y recuperacin de una manera automatizada que puede ayudar a evitar cualquier error asociado con secuencias de comandos para realizar estas tareas manualmente. Captura de cambios (de origen) y el proceso de conversin de bases de datos que no pueden permitirse el tiempo de inactividad y tienen que estar disponibles 24/7, es esencial que los cambios que tuvieron lugar durante el proceso de carga de datos inicial o durante la fase de conversin debe ser capturado y aplicado a la nueva base de datos para evitar que se pierdan las transacciones que afectan la integridad de los datos en el nuevo entorno. Oracle GoldenGate pueden desempear un papel crucial en esta tarea de capturar los cambios en la base de datos de origen y replicarlas en la base de datos de Oracle despus de la carga inicial de datos la tarea se ha completado. Puede continuar para capturar los cambios realizados en la base de datos de origen, mientras que la operacin de carga de datos est en curso en la base de datos Oracle. Los siguientes pasos son necesarios en este proceso:1. Configurar el proceso de captura de datos modificados en la base de datos de origen.2. Extraer los datos de la base de datos de origen.3. Cargar los datos en la base de datos de destino (Oracle).4. Aplicar el cambio de datos capturados de la base de datos de origen a Oracle.5. Abra la base de datos de Oracle para uso comercial.Post-Production apoyo, es una prctica comn para apoyar un entorno de base de datos recin implementada con personal que estuvieron involucrados en el proceso de migracin para solucionar cualquier problema que pueda surgir inmediatamente despus de que el nuevo entorno se viven. Los siguientes problemas pueden surgir durante este tiempo: Problemas relacionados con la falta de familiaridad con el nuevo entorno. Problemas de rendimiento con las sentencias SQL. Aplicaciones no funcionan como es de esperar (falta la funcionalidad o comportamiento incorrecto). Esto puede suceder si algunos componentes de la aplicacin no se migraron correctamente al nuevo entorno y no fueron probados. Problemas con la representacin de datos en las aplicaciones (formato de Fecha/Hora, mscara, etc.). El tiempo requerido para los administradores de bases de datos y desarrolladores se familiaricen plenamente con el nuevo entorno, incluyendo los procedimientos para administrar las tareas rutinarias.Servicios de migracin dela gestin de un gran proyecto de migracin requiere una cuidadosa planificacin, recursos suficientes, y ciertas habilidades. Muchos de los integradores de sistemas que se han especializado en prcticas se centraron en migraciones, y tienen su propia metodologa, herramientas y mejores prcticas.Resumen 67para las organizaciones de TI que estn planeando migrar muchas bases de datos como parte de un movimiento estratgico para consolidar las plataformas de base de datos, tiene sentido contratar a un integrador de sistemas para ejecutar el proyecto, porque un integrador de sistemas puede aportar experiencia de migracin industrializados a la tabla. Tambin es posible que los integradores de sistemas pueden simplemente aumentar su personal de TI temporalmente para permitirle realizar migraciones por su propia cuenta. Los ISV, por otro lado, puede trasladar sus aplicaciones en sus propios porque, para ellos, es una cuestin de aplicacin de base de datos nueva funcionalidad en las aplicaciones existentes, que tienen que soportar las otras bases de datos.Migracin de plataformas de base de datos de los paquetes de aplicaciones compradas a proveedores de software independientes (ISV), e instalar componentes de software adicionales de la aplicacin, tales como la capa de acceso a la base de datos o, en algunos casos, las nuevas versiones de los paquetes de aplicaciones certificadas para ejecutarse en una base de datos de Oracle, puede ser necesario. En tales casos, es mejor si el ISV o un integrador de sistemas establecidos con una prctica dedicada centrado en estas aplicaciones es contratado para llevar a cabo la migracin de la plataforma de base de datos. El proveedor de la aplicacin puede tener un diferente para cada base de datos codebase que necesita ser instalado primero. Como tal, la migracin de una base de datos a otra sin cambiar la apli- cacin codebase no funcionar en estos casos, y puede poner en peligro la capacidad del ISV para apoyar la aplicacin. Por ejemplo, la migracin de un sistema de gestin de recursos humanos de PeopleSoft (HRMS) aplicacin desplegada contra una base de datos IBM DB2 para una aplicacin PeopleSoft HRMS desplegada contra una base de datos de Oracle implica los siguientes pasos:1. Instale el software de PeopleSoft HRMS y un esquema de base de datos de Oracle.2. Migrar todas las personalizaciones del software PeopleSoft HRMS de IBM DB2 a la base de datos de Oracle.3. Migrar todos los datos de DB2 de IBM a Oracle.4. Prueba el nuevo entorno.Migracin de la base de datos esquema asociado con una aplicacin empaquetada directamente a Oracle mediante herramientas de migracin no est soportado en la mayora de los casos por los proveedores de aplicaciones empaquetadas. Muchos de los integradores de sistemas tener prcticas dedicados a las migraciones y actualizaciones de un paquete de aplicacin particular. Aprovechando ese sistema integra- tores pueden garantizar una perfecta migracin al nuevo entorno.Resumen Lamigracin de proyectos de cualquier tamao requiere una cuidadosa planificacin. Evaluar su actual portafolio de aplicaciones puede ayudar a una organizacin a comprender los desafos, la complejidad y el nivel de esfuerzo requerido para han migrado a sus bases de datos Oracle. Muchas herramientas facilitar las migraciones de aplicaciones y bases de datos. Estas herramientas difieren en el nivel de automatizacin proporcionan en migraciones y en la exactitud de las declaraciones SQL migrados. Realizar pruebas de concepto con estas herramientas para comprender mejor sus capacidades ser beneficiosa a largo plazo para grandes proyectos de migracin.Las migraciones de base de datos tambin tiene un impacto en las aplicaciones que dependen de ellos.68 Captulo 3 Metodologa y Diseoen cuestiones relacionadas con las migraciones se varan en complejidad y naturaleza dentro de las organizaciones, dependiendo de caractersticas/funciones de uso. Algunas organizaciones establecer directivas para desarrollar aplicaciones con el objetivo de ser la base de datos-agnstico. En tales casos, el impacto de los cambios en las bases de datos sern mnimos, ya que habra evitado la aplicacin de las caractersticas propietarias de una base de datos. No hay sustituto para las pruebas integrales del emigrado/portado aplicacin junto con la nueva plataforma de base de datos.En este captulo, analizamos diversos enfoques, herramientas de migracin, y el ciclo de vida de migracin en profundidad. Tambin analizamos las opciones de servicio de migracin para diferentes organizaciones (por ejemplo, proveedores de software independientes (ISV), las organizaciones de TI, etc.). El objetivo fue informar a los lectores sobre posibles opciones en las herramientas de migracin, y diversos problemas de diseo que deben ser considerados. El siguiente captulo proporcionar un panorama general de las tecnologas y herramientas de migracin junto con sus fortalezas y debilidades.