ETL Tools/Oracle Data Integrator 썸네일형 리스트형 LKM Oracle(SQLLDR) Fail on Unix 기본적으로 들어 있는 LKM은 Windows 기반으로 작성된 모듈이기 때문에 Unix기반에서 Error가 발생할 수 있다. 이때는 Turning for Unix 과정이 필요하다. 이 과정이라는 것은 sqlldr 명령을 sh file을 통해 호출하도록하는것이다. 다음과 같은 과정을 추가한다. 1. sqlldr 명령어를 가진 sh file을 생성한다. 2. 파일의 권한을 변경한다. 3. os.system을 통해 해당 파일을 호출한다. OdiOutFile -File= #!/bin/sh sqlldr control= log= userid=/@ 1> 2>&1 Prior to the 'Call sqlldr' command and following the 'Generate shell' command below, add.. 더보기 Directory scan. 파일을 DB로 적재 (파일은 ftp를 통해 특정 Directory로 이동) Directory Scan 방법 : OdiFileWait 기능을 사용하여 특정 디렉토리에 File이 생성되었을 경우 작업을 실행하도록 구현할 수 있다. 파일 적재 방법 : 프로그램을 실행 시키는 방법은 시나리오 생성 일정추가, 대기 상태를 유지하면서 파일이 생성되었을 때마다 바로 적용할 수 있는 로직 작은 파일이 많은 경우는 파일을 하나의 파일로 병합하여 처리하도록 구현한다. 파일입출력 : ODI Jython에서 제공하는 snpsFTP를 사용하여 구현. 파일 하나에 여러 포멧이 존재하는 경우 : grep 명령어를 사용해서 파일을 분할 저장할 수 있다. window 기반에서 사용불가. 더보기 Jython Using IP sockets server.py import socket import time HOST = '192.168.1.85' PORT = 9191 # Arbitrary port (not recommended) LOG_FILE = 'c:/temp/sockserver.log' mySock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) mySock.bind((HOST, PORT)) logfile = open(LOG_FILE, 'w') try: print >> logfile, '*** Server started : %s' % time.strftime('%Y-%m-%d %H:%M:%S') while 1: data, addr = mySock.recvfrom(1024) print >> log.. 더보기 os command를 이용한 파일 분할 하기. unix기반 grep 사용 import os if os.system(r"egrep -v -n '^|^' / > /err_") 0 : raise "get OS command has signalled errors" import os if os.system(r"grep -n '^' / > /_") 0 : raise "get OS command has signalled errors" import os if os.system(r"grep -n '^' / > /_") 0 : raise "get OS command has signalled errors" 더보기 PKG내에서 Java 실행 프로그램을 호출하였을 경우 Error가 발생하였을때 Work flow 처리 방법 Jython을 이용하여 Java를 호출하는 방법 1. procedure 생성 odi -> jython -> java ->jython -> odi 사용 기술 : jython ex) import sys sys.path.append("java_file_path") import class_name class_name.function(class_name(), [args]) jython 기술을 사용하여 실행자바 프로그램의 메인 함수를 jython에서 호출한다. 이때, 실행프로그램이 Exception을 발생시 jython이 catch할 수 있고, 그 결과를 Odi에 보내 처리할 수 있다. 문제점 발생 :::: 한번 import 된 자바 클래스는 해당 파일이 변환 되어도 odi가 자동으로 reload를 하지 않는 것으.. 더보기 이전 1 ··· 16 17 18 19 20 21 22 ··· 27 다음