30 Kasım 2011 Çarşamba

Runnin Agent on Unix

Hi again

This is my second post and i wanna talk about how to run the agent.sh in Unix ... to run an agent first you should define it logically in topology... u should define your agent in logical and physical architecture tabs and define the context ,after that like i explained in my first post , you should have an installed ODI on Unix ... go to oracledi/bin/ directory and write the following code echo "agent.sh -NAME=" at now ( i assume that you are connecting to unix machine on telnet , so u should write this code) , so your agent gonna be started, in topology go your physical_architecture tab and click on your agent. In opening screen go to definition tab , click on test ... if everything is okay , u will get "Agent Test Successful" message on your screen ....

NOTE:: For normal agent that is all you need to do , but if you wanna run your scheduler agent , you should change the parameter of your odiparams.sh file....
( I will explain that stuff later :) )

Scheduler Agent on Unix

Hello again,



In my previous post i mentioned about how to create an odi agent on unix environment which is quite simple now.. lets say u have an agent ... but u wanna run scheduler agent now... Well first of all you should go to ur odiparam.sh file which inside of your folder.... in this file , u have to change the following path




ODI_SECU_DRIVER=driver name that suits with ur database that used as Work Rep.
ODI_SECU_URL=url of your work rep. database
ODI_SECU_USER=database user...
ODI_SECU_ENCODED_PASS=this is the encoded password of ur database user....
ODI_SECU_WORK_REP=name of your work rep.
ODI_USER=SUPERVISOR
ODI_ENCODED_PASS=LELKIELGLJMDLKMGHEHJDBGBGFDGGH
ODI_JAVA_HOME= u should write the exact path of any JDK that is already inside of your machine.... 5.1 or newer versions.



Here it is an example ::




ODI_SECU_DRIVER=oracle.jdbc.driver.OracleDriver
ODI_SECU_URL=jdbc:oracle:thin:@20.2.99.147:1521:DWXX
ODI_SECU_USER=mYusER
ODI_SECU_ENCODED_PASS=encoded_pass
ODI_SECU_WORK_REP=myREP
ODI_USER=SUPERVISOR
ODI_ENCODED_PASS=LELKIELGLJMDLKMGHEHJDBGBGFDGGH
ODI_JAVA_HOME=/product/10g/db/jdk



your ODI_SECU_ENCODED_PASS should be look like ODI_ENCODED_PASS... which is the encoded password of ODI for SUPERVISOR

4 Ekim 2011 Salı

startscen.sh ODI Scenario Load

If you have more than one work repository in ODI , you should add workrepository parameter into your sh load script.Otherwise you can face with an error message like this:

com.sunopsis.core.SnpsInexistantObjectException: SnpScen.getScenarioByCodeAndVersion ; SnpScen does not exist

The reason to get this error , ODI (in default mode) checks the odi params file and get reporsitory information.If the scenario you suppose to run inside of another repository then It raises the error we specify above.

Here it is a sample for correct usage:

sh startscen.sh SCENARIO_NAME 001 -WORK_REPOSITORY=WORKREP2

28 Eylül 2011 Çarşamba

ODI agent.sh nohup command + without out file

Well
Here it is the issue , you run your agent with nohup command ... but later maybe oneday one week or one year whatever.. your nohup.out file will be turned into a big file, which causes problem in your disk spaces.How about Solution ? ... quite simple first stop your agent then delete the big nohup.out file and then run the following script

nohup sh agent.sh "-port=PORT_NUMBER" "-name=AGENT_NAME" >/dev/null 2>&1&

8 Eylül 2011 Perşembe

ODI schema rights

Okay , here it is my way:
While developing ODI projects , refrain to create all tables i mean Master Rep. , Work Rep. and your ETL tables into same schema.Especially in rush hours , truncating one of your Master Rep. table instead of your ETL tables , could really give an serious headache at least for one day or maybe even more.For example create a user for Master Rep. called such as ODI_MASTER
and one for Work Rep. called such as ODI_WORK and lastly for your ETL stuff ODI_ETL.It will be much more convenient and of course safer for your development.Finally ,in your project sometimes you need check your log tables for some reason , so it is better give select right to your ODI_ETL user by running following script.


** connect as ODI_MASTER & ODI_WORK

BEGIN
FOR x IN (SELECT * FROM user_tables)
LOOP
EXECUTE IMMEDIATE 'GRANT SELECT ON ' x.table_name ' TO ODI_ETL';
END LOOP;
END;

3 Mayıs 2011 Salı

How to start ODI agent in Unix

Under INSTALLATION_DIRECTORY/oracledi/bin

Type the following command:

nohup sh agent.sh "-port=PORTNUMBER" "-name=AGENT_NAME" "-v=VER_NUMBER" &


Note: Change the parameters in the command (port,name,v) depends on your ODI specifications.

29 Nisan 2011 Cuma

Dummy

Just a dummy post...