연계 메커니즘 :: 데이터 연계 방식과 절차

이주희·2022년 9월 30일
0

CS

목록 보기
47/66

연계 메커니즘

응용 소프트웨어와 연계 대상 모듈 간의 데이터 연계 시 요구사항을 고려한 연계 방법주기를 설계하기 위한 메커니즘

메커니즘: 어떤식으로 연계할 것인지!


1. 직접 연계

장점

  • 연계 및 통합 구현이 단순하며 용이하다.
  • 개발 소요 비용 및 기간이 짧다.
  • 중간 매개체가 없으므로 데이터 연계 처리 성능이 대체로 좋다.

단점

  • 시스템 간의 결합도가 높아 시스템 변경에 민감하다.
  • 암/복호화 처리가 어렵다.
  • 연계 및 통합 가능한 시스템 환경이 제한적이다.

(1) DB 링크

DB Link

  • 데이터베이스에서 제공하는 DB 링크 객체를 이용한다.
  • 수신 시스템에서 DB 링크를 생성하고 송신 시스템에서 해당 DB 링크를 직접 참조하는 방식
테이블명@DBLink명

(2) DB 연결

DB Connection

  • 수신 시스템의 WAS에서 송신 시스템 DB로 연결하는 DB 커넥션 풀을 생성하고, 연계 프로그램에서 해당 DB 커넥션 풀 명을 이용하여 연결한다.
송신 시스템의 Data Source = DB Connection Pool 이름

커넥션 풀

Connection Pool
데이터베이스와 연결된 커넥션을 미리 만들어서 풀 속에 저장해 두고, 필요할 때 커넥션을 풀에서 가져다가 쓰고 다시 풀에 반환하는 기법
(DB에 연결하기 위해서 매번 커넥션 객체를 생설할 때마다 많은 시스템 자원이 소요되는 문제 해결을 위해 활용한다.)

(3) API/Open API

  • 송신 시스템의 DB에서 데이터를 읽어서 제공하는 애플리케이션 프로그래밍 인터페이스 프로그램
  • API명, 입출력 파라미터 정보가 필요하다.

    API

    Application Programming Interface

    • 응용 프로그램에서 사용할 수 있도록, 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스
    • 어떠한 응용프로그램에서 데이터를 주고받기 위한 방법
    • 어떤 특정 사이트에서 특정 데이터를 공유할 경우, 어떤 방식으로 정보를 요청해야 하는지, 어떤 데이터를 제공받을 수 있는지에 대한 규격을 정해놓은 인터페이스

(4) JDBC

  • 수신 시스템의 프로그램에서 JDBC 드라이버를 이용하여 송신 시스템 DB와 연결한다.
  • DBMS 유형, DBMS 서버 IP와, Port, DB 인스턴스 정보가 필요하다.

    JDBC

    Java Database Connectivity
    DB에서 자료를 조회하거나 업데이트하기 위해서 자바에서 데이터베이스에서 접속할 수 있도록 하는 자바 API

    인스턴스

    객체 지향 프로그래밍(OOP)에서 해당 클래스의 구조로 컴퓨터 저장 공간에서 할당된 실체

(5) 하이퍼 링크

Hyper Link

  • 현재 페이지에서 다른 부분으로 가거나 전혀 다른 페이지로 이동하게 해주는 속성
<a href="url"> Link 대상 </a>

2. 간접 연계

장점

  • 서로 상이한 네트워크, 프로토콜 연계 및 통합이 가능하다.
  • 인터페이스 변경 시에도 장애나 오류 없이 서비스가 가능하다.
  • 보안이나 업무 처리 로직을 자유롭게 반영할 수 있다.

단점

  • 연계 아키텍처 및 메커니즘이 복잡해 성능 저하 요소가 존재한다.
  • 개발 및 적용을 위한 테스트 기간이 상대적으로 장기간 소요된다.

(1) EAI :: 연계 솔루션

  • 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션들 간의 정보 전달, 연계, 통합을 가능하게 해주는 솔루션

  • 송수신 시스템에 설치되는 어댑터를 이용한다.

(2) Web Service/ESB

  • 웹 서비스가 설명된 WSDL과 SOAP 프로토콜을 이용한 시스템 간 연계

    WSDL

    Web Services Description Language
    웹 서비스명, 제공 위치, 메시지 포맷, 프로토콜 정보 등 웹 서비스에 대한 상세 정보가 기술된 XML 형식으로 구현되어 있는 언어

    SOAP

    Simple Object Access Protocol
    HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 네트워크 상태에서 교환하는 프로토콜

(3) 소켓

Socket

  • 소켓을 생성하여 포트를 할당하고, 클라이언트의 요청을 연결하여 통신한다.

  • 소켓은 IP address와 Port 넘버가 합쳐진, 네트워크상에서 서버 프로그램과 클라이언트 프로그램이 통신할 수 있도록 해주는 교환 기술이다.

  • 네트워크를 경유하는 프로세스 간 통신의 접속점으로 소켓을 통해 클라이언트와 서버 프로그램 사이에 데이터를 송수신할 수 있다.

  • 두 소켓이 연결되면 서로 다른 프로세스끼리 데이터를 전달할 수 있다.

  • 두 소켓이 연결된 것을 세션이라고 부른다.

TcpServer.listen();

3. 연계 메커니즘 수행 절차

(1) 연계 데이터 추출 및 생성

  • 연계 솔루션과는 관계없이 응용 프로그램에서 생성하거나 DB를 이용하는 등 응용 시스템별로 구현한다.
  • 데이터를 추출하여 생성하는 과정에서 오류가 발생할 경우, 로그 테이블 또는 파일에 해당 오류 내역을 상세하게 기록한다.

(2) 코드 매핑 및 데이터 변환

  • 송신 시스템에서 사용하는 코드를 수신 시스템에 전송해야 할 경우, 수신 시스템의 코드로 매핑 및 변환하고, 데이터 타입 등이 상이할 경우 데이터 변환 작업을 수행한다.

(3) 연계 테이블 또는 파일 생성

  • 연계 데이터는 데이터베이스의 테이블 또는 파일 형식으로 생성하고, 테이블과 파일 형식 여부는 직/간접 연계에 따라 선택한다.

(4) 로그 기록

  • 송신 시스템과 수신 시스템에서 처리되는 일련의 과정에 대한 결과를 로그 테이블에 기록 및 관리한다.

(5) 연계 서버 또는 송수신 어댑터

  • 연계 서버는 송수신 시스템 둘 중 한 곳에만 설치하며, 연계 테이블의 데이터를 전송 형식으로 변환, 대상 관리, 송수신 여부 관리 등 송수신과 관련된 모든 처리를 수행한다.

(6) 전송 단계

  • 송신 시스템에서 생성된 연계 데이터는 네트워크 환경에 따라 설정된 전송 형식으로 변환된 후 연계 서버에서 수신 시스템으로 전송된다.

(7) 운영 DB에 연계 데이터 반영

  • 수신된 데이터를 운영 DB에 반영하는 과정으로, 변환(매핑) 프로그램을 별도로 구현한다.
profile
🍓e-juhee.tistory.com 👈🏻 이사중

0개의 댓글