반응형

FTP 작업

 

파일 시스템 작업과 함께 FTP 작업은 데이터 처리 작업에서 파일과 관련된 작업을 수행하는 역할을 담당합니다.

 

 

실제 업무 환경에서 FTP 작업은 상당히 많이 사용되고 있습니다. 참고로, 필자의 경험을 간략히 말씀 드리겠습니다. 필자가 구축했었던 프로세스 중의 하나는 웹 로그 파일을 분석하는 것이었는데, 매 시간 10여 개의 웹 캐시 서버와 SSL 서버로부터 총 십 여 기가의 텍스트 로그 파일이 발생이 되었습니다. 이 로그 파일들을 FTP 작업을 이용하여 필터링을 전문적으로 하는 서버로 가져온 후, 필터링 작업을 거쳐 테이블에 넣는 방식이었습니다.

 

이미 2000DTS에서도 FTP 작업이 있었지만, 단순히 파일을 받는 기능 정도로 매우 단순했기 때문에 필자는 이 작업을 이용하는 대신 ftp 커멘드를 자주 이용하였습니다.

, FTP 작업을 수행할 명령 파일을 만든 후(예를 들어 ftpcmd.txt 라 하겠습니다. 이 파일 내에는 자동으로 수행 될 FTP 커멘드들이 차례로 들어있습니다.),

 

master..xp_cmdshell ‘ftp –s:ftpcmd.txt’

 

형태의 쿼리를 SQL 작업으로 만들어 수행하는 노가다(^^)로 처리하였습니다. 간혹 프로그램 삘(^^Feel)이 받으면, ActiveX 작업을 이용하여 전용 FTP 작업을 만들기도 하였습니다.

 

SSIS에서는 단순히 파일을 가져오기뿐만 아니라, 여러 다양한 기능들이 포함되어 있습니다.

 

파일 시스템 작업과 유사하게 FTP 작업 역시 디렉터리를 생성 또는 삭제 파일 보내기 및 받기 등과 같은 여러 작업을 수행할 수 있습니다.

 

 

FTP 작업을 수행하기 위해서는 연결 관리자에서 FTP 연결을 미리 만들어 놔야 합니다. 다른 작업과는 달리, FTP 작업 내에 RemotePath에서는 새 연결을 사용하여 작업 단계에서 직접 연결을 추가할 수는 없습니다.

FTP 연결은 연결 관리자새 연결(W)를 선택한 후, FTP 연결을 선택하면 됩니다.

 

 

 

 

 

 

 

 

 

1.      파일 보내기
LocalPath
에 지정된 연결에 해당되는 파일을 RemotePath에 지정된 FTP 연결에 해당되는 사이트로 파일을 보내는 작업입니다.
OverwriteFileAtDest
속성을 이용하여 파일이 있는 경우 덮어 쓸지를 지정할 수 있으며, IsTransferAscii 속성을 이용하여 Ascii 전송으로 할지를 지정할 수 있습니다.

2.      파일 받기
파일 보내기 작업과 유사하며, 원격지 사이트의 파일을 지정된 로컬 경로로 가져오는 작업입니다.

3.      로컬 디렉터리 만들기
로컬 서버에 디렉터리를 만드는 작업입니다.
OverwriteFileAtDest
속성을 이용하여 기존의 디렉터리가 있는 경우의 처리 방법을 지정할 수 있습니다. 만약 이 값을 False로 설정한 상태에서 해당 디렉터리가 있는 경우에 작업이 수행되면 실패로 처리가 됩니다.

4.      원격 디렉터리 만들기
원격 서버에 디렉터리를 만드는 작업입니다.
로컬 디렉터리 만들기 작업의 OverwriteFileAtDest 속성을 동일하게 사용할 수 있습니다.

5.      로컬 디렉터리 제거
LocalPath
에 지정한 폴더를 삭제합니다. 해당 디렉터리가 없는 경우 작업은 실패하게 됩니다.

6.      원격 디렉터리 제거
RemotePath
에 지정한 폴더를 삭제합니다. 해당 디렉터리가 없는 경우 작업은 실패하게 됩니다.

7.      로컬 파일 삭제
LocalPath
에 지정된 파일을 삭제합니다. 이 작업은 파일 시스템 작업의 파일 삭제 작업과는 달리, 해당 파일이 이미 지워지고 없는 경우 작업이 실패하게 됩니다.

8.      원격 파일 삭제
RemotePath
에 지정된 파일을 삭제합니다.

 

 

FTP 작업, 로컬 디렉터리나 로컬 파일을 이용하는 작업은 파일 시스템 작업의 작업과 상당히 유사합니다.

디렉터리 제거 또는 만들기 작업은 동일한 작업이라 할 수 있습니다.

 

위에서도 언급했지만 한 가지 팁을 설명 드리겠습니다. 만약 파일을 삭제하는 작업을 해야 하는 경우,

 

             삭제할 파일이 없더라도 작업 실패 없이 진행하고자 한다면    à          파일 시스템 작업을 이용

             삭제할 파일이 없는 경우에는 실패로 처리하고자 한다면         à          FTP 작업을 이용

 

합니다. 이 때, 두 가지 작업 모두 연결 관리자에서는 동일한 연결(파일 연결)을 이용할 수 있습니다.

 

 

반응형

+ Recent posts