EAI란 무엇인가

·2021년 11월 19일
5

EAI는 Enterprise Architecture Integration의 약자이다.

기업 내 필요한 여러 어플리케이션(채널)이 있을텐데 이런 각종 애플리케이션 간에 상호 연동이 가능하도록 통합하는 솔루션

EAI는 왜 필요한가?

한 기업 내의 ERP(전사적자원관리), CRM(고객관계관리), SCP(공급망계획) 시스템이나 인터넷뱅킹, 모바일뱅킹 등의 시스템 간에는 서로 데이터를 주고 받아야할 필요성이 존재한다.

데이터를 주고받기 위해 각 시스템 간에 개별적으로 서로 통신을 한다면 시스템 간에 개별적인 연결이 상당히 많이 생성이 필요하며 시간도 많이 소요된다.
시스템이 6개일 때 각 시스템이 개별적으로 연동된다면 15개의 연결이 생긴다. 그로 인해 유지 보수의 어려움이 생길 뿐더러 운영체제가 다르다는 이유로 시스템 간 통신을 위해 시스템을 고쳐야하는 상황이 발생할 수 있다. 이런 문제점을 해결하기 위해서 EAI라는 솔루션을 적용한다

각 시스템은 EAI 솔루션과의 연결만을 유지하고 타 시스템과의 연결은 EAI를 통한다. 이로 인해 중앙 집중화된 시스템 관리(은행으로 치면 코어)가 가능하고 각 시스템은 EAI와의 인터페이스만 지원하면 되기 때문에 타 시스템과의 인터페이스는 신경쓰지 않아도 된다.

EAI를 설계할때 참고해야할 사항

  1. Business Requirement

    대내 거래는 기업 내부 시스템 간의 업무를 통합하는 패턴이다. 대부분 온라인성 업무가 주류를 이루게 된다. 인터넷 뱅킹에서 계좌 정보를 조회해온다던지, 당행 계좌간 이체를 한다던지와 같은 실시간성 거래가 주류를 이룬다.

대외 거래는 기업간의 거래를 정의한다. 계열사로 재무 내역을 전송하거나 전송 받거나, 협력 업체에 물품을 주문한다거나와 같은 업무가 주류를 이루며, 온라인성 업무와 디퍼드거래 그리고 배치성 거래들이 섞여서 구성된다. 대외 거래의 특징은 기업간 거래이기 때문에 분산 트렌젝션(XA)등을 이용한 트렌젝션 보장이 불가능하기 때문에 오류시 양쪽의 트렌젝션정보를 비교할 수 있는 거래로그를 저장하는 것이 중요하다.

또 다른 관점에서는 B2B 거래에 있어서는 별도의 한정된 개수의 폐쇄망(X.25, TCP)을 사용하는 경우가 있기 때문에 회선이 1~2개 인데 서버가 >2 일 경우 회선이 연결된 서버로 거래 요청을 라우팅 하는 기능과 회선의 상태를 확인하는 기능 등이 중요하다.

BATCH 거래는 대용량의 데이터를 송신 시스템에서 수신 시스템으로 전송하는 요건인데, 다른 업무 시스템 간의 거래 정보를 맞추기 위한 BATCH 거래와 정보계(데이터를 분석하여 경영에 필요한 리포트를 뽑아 내는 Warehouse나 BI성의 업무) 두 가지 형태로 분리된다. 전자의 경우 운영 데이터로 사용되는 데이터에 대한 연계이기 때문에 전달 보장 요건이 매우 중요하고(경우에 따라 XA를 사용할 수도 있음) 후자의 경우는 분석 데이터이기 때문에 전달 보장 요건은 그리 중요하지 않다.

BATCH거래의 경우 보통 ETL 솔루션을 사용하기도 하는데, ETL 솔루션의 경우 XA기반의 전달 보장 요건이 없기 때문에, 위의 사례중의 후자 (정보계)에는 적절하지만 운영 데이터를 전송하는 과정에는 EAI 솔루션이 더 적절하다고 볼 수 있다.

온라인성의 경우 SYNC, ASYN, 1:N, N:1 거래에 대한 정의와 BATCH성의 경우 Master-Detail, Merge & Insert등 여러가지 거래 패턴이 존재하며 필요한 거래 패턴에 대한 정의도 이 단계에서 이루어져야 한다.

추가로 작성 예정 !!!

출처: https://bcho.tistory.com/361 [조대협의 블로그]
https://sheerheart.tistory.com/entry/EAI-란-무엇인가 [Spread your wings]
https://bcho.tistory.com/361

profile
코딩하는 은행원 !

0개의 댓글