Si está creando una red Microsoft .NET y el backend ejecuta una base de datos Oracle, entonces debe migrar el backend a SQL Server. El núcleo de esta pregunta no es comparar el rendimiento de la base de datos, sino encontrar la herramienta que sea mejor para usted. Para responder a estas dos preguntas bajo la arquitectura .NET, solo hay una respuesta: .NET Server. En este artículo, primero exploramos por qué tiene un servidor Oracle en su red, luego analizamos cómo migrarlo a SQL Server y finalmente explicamos los pros y los contras de este movimiento.
Oracle en su sistema
Si tiene un servidor Oracle en su red, necesita descubrir por qué lo necesita: quién lo usa, qué aplicaciones lo usan, qué aplicaciones se ejecutan en él, etc.
¿Quién lo está usando?
Primero debes averiguar quién está utilizando el servidor Oracle. De lo contrario, apresurarse a mover el servidor antes de tener una respuesta probablemente conduzca a un gran error. Por supuesto, si realmente desea hacer esto, es una forma rápida de encontrar el usuario de la base de datos. Pero aun así le recomendamos que no lo haga.
Los administradores de red pueden contar con procedimientos para monitorear o registrar el uso de Oracle. Es posible que los desarrolladores quieran utilizar los servidores actuales para desarrollar aplicaciones. Es posible que los gerentes necesiten generar informes analíticos basados en los datos almacenados en la base de datos o utilizar el backend de Oracle para tomar decisiones comerciales. Y los usuarios de la base de datos pueden estar en todo el mundo. Debe considerar todas estas posibilidades al determinar qué usuarios se verán afectados por el proceso de migración de Oracle a SQL Server.
¿Qué aplicaciones lo utilizarán?
Ahora supongamos que les pide a todos los usuarios, uno por uno, que averigüen quién está usando Oracle. Y su respuesta es exactamente no, entonces debe verificar el archivo de registro para comprender qué estaciones de trabajo acceden a la base de datos. Cuando revisa estos archivos de registro, puede encontrar que no solo la estación de trabajo accede a la base de datos, sino que también otros servidores acceden a la base de datos.
Bien, tome un bolígrafo y anote los servidores que acceden a la base de datos, y luego averigüe desde qué aplicaciones específicas acceden esos servidores a la base de datos. Estas aplicaciones se pueden identificar comparando los datos almacenados en la tabla de datos con las aplicaciones que se ejecutan en el servidor.
¿Qué aplicaciones se ejecutan en el servidor Oracle?
Ahora que conoce los usuarios y las aplicaciones externas que acceden a la base de datos, necesita averiguar qué aplicaciones se están ejecutando en el servidor de la base de datos. Estas aplicaciones pueden ser procedimientos almacenados en bases de datos (y sus correspondientes desencadenantes, tipos de datos personalizados, configuraciones de seguridad, etc.) o pueden ser aplicaciones independientes que no se ejecutan dentro de Oracle. Debe prestar especial atención a las herramientas de desarrollo de Oracle agregadas al servidor.
Migración a SQL Server
Nunca debería caer en la tentación de desconectar inmediatamente su servidor Oracle e instalar SQL Server. Debes pensarlo dos veces antes de migrar servidores críticos. ¿Por qué este proceso se llama específicamente migración? Y no es porque la migración no siempre se produzca de repente. Si se toman algunas medidas simples y razonables, el proceso de migración se puede lograr sin ningún obstáculo.
Para migrar aplicaciones aaplicaciones nativas y aplicaciones externas,
siga los siguientes pasos:
1. Instale un nuevo SQL Server en la red.
2. Cree los "dispositivos" y las tablas de datos que utiliza la aplicación.
3. Prohibir que la aplicación acceda a la base de datos y desconectarla.
4. Copie los datos actuales de Oracle a SQL Server.
5. Apunte todas las aplicaciones a la nueva base de datos.
6. Permitir que las aplicaciones accedan a nuevos datos en tablas y dispositivos de datos.
Existe un problema fatal alconsiderar la migración de SQL
entre SQL Server y Oracle: hablan dos dialectos SQL diferentes, SQL-PL/SQL (Oracle) y Transact-SQL (Microsoft).
En la mayoría de los casos, si puede utilizar un lenguaje SQL, probablemente pueda utilizar el otro lenguaje SQL. Teniendo en cuenta las funciones, operadores, declaraciones, etc. de SQL, compilé especialmente una Referencia del programador de SQL. Esta información muestra las características admitidas por varios DBMS. Por supuesto, si estos proveedores estadounidenses de productos SQL respetan honestamente el estándar estadounidense SQL (ANSI-SQL), ¿por qué habría un problema tan grande?
Además, también puede encontrar los siguientes problemas:
Tabla dual de Oracle: en SQL Server, puede encontrar declaraciones como select 'x';. En Oracle, esta declaración debe convertirse en select 'x' de dual;. dual es una tabla del sistema generada por Oracle. Además de este problema de sintaxis SQL, no puede copiar esta tabla a su servidor SQL porque es una tabla del sistema Oracle.
Truncamiento: ambos DBMS admiten las funciones FLOOR y ROUND, pero Oracle también tiene una función TRUNC adicional. Si su sistema Oracle utiliza la función TRUNC, necesitará volver a editar las partes involucradas; es posible que deba pensar en cambiarla a la función FLOOE o ROUND.
Concatenación-SQL Server 7 no admite el método de conexión ANSI ||, pero SQL Server 2000 sí. Ambas bases de datos ahora usan el signo más (+) para representar conexiones, ¡pero es mejor usar este símbolo para operaciones aritméticas!
Depende de las versiones específicas de los dos servidores que esté utilizando. Los problemas de migración del lenguaje SQL casi siempre aparecerán repentina e inesperadamente.
El argumento comercial para abandonar Oracle
Esta migración de base de datos no es un simple juego emocional, y elegir productos de Microsoft en lugar de Oracle está respaldado por el argumento comercial. Oracle ha dedicado considerables recursos a derrotar a Microsoft en batallas judiciales y de propaganda. Sin embargo, desde un punto de vista económico, Oracle no es más rentable. Además, Oracle solo tiene un producto principal, que aún tiene menos confianza que Microsoft. Además del complicado proceso de ventas, será mejor que encuentre una empresa más impresionante que le brinde soporte. La empresa debe ser saludable y próspera, y sus productos deben ser populares en general. Debe garantizar que la empresa sea muy fuerte durante al menos unos años antes de encontrarse con oponentes más poderosos.
¿Qué puede ganar al migrar a SQL Server?
En primer lugar, obtiene un sistema que es altamente consistente con su arquitectura de red. No necesita una persona dedicada a administrar su sistema UNIX. Las herramientas de administración diseñadas para DBMS funcionan de manera óptima con esas herramientas del sistema operativo de red.
En segundo lugar, el sistema implementa soporte integrado para aplicaciones .NET. La arquitectura .NET no requiere que utilice SQL Server, pero este servidor es la base de datos predeterminada. Los controladores ODBC para Oracle son ciertamente buenos, pero siempre son un posible punto de falla.
En tercer lugar, el costo de utilizar Oracle en la red .NET es mayor que el de utilizar SQL Server. Puede obtener descuentos al comprar más licencias de servidor Win2K, así como licencias de VS.NET y Office.
Finalmente, incluso si compra un sistema SQL Server por separado, puede resultar más económico que Oracle. Hoy en día, regatear por una licencia de Oracle puede parecer como sacar dientes. Recuerdo haberle preguntado el precio a un representante de ventas y, de hecho, me dijo: "¿Puede permitírselo?".
Resumen
Si está creando una red .NET, tiene sentido utilizar SQL Server como su DBMS porque es Microsoft .NET. El componente principal de el conjunto de aplicaciones de servidor. Migrar de una plataforma a otra es un proceso importante que debe considerarse y planificarse cuidadosamente. Antes de cambiar de plataforma, debe tener una base .NET unificada, efectiva, fácil de administrar y confiable.