¿Qué hay en la topología? ODI utiliza este navegador topología para acceder a los recursos disponibles en el sistema de información para llevar a cabo nuestras tareas de integración. ¿Qué hay en la topología !i se observa la imagen de aba"o# se puede asumir usted mismo lo $ue hay en la topología •
ar$uitectura física
% &ecnologías' Oracle# D()# archivos# etc. % &ipos de datos para la tecnología determinada % !ervidores de Datos' De*nición de los servidores# bases de datos# etc. % +s$uemas' ,as subdivisiones de los servidores de datos como es$uemas físicos y de traba"o % -gentes' componentes de e"ecución ODI Contextos: Mapeo lógico física
•
,ógico ar$uitectura
% &ecnologías y -gentes •
idiomas
•
repositorios
•
enérico /omportamiento
¿Qué es un servidor de datos
0n servidor de datos es cual$uier sistema $ue es capaz de almacenar datos y ponerla a disposición en forma de tablas. 0n servidor de datos est1 siempre unido a una tecnología especí*ca# tales como Oracle# Oracle +ssbase# !ybase# +2tensible 3ar4up ,anguage 563,7# o 3icrosoft -ccess# etc .. -rchivo 0n servidor de datos puede no ser siempre s iempre una D(3! tradicional. !e establece la cone2ión entre nuestro estudio de ODI a nuestros sistemas de origen y de destino a través de 8D(/ o cone2ión 89DI. /ada servidor de datos físico se debe de*nir una vez en la topología. /reación de datos del servidor :.;aga clic en la &ecnología# &ecnología# a continuación# haga clic en el nuevo servidor de datos. ). 0na vez $ue haga clic en el servidor de datos una nueva ventana se abrir1. < +n la pesta=a 9ombre de de*nición de datos debería ser m1s severa >tecnología? @ >nombre de servidor de datos? 5Oracle recomendado7 o >tecnología? @ >nombre de servidor de datos? @ >ubicación? 5me"ores pr1cticas7 < /ambiar la tecnología de la lista desplegable. A.In la cadena de cone2ión indi$ue los detalles de usuario $ue tiene derechos de D(- !B!. < !iempre es recomendable proporcionar la forma predeterminada predeterminada !B! -! !B!D(- de datos de usuario.
/reación de datos del servidor
C.In el controlador 8D(/ proporcionar el controlador 8D(/ y 0, de 8D(/ +l controlador 8D(/' !e establece la cone2ión entre la base de datos y estudio de ODI. +"emplo' oracle."dbc.OracleDriver 8D(/ 0,' &ransmite el $ue la base de datos 5no sólo D(3!# cual$uier tecnología7 para conectar. +l 0, permite $ue el servidor de datos $ue se encuentra en la red &/E F IE. /ada conductor tiene una sinta2is controlador especí*co. "dbc' oracle' thin' G >host?' >puerto?' >sid? Ear1metros de 0,' >host?' servidor de nombre de red o la dirección IE. >puerto?' nHmero de puerto de escucha 5normalmente :):7. >sid?' 9ombre del servicio de instancia 5!ID de Oracle7. Fetch matriz Tamaño: número de filas (registros leídos) solicitados por Data Integrator en cada comunicación con el servidor de datos.
,ote &ama=o de la actualización' nHmero de *las 5registros escritos7 en un solo comando de Oracle Data Integrator I9!+&. . 0na vez $ue ya ha proporcionado todos los detalles en la sección de 8D(/# llegado a prueba de cone2ión de la lengJeta en la derecha top.clic4 lado de cone2ión de prueba. K. 0na vez $ue haga clic en cone2ión de prueba una nueva ventana emergente se abrir1 agente .select y haga clic en prueba.
L. 0na vez $ue se hace clic en la prueba entonces se muestra la connectionMindoM.clic4 é2ito en -ceptar.
9ota' /ada servidor de datos físico se debe de*nir una vez en la topología. Eor e"emplo# si tiene un e$uipo con dos instancias de Oracle y una fuente de datos Earado2# usted tiene $ue de*nir tres servidores de datos físicos# como se muestra a continuación.
¿Qué es un es$uema físico 0n es$uema físico es una subdivisión de un servidor de datos cuya de*nición e2acta depende de la tecnología utilizada. +s$uemas físicos indican la ubicación física de los almacenes de datos# tales como tablas# archivos# temas y colas en un servidor de datos. 0n es$uema físico ODI siempre consta de dos es$uemas del servidor de datos' % +l es$uema de datos# $ue contiene los almacenes de datos % +l es$uema de traba"o# $ue almacena ob"etos temporales 9ota' ,a pr1ctica recomendada en ODI es crear un 1rea separada en cada servidor de datos especí*camente para los ob"etos temporales. Debe utilizar este espacio dedicado como el es$uema de traba"o para su es$uema físico. Eor lo tanto# no hay riesgo de ob"etos temporales creados por ODI contaminantes los datos de producción.
/ómo crear es$uema físico :.;aga clic en el servidor de datos# a continuación# haga clic en el nuevo es$uema físico. ).In la *cha de*nición elegir es$uema# es$uema de traba"o basado en su re$uisito.
¿Qué es un es$uema lógico +s$uema lógico es un alias para diferentes es$uemas físicos $ue tienen estructuras de datos similares basados en la misma tecnología# pero en diferentes conte2tos. N !i dos es$uemas de datos almacenados en los servidores de datos contienen las mismas estructuras de datos# $ue se declaran como' % Dos es$uemas físicos % 0na sola es$uema lógico es$uema lógico
+st1 bien $ue parece ser un poco de difícil de entender lo $ue este es$uema físico y lo $ue este es$uema lógico. oy a e2plicar en detalle por tomar un e"emplo en la imagen .+n (oston# la base de datos de contabilidad se almacena en un es$uema denominado /O9&-(I,ID-D. +n &o4io# el es$uema es -//& llamada. -mbos tienen la misma estructura de datosP $ue contienen todas las tablas de una aplicación de contabilidad. +n la topología de ODI# usted los considera como uno es$uema lógico' /ontabilidad. ,ógico ersus -r$uitectura ísica
-r$uitectura física' % De*ne los recursos físicos % Describe las ubicaciones reales de los servidores y es$uemas. -r$uitectura lógica' % er esumen de los recursos. /reación de un es$uema lógico' De creación del es$uema lógico
:. Ir a la lógica er la ar$uitectura. ). ;aga clic con el es$uema tecnología. A. !eleccione 9uevo es$uema lógico. C. +scriba el nombre de es$uema. . !e puede asociar el es$uema con la física es$uemas# en diferentes conte2tos# a$uí. 9ota' Dise=o &iempo de +"ecución vs. +n ODI# se traba"a en tiempo de dise=o en los recursos lógicos. N +n tiempo de e"ecución# la e"ecución se inició en un conte2to particul# permitiendo el acceso a los recursos físicos de ese conte2to ¿Qué es un /onte2to N 0n conte2to es un ob"eto de ODI se de*ne $ue representa una RsituaciónR en la $ue aparece un grupo similar de recursos. N 0n conte2to asigna recursos lógicos en sus implementaciones como
recursos físicos 5ar$uitectura lógica sobre una ar$uitectura física7. N +n un conte2to dado# un recurso lógica se asigna a un recurso físico Hnico. N +"emplo de conte2tos' % +ntornos' desarrollo# prueba y producción 0n conte2to asigna una lógica a un es$uema físico ,a imagen de aba"o da la idea clara de $ué conte2to va a hacer y cómo es Htil. ,ógico para la cartografía física por el conte2to de desarrollo.
,a de*nición de un conte2to' creación del conte2to
:. Ir a la topología Eesta=a conte2tos. ). ;aga clic en el botón 9uevo /onte2to. A. &ipo' % +l nombre del conte2to % +l código para el conte2to % ,a contrase=a 5opcional7 C. !i desea este conte2to estar el valor por defecto# seleccionar la opción predeterminada casilla de veri*cación. -gentes' componentes de e"ecución ligeros. % !e puede iniciar la e"ecución a la vista o en la fecha prevista % Euede ser instalado en cual$uier m1$uina N -gentes de or$uestar el proceso de integración.
% +nviar código generado para ser e"ecutado por los servidores de datos % -ctualizar el registro de e"ecución N ,os agentes deben ser declaradas en la topología. % -gentes físicos representan componentes $ue se e"ecutan en tiempo de e"ecución. % -gentes físicos también deben ser abstraídos como agentes lógicos. N ;ay dos tipos de agentes' % +l agente de 8ava ++ puede implementarse como una aplicación Meb y bene*ciarse de las características de un servidor de aplicaciones. % +l agente independiente se e"ecuta en una m1$uina 8ava simple y se puede desplegar cuando sea necesario para llevar a cabo los Su"os de integración. Eara m1s detalles sobre los agentes de pasar por el artículo -gentes ODI -l venir artículo voy a e2plicar cómo implementar estos agentes en detalle. Idiomas y acciones también se encuentran en la topología. Idiomas especi*can las palabras clave $ue e2isten para cada tecnología# y las acciones se utilizan para generar el lengua"e de de*nición de datos 5DD,7 scripts. !ólo sería necesario modi*car estas partes de la topología si estuviera agregando una nueva tecnología para ODI. racias por su paciencia para leer este gran artículo muy largo. TT !iéntase libre de comentar si tiene alguna duda a la topología de con*guración en su proyecto
What is in the Topology?
ODI uses tis topolog! navigator to access te resources availa"le in te information s!stem to carr! out our integration tas#s.
What Is in the Topology?
If !ou o"serve "elo$ image %!ou can assume !ourself $at are tere in topolog!
•
&!sical arcitecture ' ecnologies: Oracle% D*% +ile%and so on ' Data t!pes for te given tecnolog! ' Data ,ervers: Definition of !our servers% data"ases% and so on ' ,cemas: ,u"divisions of data servers li#e p!sical and $or# scemas ' -gents: ODI runtime components
•
Contexts: Mapping logical to p!sical
•
ogical arcitecture / ecnologies and -gents
•
anguages
•
0epositories
•
1eneric -ctions What Is a Data Server?
- data server is an! s!stem tat is capa"le of storing data and ma#ing it availa"le in te form of ta"les.
- data server is al$a!s attaced to a specific tecnolog!% suc as Oracle% Oracle 2ss"ase% ,!"ase%2xtensi"le Mar#up anguage (3M)% or Microsoft -ccess%+ile etc..
- data server ma! not al$a!s "e a traditional DM,.
It esta"lises te connection "et$een our ODI studio to our source and target s!stems via 4DC or 45DI connection.
2ac p!sical data server must "e defined once in te topolog!.
How to create Data Server??
6.0igt clic# on te ecnolog!%ten clic# on ne$ data server.
*.Once !ou clic# on data server a ne$ $indo$ $ill open.
7In te definition ta" 5ame of data severer sould "e 8tecnolog!98data server name9 (Oracle recommended) or 8tecnolog!98data server name98location9("est practice)
7 Coose !our tecnolog! from drop do$n list.
;.In te connection string please provide te user details $o as ,<, D- rigts.
7 It is al$a!s recommended provide te "! default ,<, -, ,<,D- in user details.
Data ,erver Creation =.In te 4DC driver provide te 4DC Driver and 4DC >0
JDB Driver: It esta"lises te connection "et$een Data"ase and ODI studio.
2xample:oracle.?d"c.OracleDriver
JDB !"#:It conve!s $ic data"ase(not onl! 0DM,%an! tecnolog!) to connect. e
>0 allo$s te data server to "e located on te C&@I& net$or#. 2ac driver as a specific driver s!ntax.
?d"c:oracle:tin:A8ost9:8port9:8sid9
>0 &arameters: 8ost9: server net$or# name or I& address. 8port9: listener port num"er (usuall! 6B*6). 8sid9 : Instance service name (Oracle ,ID).
$rray Fetch Size: num"er of ro$s (records read) reuested "! Data Integrator on eac
communication $it te data server.
Batch %p&ate size: num"er of ro$s (records $ritten) in a single Oracle Data Integrator
I5,20 command.
B.Once !ou provided all te details in 4DC section %come to est Connection a" in rigt and side top.clic# on test connection.
.Once !ou clic# on test connection a ne$ pop up $indo$ $ill open .select agent and clic# on test.
E.Once !ou clic# on est ten it $ill so$s te successful con nection$indo$.clic# on OF.
'ote: 2ac p!sical data server must "e defined once in te topolog!.
+or example% if !ou ave a macine running t$o instances of Oracle and one &aradox data source% !ou ave to define tree p!sical data servers as so$n "elo$.
What Is a (hysical Schema?
- p!sical scema is a su"division of a data server $ose exact definition depends on te tecnolog! involved. &!sical scemas indicate tephysical location o) the &atastores % suc as ta"les% files% topics% and ueues in a data server.
-n ODI p!sical scema al$a!s consists of t$o data server scemas: / e data scema% $ic contains te datastores / e $or# scema% $ic stores temporar! o"?ects
'ote: e recommended practice in ODI is to create a separate area on eac data server
specificall! for te temporar! o"?ects.
scema for !our p!sical scema. us% tere is no ris# of temporar! o"?ects created "! ODI polluting !our production data.
How to reate (hysical Schema?
6.0igt clic# on data server %ten clic# on ne$ p!sical scema.
*.In te definition ta" coose scema%$or# scema "ased on !our reuirement.
What Is a #ogical Schema?
ogical scema is a single alias for different p!sical scemas tat ave similar data structures "ased on te same tecnolog!% "ut in different contexts. G If t$o data scemas stored in data servers contain te same data structures% te! are declared as:
/ $o p!sical scemas / One single logical scema
ogical ,cema O#a! it seems to "e some tric#! to understand $at tis p!sical scema and $at tis logical scema. I $ill explain in detail "! ta#ing an example in te image .In oston%te accounting data"ase is stored in a scema called -CCO>5I51. In o#!o% te scema is called -CC. ot of tem ave te same data structureH te! contain all ta"les for an accounting application. In te ODI topolog!% !ou consider tem as one logical scema:-ccounting.
#ogical *ers%s (hysical $rchitect%re
&!sical arcitecture: / Defines p!sical resources / Descri"es te real locations of servers and scemas.
ogical arcitecture: / -"stract vie$ of te resources.
reating a #ogical Schema:
ogical scema creation 6. 1o to te ogical -rcitecture vie$. *. 0igtclic# te scema tecnolog!. ;. ,elect 5e$ ogical ,cema. =. !pe te scema name. B.
'ote: Design Time *ers%s "%n Time
In ODI% !ou $or# at design time on logical reso%rces . G -t run time% execution is started in a particul context% allo$ing access to te physical reso%rces of tat context
What Is a onte+t?
G - context is an ODI o"?ect !ou define tat represents a JsituationK $ere a similar group of resources appears. G - context maps logical resources onto teir implementations as p!sical resources (logical arcitecture onto a p!sical arcitecture). G In a given context% one logical resource is mapped to one uniue p!sical resource. G 2xample of contexts: / 2nvironments: Development% est% and &roduction
$ onte+t ,aps a #ogical to a (hysical Schema
e "elo$ image gives te clear idea of $at context $ill do and o$ it is useful.
ogical to p!sical mapping per te Development context. De)ining a onte+t:
Context creation 6. 1o to te opolog! Contexts ta". *. Clic# te 5e$ Context "utton. ;. !pe: / e name of te context / e code for te context / e pass$ord (optional) =. If !ou $ant tis context to "e te default% select te Default cec# "ox.
$gents :ligt$eigt runtime components.
/ Can start execution on demand or on scedule / Can "e installed on an! macine G -gents orcestrate te integration process. / ,end generated code to "e executed "! data servers / >pdate te execution log
G -gents must "e declared in te topolog!. / &!sical agents represent components running at run time. / &!sical agents must also "e a"stracted as logical agents. G $o t!pes of agents: / e 4ava 22 agent can "e deplo!ed as a $e" application and "enefit from te features of an application server. / e ,tandalone agent runs in a simple 4ava macine and can "e deplo!ed $ere needed to perform te integration flo$s.
+or more details on agents go troug te article ODI -gents
In coming article I $ill explain o$ to deplo! tese agents in detail.
anguages and actions are also found in te topolog!. anguages specif! te #e!$ords tat exist for eac tecnolog!% and actions are used to generate te data definition language (DD) scripts.
an#s for !our patience to read tis muc lengt! article .LL
+eel free to comment if !ou ave an! ueries to setup topolog! in !our pro?ect