Analisis Comparativo

58
UNIVERSIDAD VERACRUZANA Facultad de Administración Lic. Sistemas Computacionales Administrativos Materia: dfdfdfdfdffdfdff BASE DE DATOS Impartida por: Dr. Carlos Arturo Torres Gastelú Trabajo: Análisis Comparativo SQL SERVER/ORACLE Realizado por: Ordoñez Lorenzo Gabriela Rodríguez Romero Juan Enrique Vidal Sánchez María del Carmen

description

 

Transcript of Analisis Comparativo

Page 1: Analisis Comparativo

UNIVERSIDAD VERACRUZANAFacultad de Administración

Lic. Sistemas Computacionales Administrativos

Materia: dfdfdfdfdffdfdff

BASE DE DATOS

Impartida por:

Dr. Carlos Arturo Torres Gastelú

Trabajo:

Análisis Comparativo SQL SERVER/ORACLE

Realizado por:

Ordoñez Lorenzo Gabriela Rodríguez Romero Juan Enrique Vidal Sánchez María del Carmen

No. Equipo: 9

Fecha de entrega:18 de Octubre del 2010

Page 2: Analisis Comparativo

INTRODUCCIÓN

Las organizaciones a menudo emplean un sin número de plataformas de base de datos en su arquitectura de sistemas de información. No es raro ver a medianas y grandes empresas utilizando de tres a cuatro diferentes paquetes de RDBMS. En consecuencia, los DBA de estas empresas aspiran a tener una amplia gama de habilidades a través de una serie de áreas.Profesionales de la base de datos que han trabajado con una sola plataforma se preguntan a menudo sobre el aprendizaje de algo diferente a medida que avanzan en su carrera. Algunas personas se vuelven lo suficientemente valientes como para gastar tiempo, dinero y esfuerzo en tomar el camino del aprendizaje. Otros se enfrentan a la tarea de aprender un nuevo sistema que se une a una empresa o de búsqueda de puestos de trabajo. Y, sin duda, especialistas en contratación y los empleadores también prefieren candidatos que tengan experiencia en más de una área.

Eh aquí donde trataremos de proporcionar un alto nivel de comparación entre Microsoft SQL Server y Oracle RDBMS. La cual nos sirva como apoyo y conocimiento describiendo pequeñas partes de lo que es cada una de ellas, por decir Microsoft SQL Server ha sido siempre una parte de la familia de servidores Windows y hay pocas posibilidades de que Microsoft vaya a lanzar una versión para otro sistema operativo. En la actualidad, SQL Server se ejecuta en XP, Vista, Windows Server 2000, 2003 y 2008. La plataforma de base de datos está disponible para los de 32 bits y 64 bits de Windows.

Para el caso de Oracle, software de base de datos con soporte multiplataforma incluye no sólo Windows (32 bits y 64 bits), pero Linux y diferentes variantes de Unix (Solaris, HP-UX, AIX, etc) también.

Pero nosotros nos centraremos principalmente en criterios como el rendimiento, desempeño, escalabilidad, disponibilidad, seguridad e integración. No es en modo alguno una lista exhaustiva, pero le ayudará a ver algunas de las similitudes y diferencias entre las dos plataformas de base de datos más utilizadas hoy en día.

Análisis comparativo

SQL SERVER & ORACLE

Page 3: Analisis Comparativo

LOS CRITERIOS SON:

Escalabilidad Manejabilidad Desempeño Disponibilidad Integración Seguridad

ESCALABILIDAD

SQL SERVER

SQL Server incorpora herramientas que facilitan el éxito del administrador, escalables a entornos de múltiples servidores e instancias. Aumenta la efectividad del administrador de bases de datos mediante el uso de SQL Server Management Studio, con el cual se pueden gestionar todas las instancias y servicios de SQL Serve, incluyendo bases de datos relacionales, ReportingServices, AnalysisServices, IntegrationServices y bases de datos de SQL Server Compact Edition. Mediante los informes estándar y personalizados que genera SQL Server Management Studio puede disponer de un elevado nivel de conocimiento del estado de su sistema. SQL Server es una plataforma completa de gestión de datos que integra tecnologías para la escalabilidad individual de los servidores y la escalabilidad de bases de datos de grandes dimensiones, así como herramientas para optimizar su rendimiento.

ESCALABILIDAD VERTICAL

Puede conseguir un rendimiento óptimo para sus sistemas de bases de datos aprovechando al máximo las últimas tecnologías de hardware.

Soporte Para HardwareSQL Server obtiene el máximo rendimiento de los servidores de gama alta mediante su soporte para tecnologías de 64 bits, su soporte para sistemas multi-núcleo y el direccionamiento de hasta 64 GB de memoria. La escalabilidad se mejora sensiblemente con soporte para arquitecturas de hardware NUMA (Non-UniformMemory Access), que se pueden utilizar sin tener que modificar las aplicaciones.

Page 4: Analisis Comparativo

 SQL Server soporta tanto hardware NUMA como NUMA por softwarea(dición de memoria y CPU en caliente), SQL Server Ed.Enterprise le permite añadir recursos de memoria y CPU en caliente para escalar el servidor sin detener los servicios de base de datos.

ESCALABILIDAD HORIZONTAL

Ahora puede utilizar grandes bases de datos y tablas con una amplia gama de técnicas que permiten su escalabilidad.Bases de datos compartidas. Puede crear una base de datos de informes de solo-lectura con la funcionalidad de base de datos compartida escalable. Ofrece un mejor rendimiento al poder montar estas bases de datos de solo lectura en distintos servidores de informes. Todos los usuarios obtienen informes con los mismos datos, con independencia de a qué servidor se conecten. 

ORACLE

Por otra parte Oracle vende el concepto de escalabilidad, utilizando la computación Grid basado en Real Application Clustering (RAC) como la solución. RAC se basa en la tecnología de caché de fusión, esto se basa en la sincronización de la caché de base de datos en lugar de la base de datos de la propia. Aquí está el DEFN de Oracle Technology documento técnico de red. 

"Una base de datos RAC es una base de datos en clúster. Interconecta los componentes redundantes de hardware como nodos adicionales, y los discos de permitir que el clúster de suministrar los accesorios availability. Such redundantes de alta evita punto único de fallo y excepcional resilience. With culpa RAC, las instancias de Oracle (el proceso y estructuras de memoria que se ejecutan en un servidor para permitir el acceso a los datos) de la base de datos Oracle (las estructuras físicas que residen en el almacenamiento que en realidad contienen los datos reales). Una base de datos en clúster es una base de datos única que se puede acceder por varias instancias. Cada instancia se ejecuta en un servidor independiente en el grupo.

Función SQL Server 2000

Base de datos

Oracle 9iBase de datos de longitud del nombre 128 8Columna de longitud del nombre 128 30Índice de la longitud del nombre 128 30Tabla de longitud de nombre 128 30

Page 5: Analisis Comparativo

Vista de la longitud del nombre 128 30Longitud del nombre de procedimiento almacenado

128 30

Columnas por índice máximo 16 32Max () el tamaño de caracteres 8000 2000Varchar max () de tamaño 8000 4000Columnas máximo por mesa 1024 1000Tabla de registros de longitud máxima 8036 255000Tamaño máximo de consulta 16777216 16777216Sub-consultas recursivas 40 64Tamaño de la cadena constante en SELECT

16777207 4000

Tamaño de la cadena constante en WHERE

8000 4000

MANEJABILIDAD

SQL SERVER

Dispone de un sistema basado en políticas para gestionar una o varias instancias de servidor de base de datos y herramientas para la monitorización del rendimiento, resolución de incidencias y optimización con las que los administradores pueden gestionar de manera eficaz sus bases de datos y sus entornos de servidor. 

NOVEDADESUtiliza Performance Studio para resolver incidencias, ajustar y monitorizar el rendimiento de las instancias de SQL Server 2008 en toda la organización. Define políticas de configuración para toda la organización utilizando DMF (Declarative Management Framework). Utiliza las facetas y políticas integradas en DMF para gestionar la configuración del área de superficie y aplicar buenas prácticas.

Alta Disponibilidad —AlwaysOn

Las Tecnologías AlwaysOn de SQL Server aportan toda una familia de opciones destinadas a minimizar las pérdidas de servicio y mantener el nivel adecuado de disponibilidad de las aplicacionesNOVEDADESRecupera páginas de datos corruptas desde un servidor replicado utilizando funcionalidades avanzadas de mirroring de base de datos Aprovecha las mejoras en FailoverCluster que introducen Microsoft SQL Server y Microsoft Windows Server®. 

Page 6: Analisis Comparativo

Permite añadir nodos adicionales a una solución de replicación peer-to-peer sin tener que detener el proceso de réplica. Mejora los tiempos de recuperación y el tamaño de las copias de seguridad con el soporte para compresión de backup mejorando la concurrencia con mejoras en los procesos de bloqueo.Reduce el tiempo de parada por mantenimiento del hardware gracias a su capacidad para añadir CPU en caliente. Con ResourceGovernor puede controlarse de forma proactiva la asignación de prioridades a las tareas.

ORACLE

Manejabilidad: basada en software de DBMS de racimo son sistemas complejos y, en consecuencia, requieren un cuidado adicional durante la instalación, despliegue, actualización y los sistemas basados en debugging.RAC especialmente en un nodo de clúster de múltiples necesidades administrativas esfuerzo adicional y la complejidad del sistema hace es difícil de diagnosticar y resolver los errores. Una aplicación que utiliza para un mejor manejo de datos es:

Peer-to-Peer replicación

Utilice la replicación punto de escalar en gran medida las bases de datos accesibles y permiten a los usuarios para actualizar varias copias de la base de datos, manteniendo la coherencia a través de la replicación

Reducir el tiempo necesario para implementar y administrar una solución de réplica de punto a punto utilizando el diseñador visual

Page 7: Analisis Comparativo

nueva para habilitar las aplicaciones para leer o modificar los datos en cualquiera de las bases de datos que participan en la replicación

DESEMPEÑO

SQL SERVER

Optimiza el rendimiento de sus servicios de datos mediante una monitorización que el ofrece una visión general.SQL Server permite integrar la recopilación, análisis, resolución de problemas y persistencia de la información de diagnósticos. Recopila datos de rendimiento a partir de contadores de actividad, vistas de gestión dinámica, trazas de SQL y otros recursos. Centraliza el almacenamiento de los datos de rendimiento obtenidos en toda la organización en un repositorio data-warehouse de datos de gestión con el que se pueden establecer líneas de base y series históricas. Permite ver los datos de rendimiento mediante informes predefinidos, como por ejemplo el de actividad del servidor, uso de disco y actividad de consultas. Mayor visibilidad

Las vistas de gestión dinámica (DMVs) permiten disponer de mayor visibilidad de lo que sucede dentro de la base de datos y son una infraestructura potente, flexible y de alta seguridad para la monitorización proactiva del estado de salud y rendimiento de las bases de datos.

Entorno de Optimización flexibleEl DTA (DatabaseEngineTuningAdvisor) permite optimizar múltiples bases de datos desde una misma tarea. Solo hay que seleccionar las bases de datos que se desea optimizar y el DTA elabora las recomendaciones sobre indexación y particionamiento más adecuadas.

ORACLE

Evaluación del Desempeño

Evaluación del Desempeño es una solución puro Internet para la gestión del rendimiento del empleado que racionaliza el proceso completo, desde la planificación de objetivos y la preparación hasta las

Page 8: Analisis Comparativo

evaluaciones e incentivos del rendimiento. Evaluación del Desempeño controla los resultados empresariales vinculando directamente las metas y objetivos del rendimiento del empleado con los objetivos de la empresa, basando los incentivos en los resultados del rendimiento e incorporando objetivos al desarrollo. Evaluación del Desempeño es un producto global y configurable que admite con facilidad las necesidades de diferentes regiones, departamentos y grupos.

Evaluación del Desempeño es parte de la familia de aplicaciones PeopleSoft Enterprise Gestión del Capital Humano de Oracle.

Características

Flexibilidad

Admite conjuntos exclusivos de reglas de gestión y procesos de aprobación para las distintas organizaciones de la empresa.Evaluación del Desempeño se adapta a cualquier grupo de personal, región o persona y controla el proceso con workflow en un entorno de fácil manejo basado en Internet.

Business Inteligence integrada

Con el Gestor de Resultados, los participantes del rendimiento pueden generar con mayor frecuencia información de calidad sobre los resultados para los empleados al tiempo que se reduce el riesgo asociado con las evaluaciones no estándar.Las funciones multidocumentos permiten cuotas múltiples y un informe sobre resultados integral.Los informes gráficos en tiempo real garantizan la transpariencia del proceso.La vinculación de objetivos con la implicación en proyectos, las iniciativas y los objetivos de los departamentos o las personas.

Amplia integración

Evaluación del Desempeño integra los procesos de gestión completos, tales como la planificación de la evaluación, la evaluación del desarrollo y la evaluación de los incentivos, con los datos principales del empleado.Evaluación del Desempeño integra el contenido de las competencias y de los informes de resultados en los procesos de gestión.

Page 9: Analisis Comparativo
Page 10: Analisis Comparativo

DISPONIBILIDAD

SQL SERVER ¿Cómo nos aseguramos que nuestra base de datos esté disponible?; no podemos garantizar que nuestra base de datos va a estar ahí cuando la necesitemos pero lo que si podemos garantizar es que si falla o algo sale mal tengamos la capacidad de restaurar todo. Pero, ¿Cómo lograr esto?, creando un buen plan de recuperación y utilizando las operaciones de copia de seguridad y restauración disponibles en SQL.Los elementos básicos de una estrategia de disponibilidad de datos son:

Planear el futuro Comprender los registros de transacciones y saber cómo utilizarlos

para restaurar datos. Realizar copias de seguridad de la base de datos. Restaurar los datos.

 Creación de una estrategia de copia de seguridad de base de datos Las copias de seguridad de base de datos son una parte fundamental en la creación de esta estrategia, sin una estrategia de copias de seguridad efectiva podríamos encontrarnos en una situación en que tengamos una base de datos corrupta pero no las suficientes copias de seguridad para restaurarlo.Los tipos de fallas que podrían ocurrir, entre ellas:

Datos inválidos del usuario. Fallo en disco duro. Falla en el servidor.

 Para evitar perderlo todo en una falla siga las siguientes recomendaciones:

Realice copias de seguridad con frecuencia (esto depende del uso de la base de datos).

Mantenga copias de seguridad completas fuera del sitio. Realice comprobaciones de consistencia con cierta frecuencia. Administre sus copias de seguridad con efectividad.

 Uso de registros de transacciones en la copia de seguridad y en la restauración. 

Page 11: Analisis Comparativo

Un registro de transacciones es utilizada internamente por SQL Server para llevar el registro de las actualizaciones, inserciones y eliminaciones que ocurren en las bases de datos.El registro de transacciones junto con la copia de seguridad de la base de datos puede ser utilizado para restaurar una base de datos y devolverla a un estado consistente. MODELOS DE RECUPERACION SQL Server soporta tres modelos de recuperación: 

A. Completa: El más completo, si falla el disco duro; le permite recuperarse hasta el momento justo de falla o en cualquier momento del tiempo. Para poder lograr esto todas las operaciones se registran lo que hace que el registro crezca demasiado ya que las operaciones masivas también se registran. Esta es una característica muy poderosa cuando se tiene una base de datos 24*7, nos permite asegurar que se pierda la menor cantidad de modificaciones posible.

B. Registro masivo: es una copia de seguridad completa. No obstante, si falla el disco duro, puede recuperarse con el modelo de copia masiva, pero no le permite recuperarse hasta cualquier momento del tiempo.

C. Simple: Es la más sencilla de todas, ocupa el menor espacio en disco, y es la que ocupa menos recurso del sistema, pero también lo expone a mayores pérdidas de datos, este modelo no nos permite recuperar hasta cualquier momento en el tiempo ni hasta el momento de falla.

 Todos estos modelos tienen ventajas y desventajas, determinar cuál es el mejor depende de sus requerimientos individuales. Por ejemplo, una base de datos que tenga muchas  transacciones y necesite recuperarse completamente lo más pronto posible se beneficiaría con el modelo de recuperación completa, Una base de datos que haya tenido muchas actualizaciones masivas y no necesite recuperar las transacciones individuales de los usuarios podría utilizar el modelo de registro masivo, y por último el modelo simple se utiliza para aplicaciones que no sean cruciales o para aplicaciones en desarrollo.

 Comprobación del modelo de recuperación El modelo de recuperación se establece a la hora de crear la base y se basa en la base de datos model. 

Page 12: Analisis Comparativo

Para saber cuan modelo esta utilizando la base de datos se utiliza la funcion DATABASEPROPERTYEX de la siguiente forma: 1: SELECT DATABASEPROPERTYEX (‘nombre base de datos’,’recovery’) Cambiar el modelo de recuperación Para cambiar el modelo de recuperación, utilice la siguiente instrucción ALTER DATABASE 1: ALTER DATABASE nombre_base_datos SET RECOVERY [FULL | SIMPLE | BULK_LOGGED ] Full: Completa, Simple: simple y  Bulk_logged: Registro masivo Esta acción de cambiar el modelo de recuperación, también se puede hacer de manera visual desde el Administrador Corporativo de SQL Server: PASOS 

1. Abra el administrador corporativo,2. Seleccione la base de datos en la que desea realizar el cambio.3. Una vez ubicada, haga clic derecho y seleccione propiedades

Page 13: Analisis Comparativo

 Posteriormente, haga clic en la pestaña OPTIONS y seleccione, del combo, los diferentes modelos de recuperación. 

Page 14: Analisis Comparativo

TIPOS DE COPIAS DE SEGURIDAD Aunque, se puede especificar el modelo de recuperación deseado, también se puede especificar que porciones de la base de datos incluiremos en las copias de seguridad: 

Base de datos completa: es copia incluye todos los objetos de la base de datos (tables, views, stored procedure)

  Base de datos diferencial: solo copia las modificaciones que se le

hallan hecho a la base de datos (DML, DDL) desde la última copia de seguridad completa.

  Registro de transacciones: Copia el registro de transacciones,

todas las transacciones de los usuarios (INSERT, UPDATE, DELETE), como se tienen todas las transacciones se pueden rehacer todo el trabajo que los usuarios haya hecho.

  Archivo y grupo de archivos: Nos permite realizar una copia de

seguridad de una porción de la base de datos a la vez. Esta se debe de usar cuando la base de datos es muy extensa, tambien se

Page 15: Analisis Comparativo

deben realizar copia del registro de transacción para poder recuperarse.

 Existen dos formas de realizar la copia de la base de datos, por medio del Enterprise Manager o del Query Analizar: Realizar una copia de seguridad por medio del Administrador Corporativo (Enterprise Manager). 

1. Inicie el Enterprise Manager.2. Seleccione la base de datos que desea realizar copia de seguridad.3. Haga clic derecho y seleccione todas las tareas y posteriormente

haga clic sobre Backup Database.span style='mso-ignore:vglayout'> 

     Al hacer los pasos anteriores aparece un pantalla como la siguiente: 

Page 16: Analisis Comparativo

 Esta pantalla le permite configurar algunas cosas: lo primero es escoger cual base de datos se desea respaldar, seguidamente está el campo Name, debe establecerse un nombre para el respaldo y anotarlo en ese campo; el campo description no es necesario pero sería bueno especificarle una descripción como por ejemplo “Doctores Backup, “ ”, Completa” En la sección backup debe seleccionar el tipo de copia que desea realizar, según lo vimos anteriormente. En la sección Destination debe seleccionar el destino de la copia de seguridad, si da clic en el boton Add aparecerá la siguiente pantalla:

Page 17: Analisis Comparativo

 En la pantalla anterior puede poner la dirección del archivo o escogerlo dando clic en el botón…El botón Remove es para remover el una copia de la base de datos de la lista.El botón Contents muestra el número de copias de seguridad actuales. La opción Overwrite le permite sobrescribir las copias de seguridad anteriores.Y por último la opción Schedule, es para programar la copia a cualquier hora del día. Una vez seleccionada todas las opciones se le da clic en botón Ok y a continuación aparecerá este mensaje de progreso y al final aparece la confirmación de la copia de seguridad.

 Realizar una copia de seguridad de la base de datos por medio del Analizador de Consultas. El código respectivo para realizar dicha operación es la siguiente: BACKUP DATABASE DoctoresTO DISK = 'C:\Archivos de programa\Microsoft SQLServer\MSSQL$MISQLSERVER\BACKUP\DoctoresBackup.bak'

Page 18: Analisis Comparativo

 WITH NOINIT, NOSKIP, STATS = 10 Doctores: nombre de la copiaTO DISK…. Esta instrucción asigna la ruta donde va a estar la copia de seguridad.WITH: significa que siguen algunas características.NOINIT:  que el conjunto de la copia se debe indexar y no crear uno nuevoNOSKIP: debe verificarse el nombre del medio y sus detalles.STATS=10: que muestre el avance del proyecto en números.  REALIZAR UNA RESTAURA DE LA BASE DE DATOS DOCTORES Es importante no solo tener el instrumento sino también utilizarlo. Por medio del administrador corporativo. Debe iniciar el administrador dar clic derecho sobre la base de datos que se desea restaurar, seguidamente se muestra la siguiente pantalla:

 

Page 19: Analisis Comparativo

En esta pantalla se configuran todas las opciones de restauración: En la sección restore pueden seleccionar el tipo de Restore.Database: nos permite restaurar la base de datos completa.Filesgroups or Files: me permite restaurar de un archivo o grupo de archivos.From Device: Nos permite restaurar desde un dispositivo. El combo de mas abajo en la sección de PARAMETERS contiene información sobre los respaldos mas recuentes de la base de datos. Una vez terminado esto se le da clic en ACEPTAR  y comienza con el proceso de restauración

   Restauración de la base de datos por medio del analizador de consultas. Para realizar la restauración, ejecute el siguiente código: RESTORE DATABASE doctores FROM DISK = 'C:\Archivos de programa\Microsoft SQL Server\MSSQL$MISQLSERVER\BACKUP\doctores.bak' WITH STATS = 10

ORACLE

Oracle Real Application Clusters (RAC) es la principal tecnología para clustering de base de datos que permite a dos o más computadoras (también referidos como “nodos”) de un cluster acceder concurrentemente a una sola base de datos compartida. Esto crea efectivamente un sistema de base de datos única que abarca

Page 20: Analisis Comparativo

múltiples sistemas de hardware y aparece frente a la aplicación como una sola base de datos unificada. Esto trae aparejado enormes beneficios de disponibilidad y escalabilidad para todas sus aplicaciones, como por EJEMPLO:

Tolerancia a fallas dentro del cluster, en especial, a fallas de la computadora. Flexibilidad y eficiencia de costos en la planificación de capacidad, de manera que un sistema pueda escalar a cualquier capacidad deseada a pedido y a medida que las necesidades de negocio cambian.

Real Application Clusters también ofrece a los usuarios la flexibilidad de agregar nodos al cluster a medida que la demanda de capacidad aumenta, ampliando cada vez más el sistema para ahorrar costos y eliminar la necesidad de reemplazar sistemas más pequeños de nodo único por unos más grandes. Facilita el proceso de la actualización de capacidad, y hace que sea más rápido, ya que uno o más nodos pueden agregarse al cluster, en vez de reemplazar los sistemas existentes con nuevos nodos más grandes para actualizar los sistemas. La tecnología Cache Fusion implementada en Real Application Clusters y el soporte de InfiniBand networking permite el aumento casi linear de la capacidad sin realizar cambios en sus aplicaciones.Oracle Database 11g optimiza aún más el desempeño, la escalabilidad y los mecanismos de failover de Real Application Clusters para mejorar sus beneficios de escalabilidad y alta disponibilidad.

Data Guard 

Oracle Data Guard debería ser la base de toda implementación para la recuperación de desastres en la infraestructura de IT. Data Guard ofrece la tecnología para implementar y administrar una o más copias standby de la base de datos de producción, ya sea en el centro de datos local o en un centro de datos remoto, que podría ubicarse en cualquier lugar del mundo. Una variedad de opciones configurables se encuentran disponibles en Data Guard, las cuales permiten que los administradores definan el nivel de protección que requieren para su empresa. Data Guard también funciona de manera transparente en los clusters de Grid ya que los

Page 21: Analisis Comparativo

servidores pueden agregarse dinámicamente en la base de datos standby en caso de que se requiera un failover. Data Guard respalda dos tipos de bases de datos :

standby– bases de datos standby físicas que utilizan la tecnología RedoApplyLas bases de datos standby lógicas que utilizan la tecnología SQL Apply.Data Guard Redo Apply (Standby Físicas) 

Una base de datos standby física es mantenida y sincronizada con la base de datos de producción mediante la tecnología Redo Apply. Los datos redo de la base de datos de producción son enviados a la standby física que, utilizando la recuperación de medios, aplica los cambios de datos redo a la base de datos standby.

Al utilizar Redo Apply, la base de datos standby permanece físicamente idéntica a la base de datos de producción. Las bases de datos standby físicas son buenas para brindar protección ante desastres y errores de datos. En caso de que ocurra un error o desastre, la base de datos standby física puede abrirse, y utilizarse para ofrecer servicios de datos a las aplicaciones y los usuarios finales. Debido a que el mecanismo eficiente de recuperación de medios es utilizado para aplicar los cambios en la base de datos standby, es respaldado con cada aplicación, y puede fácil y eficientemente seguir el ritmo incluso de las cargas de trabajo más grandes de transacciones.Una de las características distintivas clave de la estrategia de Alta Disponibilidad de Oracle es nuestra implacable focalización en hacer que la infraestructura de alta disponibilidad sea utilizada diariamente.

Data Guard SQL Apply (standby lógica)

Una base de datos standby lógica es mantenida y sincronizada con la base de datos de producción mediante la tecnología SQL Apply. En vez de usar la recuperación de medios para aplicar cambios de la base de datos de producción, SQL Apply transforma los datos redo en transacciones SQL y los aplica en una base de datos que está abierta para operaciones de lectura/escritura. La capacidad de tener abierta la base de datos permite que la base de datos standby lógica sea utilizada concurrentemente para descargar ciertas cargas de trabajo desde la base de datos de producción. Muchas organizaciones aprovechan la base de datos standby lógica paraSistemas de Soporte de Decisiones e Información que pueden ser optimizados al agregar índices adicionales y/o Vistas Materializadas a la base de datos standby.

Page 22: Analisis Comparativo

Agente Data Guard 

Las bases de datos primaria y standby, así como sus variadas interacciones, pueden administrarse utilizando SQL*Plus™. Para una capacidad de administración más fácil, Data Guard también ofrece un marco distribuido para la administración, denominado Agente Data Guard, que automatiza y centraliza la creación, el mantenimiento y el monitoreo de una configuración Data Guard.

Fast-Start Failover 

Data Guard Fast-Start Failover permite la creación de un entorno para bases de datos standby tolerantes a fallas al ofrecer la capacidad de automatizar totalmente el failover del procesamiento de base de datos de la base de datos de producción a la standby sin intervención humana. En caso de una falla, Fast-Start Failover hará un failover automático, rápido y confiable a una base de datos standby designada y sincronizada, sin que los administradores realicen pasos manuales complejos para invocar e implementar la operación de failover. Esto reduce en gran medida la duración de un corte de servicio.

Tecnología Oracle Flashback

Cuando la gente autorizada comete errores, usted necesita las herramientas para corregir esos errores. Oracle Database 11g brinda una tecnología para la corrección de errores humanos denominada Flashback. Flashback que revoluciona la recuperación de datos. En el pasado, dañar una base de datos podría tardar minutos, pero varias horas en recuperarla. Con Flashback, el tiempo para corregir los errores es igual al tiempo que llevó cometer el error. También es extremadamente fácil de utilizar, y se puede utilizar un solo comando breve para recuperar toda la base de datos en lugar de seguir algún procedimiento complejo. Flashback ofrece una interface SQL para analizar y reparar rápidamente los errores humanos. Flashback brinda reparación y análisis de grano fino para el daño localizado – como cuando se elimina el pedido erróneo de un cliente. Flashback también permite la corrección de daños más generalizados, y lo hace con rapidez para evitar un largo tiempo de baja – como cuando se eliminan todas las órdenes del mes de un cliente. Flashback es exclusivo para Oracle Database y soporta la recuperación en todos los niveles, incluso las filas, transacciones, tablas, espacios de tabla y base de datos.

Tenemos varios tipos:

•Flashback Query.-Mediante el uso de Oracle Flashback Query, los

Page 23: Analisis Comparativo

administradores pueden consultar cualquier dato del pasado. Esta poderosa característica puede utilizarse para ver y reconstruir los datos corruptos que pueden haberse eliminando o cambiado involuntariamente.

•Flashback Versions Query.-Flashback Versions Query, similar a Flashback Query, es una característica que permite que los administradores consulten cualquier dato del pasado. La diferencia y el poder detrás de Flashback Versions Query es su capacidad de recuperar diferentes versiones de una fila a través de un intervalo de tiempo especificado.

•Flashback Transaction.-A menudo, es probable que haya una corrupción lógica en una transacción que puede cambiar los datos en múltiples filas o tablas. Flashback Transaction Query permite que un administrador vea todos los cambios realizados por una transacción específica.

•Flashback Data Archive.-Flashback Data Archive es un conjunto de herramientas que ofrece a las empresas una increíble flexibilidad para administrar sus datos críticos de negocios. Claramente, las ventajas de Flashback Data Archive superan los beneficios implícitos de la reparación de fallas en los datos. Al utilizar esta tecnología, los desarrolladores y administradores de aplicaciones pueden permitir que los usuarios rastreen y vean la evolución de la información.

•Flashback Database.-Flashback Database es una nueva estrategia para restablecer toda una base de datos hasta un punto específico. Flashback Database utiliza registros flashback para retroceder la base de datos hasta un momento específico. Flashback Database, que utiliza registros flashback, es extremadamente rápido ya que solo restablece bloques que han cambiado. Fácil de utilizar y eficiente, Flashback Database puede literalmente restablecer una base de datos en cuestión de minutos, a diferencia de varias horas.

•Flashback Table.-Con frecuencia, la corrupción lógica es puesta en cuarentena en una o más tablas, no requiriendo así un restablecimiento de toda la base de datos. Flashback Table es la característica que permite al administrador recuperar una tabla, o un grupo de tablas, hasta un momento específico, con rapidez y facilidad.

•Flashback Restore Points.- Medio para simplificar y acelerar la resolución de fallas en los datos. Un punto de restablecimiento es una etiqueta definida por el usuario que marca un momento específico en el que el administrador considera que la base de datos está en buen

Page 24: Analisis Comparativo

estado. Flashback Restore Points permite a los administradores remediar, más fácil y eficientemente, sus bases de datos en caso de actividades perjudiciales o inapropiadas.

INTEGRACIÓN

SQL SERVER

Proporciona una descripción general sobre los requisitos para integrar SQL Server 2005 Reporting Services con el Centro de informes en Microsoft Office SharePoint Server 2007. Observará cómo colaboran los diferentes componentes del servidor y aprenderá sobre los vínculos agregados al Inicio rápido cuando se usa la plantilla del Centro de

Page 25: Analisis Comparativo

informes, los cuales amplían las capacidades de informe de SharePoint mediante la integración de Reporting Services.

La integración de Reporting Services con el Centro de informes requiere que los siguientes componentes estén instalados.

SQL Server Reporting Services

Aloja informes de reporting services y se comunica con office sharepoint server por medio de una interfaz de servicios web. El servidor de reporting services también administra suscripciones y el almacenamiento en caché de informes. Este servidor puede estar separado del servidor que ejecuta office sharepoint server 2007, pero se debe realizar una instalación básica de microsoft office sharepoint server 2007 en el servidor de reporting services para asegurarse de que se instale el modelo de objetos de windows sharepoint services 3.0.

SQL Server Service Pack 2

Permite la integración de office sharepoint server y reporting services en el servidor de informes.

Office Sharepoint Server 2007

Funciona como punto de acceso central para todos los informes y datos profesionales. De lo contrario, puede usar windows sharepoint services 3.0.

Complemento De Microsoft SQL Server Reporting Services Para Las Tecnologías De Microsoft Sharepoint

Incluye el elemento web del visor de informes y la nueva interfaz de usuario de administración de informes

El siguiente diagrama muestra cómo los diferentes componentes funcionan conjuntamente.

Page 26: Analisis Comparativo

Integración Con SQL Server Reporting Services

SQL Server permite una integración estrecha entre Reporting Services y los productos y las tecnologías de Microsoft SharePoint (Windows SharePoint Services 3.0 y Office SharePoint Server 2007). El Centro de informes, que es un plantilla de sitio incluida con Office SharePoint Server 2007, es compatible con la integración de SQL Server 2005 Service Pack 2 (SP2). Esta integración le permite usar el Centro de informes para ver y administrar informes directamente desde una biblioteca de documentos de SharePoint. La integración de Reporting Services con Office SharePoint Server 2007 se conoce (desde el punto de vista de SQL Server 2005) como Modo de integración con SharePoint. Si se permite que Reporting Services aloje informes solamente en la base de datos de los servicios de informes y no se integra con Office SharePoint Server 2007, se denomina Modo nativo.

 NOTA    La integración entre Reporting Services y Office SharePoint Server 2007 requiere de algún tipo de configuración para que funcione.

Page 27: Analisis Comparativo

Después de que haya instalado los componentes antes mencionados en el servidor de informes y en el servidor que ejecuta Office SharePoint Server 2007, debe configurar cada servidor. Para obtener más información sobre cómo integrar SQL Server 2005 Reporting Services con Office SharePoint Server 2007, vea el artículo Integración de la inteligencia empresarial de 2007 Microsoft Office System con SQL Server 2005 o consulte a su administrador.

Integración con el Centro de informes

Aunque los informes de Reporting Services pueden administrarse en cualquier sitio o biblioteca de documentos, Office SharePoint Server 2007 incluye la plantilla de sitio Centro de informes como una característica de fábrica para informes comerciales, y el Centro de informes se usa para crear un sitio de SharePoint para alojar informes. Cuando crea un sitio mediante el uso de esta plantilla, se agregan vínculos al Inicio rápido para que pueda administrar fácilmente los recursos de informes, como se muestra aquí.

 Documentos de datos (Informes): biblioteca de documentos para

almacenar una colección de documentos.

 Paneles de informes: lista de todos los paneles que puede

configurar.

Page 28: Analisis Comparativo

 Recursos: carpeta que contiene los siguientes recursos que pueden

usarse con los informes de Reporting Services:

Conexiones de datos    Biblioteca de documentos que contiene

orígenes de datos compartidos y/o modelos de informes que pueden

utilizarse entre todos los informes.

Calendario de informes    Lista de calendario que puede contener

cualquier información relacionada con la fecha de un informe o la

programación del informe. Por ejemplo, puede indicar en qué fechas se

actualizan o cargan los datos de informes. Este elemento no tiene

puntos de integración específicos con Reporting Services.

Biblioteca de referencia    Biblioteca de documentos donde puede

almacenar documentos para ayudar a los usuarios finales a explorar y

utilizar el Centro de informes. Este elemento no tiene puntos de

integración específicos con Reporting Services.

Después de que se haya configurado correctamente la integración entre Reporting Services y Office SharePoint Server 2007, puede crear e implementar informes en el servidor que ejecuta Office SharePoint Server 2007.

 NOTA    Para poder crear sus propios informes, un desarrollador, o su administrador, primero debe publicar un Modelo de informe para Office SharePoint Server 2007. Un Modelo de informe define el origen de datos para el informe, los parámetros de seguridad para el origen de datos, las tablas, los campos y las relaciones para la manera en que se presentan los datos en un informe.Para obtener más información sobre cómo Reporting Services y los productos y las tecnologías de SharePoint funcionan conjuntamente a fin de ayudarle a crear e implementar informes, vea Integración de Reporting Services y la tecnología de SharePoint.ORACLE

Oracle Application Integration Architecture

¿Por qué ORACLE?

Page 29: Analisis Comparativo

Oracle Application Integration Architecture es la solución de integración más completa para instrumentar unos procesos de negocio ágiles y centrados en el usuario en todas las aplicaciones de la empresa. Con Oracle Application Integration Architecture, las organizaciones pueden:

Aumentar la eficiencia de negocio y de TI

Aumentar la agilidad

Costo Total de Propiedad Más Bajo

Oracle Application Integration Architecture (AIA) está creada a partir de los productos SOA y BPM de Oracle Fusion Middleware líderes del mercado. Estos productos ofrecen una infraestructura de SOA y BPM completa para conectar aplicaciones y partners de negocio heterogéneos, gestionar procesos de negocio estructurados y no estructurados y una gestión avanzada mediante un marco unificado para el gobierno y la supervisión. Más información sobre los productos SOA y BPM de Oracle.Con Oracle Application Integration Architecture y los productos SOA y BPM de Oracle, las organizaciones pueden aprovechar un conjunto completo de herramientas, plantillas, contenidos y metodologías para conseguir más con sus actuales inversiones informáticas, proporcionar una mayor agilidad comercial e informática y reducir el coste total de titularidad.

Completa, abierta e integrada Consiga más con sus inversiones actuales

Obtenga más flexibilidad y opciones

Coste total de titularidad informática reducido

Lea PROFIT para conocer otras experiencias de éxito de clientes con AIA:

Una conexión perfecta

Aliviar el reto de la integraciónOracle Application Integration Architecture ofrece soluciones preconfiguradas para datos, procesos e interfaces de usuario, proporcionando una solución de proceso más completa a los usuarios finales de la empresa. Todos los componentes de Oracle Application Integration Architecture se diseñan para que funcionen conjuntamente en la combinación deseada, y están creados para que se configuren fácilmente ya que esto a su vez reduce el coste y la carga informática que supone crear, ampliar y mantener las integraciones.

Pre-built Integrations

Page 30: Analisis Comparativo

Oracle Application Integration Architecture (AIA) ofrece integraciones pre-construidas, ya sea directa o integraciones paquetes de integración de procesos.• Integración directa (DI): integraciones pre-construidas que gestionan los flujos de datos y sincronizaciones de datos entre aplicaciones.• Paquetes de Integración de Procesos (PIP): Ayuda a optimizar los procesos, son procesos compuestos pre-construidos de negocio en aplicaciones empresariales. Permiten a las empresas a poner en marcha los procesos básicos rápidamente.Estas integraciones pre-construidas, diseñadas para procesos de negocio y productos específicos, el uso del contenido, plantillas y metodologías incluidas en Oracle AIA Foundation Pack. Oracle AIA ofrece un enfoque abierto y basado en estándares para las organizaciones para integrar de extremo a procesos empresariales a través de una amplia gama de la costumbre, Oracle o aplicaciones de terceros.Oracle AIA se construye en el mercado de Oracle Fusion Middleware es líder en SOA y BPM productos. Estos productos ofrecen una completa infraestructura de SOA y BPM para la conexión de aplicaciones heterogéneas y socios de negocios, la gestión estructurada y no estructurada los procesos de negocio y la gestión avanzada a través de un marco unificado para la gobernanza y la supervisión. Aprenda más acerca de SOA de Oracle y de los productos BPM.Cross Application Pre-Built Integrations Highlights

• Causar Orden: Oracle CRM On Demand para JD Edwards de Oracle Mundial - proporciona la sincronización de datos de cuentas, contactos, y de los productos, integración de la información clave para apoyar la oportunidad-a-cita proceso. Hoja de datos: CRM OnDemand para JD Edwards World, CRM OD a JDE Enterprise One, CRM On Demand para E-Business Suite.

• Diseño de Publicación: ágil de Oracle Product Lifecycle Management para JD Edwards EnterpriseOne de Oracle - permite a las empresas para controlar las introducciones de nuevos productos, innovaciones de productos, y las revisiones del producto desde el diseño inicial a la liberación de la planta de fabricación con procesos estándar de aprobación. Hoja de datos: ágil a JDE Enterprise One, también disponible ágil a E-Business Suite

• Integración con SAP: Además de nuestro diseño para divulgar la integración con SAP, ahora ofrecemos Orden de efectivo y las integraciones de Oracle Customer Data Hub a SAP. Más información

Page 31: Analisis Comparativo

• Gestión de proyectos: Oracle Primavera con Oracle E-Business Suite de Oracle y Primavera de JD Edwards EnterpriseOne - ofrece una integración sin fisuras entre los dos y Oracle Primavera P6 Enterprise Project Portfolio Management. Esto permite a los usuarios crear proyectos en JD Edwards EnterpriseOne, Oracle Project Portfolio Management o P6 Enterprise Project Portfolio Management y sincronizar estructuras de proyectos, actividades, información de recursos y tareas, presupuestos, costes reales, el progreso y el costo para completar. Hoja de datos: Primavera de E-Business Suite, así como Primavera de JD Edwards EnterpriseOne

• Planificación de la Cadena de Suministro: Oracle Value Chain Planning de JD Edwards EnterpriseOne - Capacidades de los clientes a obtener no potente disponible en su solución actual para permitir que las mejores prácticas en la gestión comercial, gestión de señal de la demanda, gestión de riesgos, la oferta y la planificación de la distribución, gestión de la demanda, avanzada previsión, planificación de ventas y operaciones, el aplazamiento de inventario, la planificación de colaboración y gestión del rendimiento de planificación a nivel corporativo. Valor de Oracle planificación de la cadena de Integración a la empresa JD Edwards Hoja de datos Uno

• Administración de la Fuerza Laboral: PeopleSoft Enterprise Gestión del Capital Humano - ofrece una publicación de la persona, trabajo, y los datos de perfil a través de Enterprise Business Objects y servicios que pueden ser integrados a una aplicación de suscripción deseado. Hoja de datos de administración de la Fuerza Laboral.

• Vincular a todas las Hojas de Datos.

Industry Specific Pre-Built Integrations Highlights

• Comunicaciones: Oracle Application Integration Architecture ofrece cinco paquetes de proceso específicas de la industria de integración de la industria de las comunicaciones, la entrega de las integraciones pre-construidas para Siebel Customer Relationship Management (CRM), de la facturación de Oracle Communications and Revenue Management, y Oracle Financials, Oracle producto Hub y Oracle Información del cliente Hub.More.

• Venta al por menor de Control Financiero: Oracle Financial Control de

Page 32: Analisis Comparativo

Operaciones Integration Pack para Oracle Retail Merchandising Suite y Oracle E-Business Suite Financials - ofrece pre-configurado para apoyar la integración de valoración de inventario más eficiente, el reconocimiento de ingresos, y merchandising para pagar los procesos. Del mismo modo, también ofrecemos la integración de PeopleSoft Enterprise Financials. Hoja de datos: Comercialización al por menor a E-Business Suite Financials y también de merchandising para minoristas de Peoplesoft Finanzas.

• Alta Tecnología / Producción: Siebel CRM de Oracle Incentivos Compensación - proporciona una sostenida integrada de Oracle Application Integration Architecture solución basada en la compensación de incentivos para el CRM de Siebel instalar el sistema base incluyendo las compañías de telecomunicaciones y alta tecnología. Siebel CRM de Oracle para la Integración de incentivos de compensación Hoja de datos.

• Bienes de consumo: El Demantra Integration Pack para Siebel CRM de Bienes de Consumo se conecta Oracle Siebel Trade Promotion Management con Oracle Demantra planificación predictiva de Comercio y de Promoción del Comercio de optimización para proporcionar un completo, el comercio de la gestión integrada de promociones y solución de planificación avanzada. Bienes de consumo: Pack Intetgration Demantra para Siebel CRM Hoja de Datos.

SEGURIDAD

SQL

A continuación describiremos las diferentes técnicas utilizadas para implementar una política de seguridad en lo que se refiere al acceso autorizado a los datos de nuestra organización.

 SQL Server nos proporciona distintos mecanismos de seguridad a

través de la autenticación al sistema de base de datos y la autenticación a la base de datos en particular. Así un usuario solo puede acceder a los datos únicamente si se encuentra autenticado en el sistema de base de datos y autenticado en la base de datos a la cual quiere acceder.

 

Page 33: Analisis Comparativo

Nuestra aplicación podría hacer uso de este mecanismo para implementar la seguridad. Pero hay una cuestión interesante que debemos tener en cuenta al momento de diseñarla. Una de ellas es definir que usuario utilizaremos en el momento de establecer la conexión con la base de datos. Podríamos utilizar el usuario administrador (SA) de bases de datos, algo muy común en desarrolladores principiantes, pero muy peligroso pues estaríamos revelando la contraseña de administrador de base de datos tanto a los programadores como a los usuarios comunes en el caso de que se utilice un login en la aplicación.

 Además, si bien podemos restringir el acceso a los datos del lado

de la aplicación al programar solo la visualización de parte de la información de nuestra organización, no lo hacemos del lado de la base de datos, pues con el analizador de consulta que posee SQL Server, o simplemente con un aplicación que permita el acceso a datos mediante ODBC como Microsoft Excel, es posible acceder a cualquier tabla de nuestra base de datos, más aun conociendo la contraseña de administrador y con la consiguiente posibilidad de causar daños tanto accidentales como intencionados a ésta.

 Otra desventaja que posee la cuenta de administrador (sa) es una

mayor vulnerabilidad a ataques por fuerza bruta para descubrir su contraseña.

 Una solución a esto es que definamos usuarios de base de datos,

únicamente con los permisos requeridos para su desempeño y permitamos que cada usuario inicie una sesión en el servidor a través de la aplicación.

Puede ampliar la imagen haciendo clic.

Por ejemplo creamos el Usuario ‘Juan’ con la contraseña ‘Clave’: sp_addlogin 'Juan', 'Clave' GO             Le damos acceso a la base de datos Northwind: USE NorthwindGOsp_grantdbaccess 'Juan'GO 

Page 34: Analisis Comparativo

            Y realizamos una pequeña prueba en el analizador de consultas con los siguientes datos:           Login name: JuanPassword: Clave             Al entrar probamos esta consulta: USE NorthwindGOSELECT * FROM Products (77 row(s) affected)             Como podemos ver, la consulta nos devuelve la lista de productos de nuestra base de datos. 

Ahora bien, imaginemos una base de datos de gran cantidad de tablas, cada una con gran cantidad de columnas y una gran cantidad de usuarios con una administración de permisos muy compleja. Deberíamos hacernos de paciencia para registrar el permiso necesario para cada columna de cada tabla para cada usuario. Esto es muy difícil de realizar y mantener. Y aún con esta especificación explicita de acceso a los datos, es posible acceder a información que esta negada por la aplicación a través del analizador de consulta. Un ejemplo es el acceso a aquella información utilizada para elaborar resúmenes, aun cuando del lado de la aplicación solo se muestra el resumen.

 La ventaja que logramos al definir usuarios de bases de datos

(usuario de inicio de sesión) es que se pueda realizar una auditoría y delegar la autorización de acceso a datos al servidor de base de datos.

Como vemos el inconveniente se encuentra en que el usuario de la aplicación puede acceder no solo desde la aplicación sino también desde el analizador de consulta de SQL Server u otras aplicaciones, pudiendo robar información, algo que desde la aplicación no lo podría realizar.

 Una manera en la que podríamos resolver este inconveniente es utilizar una técnica llamada Mapeo de contraseña. Básicamente, esta técnica consiste en que cada usuario posea un Nombre de usuario y una contraseña. En nuestra base de datos existe una tabla con el nombre de usuario, la contraseña asignada y la contraseña real. Cada vez que un usuario inicie la sesión en la aplicación lo hará con la contraseña asignada. El sistema deberá acceder a la tabla para buscar la contraseña real del usuario y utilizar la misma para las consultas siguientes en la base de datos. De esta manera el usuario desconoce la

Page 35: Analisis Comparativo

contraseña real para el inicio de sesión en la base de datos y no podrá acceder a la misma mediante otro medio.

Una cuestión importante que debemos tener en cuenta es donde ubicar la tabla que se utiliza para el mapeo de contraseña y con que usuario se accederá a la misma. 

Una estrategia alternativa es que utilicemos lo que se conoce como Roles de Aplicación o Función de Aplicación. Los roles de aplicación son un conjunto de permisos que inicialmente están inactivos. Cada usuario de la base de datos puede ser agregado a los roles de aplicación y así heredar los permisos que están definidos para dichos roles.

 De esta manera, cada usuario puede tener negado el acceso a los

datos de la base de datos y en el momento de iniciar la aplicación, solo la misma podrá activar el rol mediante la ejecución de un procedimiento almacenado especial y así heredar los permisos.

 Por ejemplo, al usuario ‘Juan’ le quitamos los permisos de lectura y

escritura entrando al analizador de consultas con el usuario administrador (sa) y ejecutando las siguientes instrucciones: 

--Quitamos el permiso de escriturasp_addrolemember 'db_denydatawriter', 'Juan'   GO 

--Quitamos el permiso de lecturasp_addrolemember 'db_denydatareader', 'Juan'GO

Ahora, si volvemos a realizar las consultas planteadas en el ejemplo anterior, veremos que ya no tenemos acceso a la tabla Products, ni a ninguna otra tabla de la base de datos.

 A continuación crearemos un rol de aplicación ‘MiRol’ con

contraseña ‘deaplicacion’ y con acceso total a la base de datos Northwind entrando al analizador de consultas con el usuario administrador (sa):

Page 36: Analisis Comparativo

 USE NorthwindGOEXEC sp_addapprole 'MiRol', 'deaplicacion'GO 

Para ver el funcionamiento del rol de aplicación ingresamos al analizador de consultas con el usuario ‘Juan’ y la contraseña ‘Clave’.

 Si volvemos a realizar las consultas, notaremos que el

usuario ‘Juan’ continúa sin permisos de lectura y escritura. Usaremos entonces el rol de aplicación para que ‘Juan’ tenga acceso a la base de datos Northwind mientras este activado el rol. Para ello ejecutaremos el procedimiento almacenado sp_setapprole de la siguiente forma: USE NorthwindGOEXEC sp_setapprole 'MiRol', {Encrypt N 'deaplicacion'}, 'odbc' 

Este procedimiento almacenado nos habilita el rol de aplicación creado, heredando los permisos asignados a este.

 Si a continuación, ejecutamos la siguiente consulta: 

SELECT * FROM Products (77 row(s) affected)

 Se devolvieron los datos como si ‘Juan’ tuviese acceso a los datos.

En efecto, el usuario ‘Juan’ heredó los permisos asignados al rol de aplicación que creamos anteriormente.

 Para comprobar el usuario podemos ejecutar la siguiente consulta:

 Select Suser_sname() Juan (1 row(s) affected)             SQL sigue teniendo como usuario logueado a ‘Juan’

 Podríamos incluir la activación del rol en el código de nuestra

aplicación cliente y al cerrar la conexión se perdería dicho privilegio. 

Page 37: Analisis Comparativo

Los roles de aplicación se caracterizan por:

   No existen roles de aplicación pre-definidos.   No contener miembros, solo son un conjunto de permisos que

se activan en el momento de iniciar la sesión.   Estar inactivos y requerir una contraseña para activarse.   Pasar por alto los permisos estándares. Cuando una aplicación

activa usa rol de aplicación para una conexión, la conexión pierde, de forma permanente, todos los permisos aplicados al nombre de inicio de sesión, a la cuenta de usuario o a otros grupos o funciones de base de datos de todas las bases de datos.

   Existir solo para la aplicación para la cual el rol se activa, y solo hasta que ésta se cierra.

   Ser específicos a la base de datos. Después de activar un rol de aplicación en una base de datos, si la aplicación quiere ejecutar una transacción a través de base de datos, las otras bases de datos tienen que tener habilitado una cuenta de usuario invitado. 

Los roles de aplicación se diferencian del mapeo en la administración de los permisos. Mientras que en el mapeo se requiere que se concedan permisos individuales a cada usuario, en los roles de aplicación los permisos se agrupan y cada usuario los va a heredar cuando la aplicación active el rol.

 Una desventaja de este mecanismo es que se requiere de una

contraseña para activar el rol, la cual debe ser concedida por la aplicación en el momento de activar el rol.

 Para evitar que la contraseña se encuentre en la aplicación, se

puede almacenar la contraseña de manera encriptado en la base de datos y la aplicación se encargaría de descriptar la contraseña y utilizarla para activar el rol.

Veamos ahora la manera de crear un rol de aplicación. Hay dos formas de hacerlo, una es mediante el administrador corporativo de SQL Server 2000 y la otra es mediante Transact-SQL. Para crear un rol de aplicación mediante el administrador corporativo, primero debemos posicionarnos en la base de datos en la cual vamos a crear el rol de aplicación. Hacemos un clic con el botón secundario del Mouse en Funciones y a continuación hacemos clic en Nueva Función De Base De Datos. En el cuadro que aparece escribimos el nombre de la Función de Aplicación y en el tipo de función de base de datos hacemos clic en Función de aplicación y a continuación escribimos la contraseña.

 

Page 38: Analisis Comparativo

Una vez creada debemos editar las propiedades y asignar los permisos que va a tener esa función de aplicación. Para editar las propiedades debemos posicionarnos sobre la función de aplicación y debemos hacer clic con el botón secundario del Mouse, eligiendo en el menú contextual que aparece la opción de propiedades. Luego en el cuadro que aparece hacemos clic en permisos y activamos los diferentes permisos según las necesidades que se requieren.

Puede ampliar la imagen haciendo clicAhora explicaremos como se crea una función de aplicación

mediante Transact -SQL. Para ello hacemos uso de un procedimiento almacenado de SQL llamado sp_addapprole el cual agrega una función en la base de datos actual. Los parámetros utilizados para este procedimiento almacenado son el nombre de la función y el password. A continuación se muestra la sintaxis de la función de aplicación:

 sp_addapprole [ @rolename = ] 'role' , [ @password = ] 'password' 

Ejemplo: EXEC  sp_addapprole ‘mifuncion’, ‘1234’ 

Es importante aclarar que el password se almacena en formato cifrado.

 El valor que retornar este procedimiento almacenado es 0(cero) en

el caso de que se haya creado la función de aplicación de manera correcta y 1(uno) en caso contrario.

 No cualquier usuario pude crear una función de aplicación, solo los

usuarios que pertenecen al grupo desysadmin, db_securityadmin y db_owner. 

Sabiendo como se crean los roles de aplicación, es importante conocer como se los quitan de la base de dato por cuestiones de mantenimiento. Acá también tenemos dos maneras para eliminar un rol de aplicación de la base de datos, una es a través del administrador corporativo de SQL Server 2000 y la otra es a través de Transact -SQL.

Con el administrador corporativo solo debemos expandir la base de datos en donde se encuentra la función de aplicación que queremos eliminar y luego posicionarnos sobre funciones. Buscamos la función de aplicación a eliminar, hacemos clic con el botón secundario del Mouse y a continuación hacemos clic en eliminar.

Page 39: Analisis Comparativo

Mediante Transact–SQL debemos podemos hacerlo utilizando el procedimiento almacenado sp_dropapprole, al cual solo debemos pasarle como argumento el nombre del rol a eliminar. sp_dropapprole [@rolename =] 'role'             Ejemplo: EXEC sp_dropapprole ‘mifuncion’ 

Este procedimiento almacenado devuelve 0(cero) si la eliminación fue correcta y 1(uno)  en caso contrario.

Al igual que la creación de la función, la eliminación solo la puede realizar los usuarios que pertenecen al grupo de sysadmin, db_securityadmin y db_owner. 

Para activar los permisos asociados a una función de aplicación en la base de datos actual se debe ejecutar el procedimiento almacenado sp_setapprole:

 sp_setapprole [@rolename =] 'role', [@password =] {Encrypt N 'password'} | 'password'    [,[@encrypt =]'encrypt_style'] 

Los argumentos que posee este procedimiento almacenado son el nombre de la funciona a activar (role), y el password. Es interesante aclarar que al password se lo puede encriptar mediante una función canónica Encrypt de ODBC. Esta función utiliza una cadena Unicode por lo que el password debe ser convertido a este formato. Esto se logra anteponiendo al password la letra N. Es importante aclarar que esta opción de encriptación solo es válida para proveedores ODBC, otros proveedores no podrán utilizar esta opción.

 Por último el argumento encrypt especifica el tipo de cifrado que

puede ser ninguno o odbc. 

            Ejemplo: Activar una función de aplicación sin cifrar la contraseña EXEC sp_setapprole 'mifuncion', '1234'             Ejemplo: Activar una función de aplicación y cifrar la contraseña EXEC sp_setapprole 'mifuncion', {Encrypt N '1234'}, 'odbc' 

Page 40: Analisis Comparativo

La ejecución de este procedimiento almacenado retornará como resultado un 0(cero) si la activación fue correcta y un 1(uno) en caso contrario.

 En cuanto a los permisos este procedimiento almacenado puede

ser ejecutado por cualquier usuario, por eso es importante el uso de una contraseña para activar la función de aplicación.

 Para poder cambiar la contraseña de un rol de aplicación es

necesario ejecutar el siguiente procedimiento almacenado: 

sp_approlepassword [ @rolename = ] 'role', [ @newpwd = ] 'password' Ejemplo: EXEC sp_approlepassword 'Mifuncion', '9999' 

Donde role es el nombre del rol a modificar la contraseña y password es la nueva contraseña.

 En cuanto a los permisos, sólo los miembros de la función fija de

servidor sysadmin o de las funciones fijas de base de datos db_securityadmin y db_owner pueden ejecutar sp_approlepassword.  Hemos vistos diferentes técnicas de cómo se puede autorizar el acceso a los dato de una organización y que ventajas y desventajas posee cada técnica. Es difícil decir de antemano que técnica conviene utilizar. Todo depende de la cantidad de usuarios que van a estar en contacto con el sistema y que tan expuesto puede estar el mismo.

Pero es importante conocer que una buena forma de implementar la seguridad es a través de los roles de aplicación. Primero por que restringe el acceso a los datos desde otras aplicaciones que utilicen ODBC, segundo por que ayuda a administrar los permisos de usuarios conformando grupos de permisos y tercero porque es una técnica que nos provee el Motor de Bases de Datos de SQL Server.

No obstante debemos utilizar mecanismos de encriptación en nuestro sistema para poder proteger la contraseña de ejecución de las funciones de aplicación.

Page 41: Analisis Comparativo

ORACLE

Desde el principio, Oracle ha ofrecido la tecnología más avanzada del sector para proteger los datos donde residen— en la base de datos.

Oracle brinda una cartera completa de soluciones de seguridad para garantizar la privacidad de datos, protegerse contra amenazas internas y posibilitar el cumplimiento regulatorio.

Con el avanzado control de acceso de factores múltiples y usuarios privilegiados, clasificación de datos, encriptación transparente de datos, auditoría, monitoreo y data masking  de Oracle, los clientes pueden implementar soluciones confiables, económicas, que no requieren cambios en las aplicaciones.

Oracle Database Vault, una opción de Oracle Database 10g Release 2 Enterprise Edition, le permite controlar quién, cuándo, y dónde acceder a los datos y aplicaciones—protegiendo sus empresas frente a las preocupaciones más comunes de seguridad: amenazas que provienen de malas intenciones, negligencia, o simples descuidos. Al imponer la separación de tareas, incluso entre los administradores, Oracle Database Vault sirve además como control avanzado de prevención para ayudar a satisfacer los exigentes y actuales requerimientos de privacidad y cumplimiento.

BENEFICIOS

Protección frente a las Amenazas Internas. Las reglas y Realms personalizables ofrecen capacidades de autorización de factores múltiples para garantizar que los usuarios, e incluso los administradores únicamente tengan acceso a la información necesaria para desempeñar sus trabajosAcceso Restringido a los Datos Sensibles. Impone el acceso sobre la base de múltiples requerimientos para brindar mayor seguridad de que los usuarios son quienes declaran serImposición del Cumplimiento con Facilidad. Una interface administrativa fácil de utilizar simplifica la implementación de los controles de cumplimiento automatizados con unos pocos clicks de su mouse

CONOZCA MÁS

Preguntas Frecuentes: Oracle Database Vault 

Hoja de datos: Oracle Database Vault 

Informe ejecutivo: Oracle Database 10g Release 2, Database Vault

Page 42: Analisis Comparativo

Recursos técnicos: Visite la página Oracle Database Vault  en Oracle Technology Network

NOTICIAS Y EVENTOS

Comunicados de Prensa: Consulte la Sala de Prensa y descubra las novedades de Oracle Database Management Packs

Eventos: Visite la sección de Eventos y encuentre los Webcast, Seminarios y Eventos más destacados de Oracle Database Management Packs

Oracle Label Security

Oracle Label Security—una opción de Oracle Database 11g Enterprise Edition—agrega más protección a su información sensible. Brinda capacidades de seguridad en múltiples niveles a fin de proteger el acceso a los datos hasta las filas individuales de tablas y aborda los problemas de privacidad y seguridad de datos del mundo real a los que se enfrentan el Gobierno y las entidades comerciales de todo el mundo.

Oracle Label Security puede combinarse con Virtual Private Database, Secure Application Roles, yOracle Database Vault a fin de brindar soluciones avanzadas para proteger la información personalmente identificable (inglés).

BENEFICIOS

Control de acceso basado en la sensibilidad de los datos—Oracle es el primer proveedor de base de datos del sector que ofrece seguridad en múltiples niveles y una sólida protección y divulgación selectiva de la información. Oracle Label Security es la opción ideal para las organizaciones gubernamentales y otras instituciones que buscan proteger la información clasificada.

Exigencia de cumplimiento—El control minucioso de acceso implementa y mantiene la seguridad del nivel de filas para los datos sensibles y brinda las mejores opciones para satisfacer las regulaciones de cumplimiento y privacidad como SOX y HIPPA.

Fácil de implementar—La administración y la exigencia de seguridad en múltiples niveles puede administrarse directamente a través de Oracle Database Enterprise Manager o de Oracle Identity Manager, que ofrecen más flexibilidad.

Page 43: Analisis Comparativo

CONOZCA MÁS

Oracle Magazine: Utilizar Oracle Label Security para aplicar controles de acceso y reducir el gasto general en la administración de sus aplicaciones comerciales clave.

Información Técnica: Oracle Label Security en Oracle Technology Network.

Hoja de datos: Oracle Label Security.

Informe Ejecutivo: Oracle Label Security para Privacidad y Cumplimiento (inglés - PDF), Mejores Prácticas para las Aplicaciones del Sector de Defensa y Gobierno.

Boletín Informativo: Información Detallada de Oracle - Dentro de la Base de Datos.

Seminarios por Internet: Oracle Label Security: Control de Acceso Transparente Basado en Etiquetas.

CNet: Cumplimiento y Seguridad de Datos.

NOTICIAS Y EVENTOS

Comunicados de Prensa: Consulte la Sala de Prensa y descubra las novedades de Oracle Label Security

Eventos: Visite la sección de Eventos y encuentre los Webcast, Seminarios y Eventos más destacados de Oracle Label Security

Oracle Advanced Security

Oracle Advanced Security—una opción de Oracle Database 11g Enterprise Edition—ofrece amplia protección de datos a fin de asegurar tanto la información inactiva como la que se encuentra en tránsito. Combina la encriptación de red, la encriptación transparente de datos de todo tipo y espacios de tabla completos, y una sólida autenticación para ayudar a los clientes a abordar los

Page 44: Analisis Comparativo

requerimientos de cumplimiento y privacidad de datos.

BENEFICIOS

Aplicaciones sin modificación—Solo Oracle permite encriptar datos sensibles en la base de datos o cuando navega a través de su red sin requerir ningún cambio en las aplicaciones

Mayor protección para su información más crítica—Oracle ofrece las capacidades de seguridad más avanzadas; con inclusión de la Encriptación Transparente de Datos, la Base de Datos Privada Virtual, roles seguros, sólido soporte de autenticación, y mucho más

Facilidad para cumplir con los requisitos de cumplimiento—Proteja los datos sensibles, como por ejemplo los números de tarjetas de crédito o del seguro social, con la única solución para encriptación en el nivel de columnas a fin de satisfacer las regulaciones de cumplimiento y privacidad como PII, California Senate Bill 1386, entre otras

Oracle Audit Vault

Oracle Audit Vault es un sistema automatizado que recopila y analiza los datos de auditoría de múltiples sistemas, incluida la base de datos y los sistemas operativos Oracle, y también captura la información clave de los registros de transacciones. Al consolidar la información de auditoría en un "depósito de auditoría" seguro, Oracle Audit Vault ofrece informes y administración centralizados para datos vitales de auditoría. Con Oracle Audit Vault, las organizaciones están en una posición mucho mejor para hacer cumplir las políticas de privacidad, controlar las amenazas de intrusos, y cumplir con los requisitos regulatorios como Sarbanes-Oxley y PCI.

Page 45: Analisis Comparativo

BENEFICIOS

Simplificar los informes de cumplimiento—Analizar fácilmente los datos de auditoría y tomar medidas de manera puntual con informes listos para usar o información personalizada mediante el único esquema de depósito abierto del sector para la información de auditoría

Detectar las amenazas con rapidez—Detectar rápida y automáticamente las actividades no autorizadas que violan la seguridad y las políticas gubernamentales; evitar que los culpables eliminen sus rastros

Reducir los costos de IT con políticas de auditoría—Administrar centralmente las configuraciones de auditoría en todas las bases de datos desde una sola consola

Recopilar y consolidar los datos de auditoría de manera transparente—Recopilar los datos de auditoría de manera puntual a través de diversos sistemas

Ofrecer un repositorio seguro y escalable—Aprovechar la tecnología líder en el sector respecto de la seguridad y el depósito de datos de Oracle para brindar un depósito de auditoría seguro y escalable

Page 46: Analisis Comparativo

Oracle Enterprise Manager 11g 

Hoy en día, las organizaciones de TI deben gestionar de forma proactiva muchas tecnologías, que van desde la arquitectura orientada a servicios (SOA) para la computación en nube, a la vez que mantener un nivel consistente de servicio para los usuarios de negocio y clientes. En este entorno dinámico de TI, las organizaciones de TI necesitan una visión completa de la salud de las transacciones comerciales, ya que los servicios empresariales a través de recorrer los diferentes niveles de tecnología y la necesidad de responder a las necesidades del negocio. Necesidades de TI para responder a las necesidades empresariales en un idioma que las empresas esperan.

Oracle Enterprise Manager aborda estas cuestiones con un enfoque nuevo y audaz, que incorpora los puntos clave de la integración entre los procesos de gestión de TI, procesos de negocio, y la comunidad Oracle. Como proveedor de aplicaciones empresariales, software e infraestructura de hardware, y un conjunto completo de herramientas de gestión, Oracle se encuentra en una posición única para ofrecer un nuevo enfoque de negocio orientado a la gestión de TI. Este enfoque nuevo y único permite a las organizaciones de TI a impulsar la eficiencia y la agilidad del negocio.

Oracle Enterprise Manager 11g ofrece:

• Aplicaciones de negocio impulsado por Gestión• Aplicación integrada para la gestión de disco• Sistema Integrado de Gestión y Apoyo Experiencia

Product Focus Areas

Application Management Host / Server Management

Database Management Application Testing Suite

Page 47: Analisis Comparativo

SOA and Middleware Management

Identity Management

Real User Experience Insight Virtualization Management

Grid Engine Ops Center

Management Solution Focus Areas

Configuration Management Application Performance Management

Software Lifecycle Automation Application Quality Management

       

Enterprise Manager Focus Areas

System Monitoring Architecture and Deployment Best Practices

Extensibility (Plug-Ins & Connectors)

Maximum Availability Architecture (EM High Availability)

CONCLUSION

La variedad de SMBD es altísima, es de gran importancia saber cual escoger bajo los parámetros mencionados anteriormente. La característica general de los sistemas de gestor de bases de datos es el de manejar de manera clara, sencilla y ordenada un conjunto de datos que posteriormente se convertirán en información relevante para una organización. Las necesidades y requerimientos de los usuarios han llevado a la creación de innovaciones de producto significativas para facilitar la utilización, escalabilidad, confiabilidad y almacenamiento de datos para dichos sistemas. Realizar esta investigación nos ha permitido conocer más acerca de las diferencias y similitudes que pueden tener los SMBD, en este caso tomando como punto de análisis un software

Page 48: Analisis Comparativo

libre como lo es SQL SERVER contra uno propietario, ORACLE. Hacer una comparación no es una tarea fácil pues ambos SMBD (SQL Server Vs Oracle) representan características significativas que los distinguen y esto es lo que nos lleva a su utilización. Siempre que se necesite implementar una solución donde se consideren SMBD, se debe estudiar con cuidado el caso, lo cual va determinar cuál es el software que se debe utilizar de acuerdo a los requerimientos y criterios necesarios.

Con este análisis comparativo los gerentes de muchas empresas y desarrolladores pueden decidir según sus proyectos que motor de base de datos usar de acuerdo a sus necesidades, presupuesto o afinidad. Es necesario que en los análisis de evaluación de software se tomen en cuenta las herramientas Open Source para que el usuario final, desarrolladores y empresas puedan ver las ventajas y desventajas entre los productos propietarios y libres.

Podemos mencionar también que una diferencia muy importante entre los dos es, SQL Server se ejecuta sólo en la plataforma Windows, mientras que Oracle se ejecuta en una variedad de plataformas como Unix, Linux, Solaris, etc, y los objetos de base de datos son perfectamente portable a través de estas plataformas.

Probablemente la presencia de múltiples plataformas explica la cuota de mercado: Oracle subió tapas con una cuota del 48,6%, seguida por IBM y Microsoft el 22% a 15%.