Você está na página 1de 13

Oracle Database Gateway

El acceso a datos heterogneos es un problema que afecta a una gran cantidad de


empresas. Muchos de ellos ejecutan varios sistemas de bases de datos diferentes. Cada
uno de estos sistemas y almacenes de datos tiene un conjunto de aplicaciones que se
ejecutan en su contra. La consolidacin de estos datos en un sistema de base de datos
es a menudo difcil - en gran parte debido al hecho de que muchas de las aplicaciones
que se ejecutan en una base de datos no pueden tener un equivalente que se ejecuta
en contra de otro.

Gateway tiene la capacidad de traducir el dialecto de un sistema a otro. Oracle ha


adaptado Gateway a muchos
sistemas, DB2, Sybase, Informix, SQL
Server, IMS, VSAM, Adabas, por nombrar
algunos. Estos se codifican
especficamente para el sistema de
destino no Oracle. Proporcionan una
solucin optimizada y tambin de
extremo a extremo certificado.
Oracle tambin ofrece Gateway para
ODBC. Es una solucin genrica que
utiliza un controlador ODBC para acceder
a cualquier ODBC sistema no-Oracle
compatible.

Arquitectura

La tecnologa de Gateway se compone de dos partes: un componente que tiene la


tecnologa genrica para conectarse a un sistema no-Oracle, que es comn a
todos los sistemas que no son de Oracle, denominado Servicios heterogneos
(HS) y un componente que es objetivo especfico, llamado agente. Servicios
heterogneos en conjunto con el agente permite un acceso transparente a los
sistemas no-Oracle de un entorno Oracle.

Tecnologa de Servicios
Proporciona la tecnologa genrica para la conexin a los sistemas de no Oracle y es
Heterogneos
el poder de procesamiento de Gateway. Como un componente integrado de la base
de datos, Servicios Heterogneos puede explotar caractersticas de la base de
datos, tales como el anlisis SQL de gran alcance y capacidades de optimizacin.
Servicios heterogneos extienden el motor SQL de Oracle para reconocer el SQL y
capacidades de procedimiento del sistema de no-Oracle remota y las asignaciones
necesarias para obtener la necesaria informacin del diccionario de datos.

Ofrece dos tipos de traducciones: la capacidad de traducir Oracle SQL en el dialecto


correcto del sistema no-Oracle, as como de datos de traduccin de diccionario que
muestra los metadatos del sistema de no-Oracle en el formato local.

Agente

Las capacidades, las correlaciones de SQL, conversiones de tipos de datos y la


interfaz para el sistema no Oracle remota estn contenidos en el agente. El agente
interacta con los servicios heterogneos para proporcionar la conectividad
transparente entre Oracle y sistemas no-Oracle.

Caractersticas Principales
Transparencia de ubicacin: Los usuarios no necesitan estar al tanto de la ubicacin fsica
de los datos, slo los nombres de las tablas para acceder.
Comprometer la transparencia: Distribuidos y no distribuidos las transacciones estn
comprometidos con el estndar-ANSI SQL COMMIT. Oracle detecta automticamente cuando
una transaccin se distribuye y utiliza un protocolo de confirmacin en dos fases para
garantizar la integridad de la transaccin y la coherencia.
Confirmacin en dos fases: Oracle apoya confirmacin en dos fases con los almacenes no
Oracle. Cuando una interfaz pblica de confirmacin en dos fases no est disponible, puede
ser apoyada cuando las transacciones distribuidas implican Oracle y una sola no-Oracle no
realizada en almacenes
Traduccin de Tipo de datos: Realiza traducciones automticas de tipos de datos entre el
Oracle Sever y el sistema no-Oracle

Traduccin de Diccionario de datos: Metadatos del sistema no-Oracle se traducen y se muestran en el formato de
Oracle

Acceso de lectura / escritura: Tanto las capacidades de consulta y actualizacin son compatibles con la mayora de
los sistemas no-Oracle

Movilidad Gateway: El Gateway, el sistema no-Oracle y el servidor de Oracle pueden todos residen en diferentes
mquinas

Procedimientos almacenados a distancia: Soporta ejecucin de procedimientos almacenados definidos en el


sistema de no-Oracle

Result Set: Soporta la capacidad de devolver Result Sets desde procedimientos almacenados

Soporte para los LOB: los tipo de datos LOB se admite para la mayora de los sistemas no-Oracle

Tipos de datos Fecha Hora: Soporta los tipos de datos de fecha y hora en Oracle SQL y procedimientos almacenados

Partes LONG: Soporte completo de tipo de datos LONG por el manejo por partes de los datos

Pasar a travs del SQL(PassThrough SQL): permite al SQL nativo (incluyendo DDL) del objetivo del sistema de
Oracle no se transmite directamente

Seguridad de inicio de sesin: Hace cumplir las autorizaciones de acceso para el acceso remoto

Cifrado de datos: Disponible con opcin de seguridad avanzada de Oracle

NLS y Apoyo NCHAR: Permite conectividad a sistemas que no son de Oracle utilizando conjuntos de caracteres multibyte

Generado de consultas cach SQL: consultas en lenguaje no-Oracle se generan y almacenan en cach en el Shared
Pool de Oracle, por lo que es ms eficiente para su reutilizacin cuando tales consultas se utilizan con frecuencia por
varias sesiones de cliente

Cach local: Informacin sobre las capacidades, traducciones SQL y traduccin del diccionario de datos se almacenan
localmente, lo que reduce el trfico de red

Optimizaciones distribuidas de SQL: Mejora el rendimiento de las operaciones multi-sitio JOIN y SET.

Conectando sistemas diferentes


Aunque las interfaces de usuario para diferentes sistemas noOracle basados en estndares SQL pueden parecen funcionar de
forma idntica, puede haber diferencias sutiles (y no tan sutil)
entre estos sistemas no-Oracle. Estas diferencias pueden impedir
que los sistemas diferentes de interoperar con eficacia.
En general, hay tres reas de operacin que pueden impedir la
interoperabilidad efectiva:

Traduccin SQL

Traduccin de Diccionario de Datos

Traduccin de Tipo de Datos.

Traduccin SQL
A pesar de que un almacn de datos relacional puede estar basada
en estndares SQL, puede haber diferencias sutiles entre los
fabricantes de la aplicacin.
- Oracle
SELECT TO_UPPER(ename) FROM emp;
- no-Oracle
SELECT UPPERCASE(ename) FROM emp;

La solucin heterognea debe traducir automticamente el


dialecto del sistema ajeno a la del sistema local. Esta solucin
tambin debe ocurrir de forma transparente.

Traduccin de diccionario de datos


Diferentes fabricantes tienen sus propios mtodos de almacenar los
metadatos en un diccionario de datos y la visualizacin de estos datos.
Por eso se requiere un mecanismo que permita una consulta de los datos
en un sistema diferente remoto que se muestra en el formato del sistema
local.
- Oracle
SELECT * FROM sys.dba_objects
WHERE object_type = TABLE;
- no-Oracle
SELECT * FROM catalog_objects
WHERE object_name LIKE %EP%
AND object_type = TABLE;

Traduccin de tipo de datos


A diferencia de las traducciones SQL y diccionario de datos que
se realizan por los Servicios Heterogneos en la base de datos
Oracle, la traduccin de tipo de datos son realizados por el
Gateway:
Hay dos razones para esto:

Reduccin de sobrecarga

Conversin de tipos de datos no compatibles

La realizacin de la traduccin tipo de datos en el Gateway


proporciona la capacidad del Gateway para convertir tipos de
datos no compatibles con un tipo de datos que Oracle soporta.

SOLUCION DE INTEGRACION DE
DATOS SINCRONICOS DE ORACLE

Para cumplir con los requisitos descritos antes, Oracle ofrece Database
Gateway. Esta solucin es una combinacin del componente de Servicios
Heterogneos (HS) que se integra en la base de datos Oracle y un Gateway,
que proporciona informacin para y la conectividad a sistemas que no son de
Oracle.

Como un componente integrado de la base de datos Oracle, Servicios heterogneos ofrece


los siguientes servicios:
Servicio de Transaccin
Servicio de SQL
Servicio Procesal
Adems de los servicios antes mencionados, servicios heterogneos proporciona la
capacidad de emitir SQL nativo del sistema no-Oracle destino. Esta funcin se conoce como
PassThrough SQL.

Servicio de transacciones

El servicio de transacciones asegura que el entorno Oracle puede administrar


sesiones autenticadas con sistemas no-Oracle. Esta gestin de sesiones incluye
el establecimiento de la conexin cuando se accede inicialmente el sistema noOracle y transparente de cerrar la conexin con el sistema de no-Oracle cuando
la sesin de cliente de Oracle se ha completado.

El servicio de transacciones tambin asegura que las transacciones distribuidas


mantendrn la integridad de datos global. Especficamente, Oracle utiliza un
protocolo de confirmacin en dos fases para mantener la integridad de datos
global, incluso si el sistema no-Oracle no soporta de forma nativa un protocolo
de confirmacin en dos fases.

Servicio SQL

El servicio de SQL proporciona las capacidades de traduccin necesarios para


hacer frente a dos de los tres tipos de traducciones que son necesarios para
conectar sistemas:

SQL Traduccin: El servicio de SQL proporciona las capacidades de traduccin


para traducir Oracle SQL en el dialecto SQL adecuado del sistema de no-Oracle. El
servicio de SQL utiliza la informacin proporcionada por el Gateway a traducir
Oracle SQL para el dialecto apropiado.

Traduccin de diccionario de datos: El servicio de SQL reescribe cualquier


referencia a una tabla de diccionario de datos en la consulta de un sistema noOracle de manera que el conjunto de resultados aparece como si se recupera de
un diccionario de datos de Oracle.

Servicio Procesal

Servicio Procesal proporciona una interfaz de programacin de la ejecucin de los


procedimientos almacenados en un sistema no-Oracle. Servicio Procesal, por
ejemplo, permite a un entorno Oracle para acceder a los sistemas procesales,
tales como un sistema de mensajera o de cola. En concreto, el servicio de
procedimiento asigna una llamada PL / SQL en un procedimiento o funcin de
llamada equivalente en el sistema de no-Oracle

PassThrough SQL (SQL de paso)

PassThrough SQL proporciona la facilidad de emitir SQL nativo contra un sistema


no-Oracle. Esta flexibilidad le permite ejecutar funciones o procedimientos en el
sistema no-Oracle que no se apoya en el Gateway. PassThrough SQL soporta
ambos conjuntos de resultados y se unen variables. PassThrough SQL se puede
utilizar para realizar DDL en el sistema no-Oracle.

Você também pode gostar