• 검색 결과가 없습니다.

Ⅱ. 관련 연구

2. 분산 데이터베이스 시스템

그림 2. 근거리 망에서의 분산 데이터베이스

위하여 광주 지사의 컴퓨터에서 실행되는 지역 작업(local application)을 수행한

다만, 근거리 네트워크에서는 국지성(locality)이 작업을 실행하는 컴퓨터들이 지 업(distributed application)이라고도 불리는 전역 작업(global application)이 존재 하여 각 지사에 있는 데이터들을 액세스할 수 있을 때 지역 데이터베이스 집합 Database Connector), OLE-DB(Object Linked Environment-Database), DCOM(Distributed Component Object Model), 그리고 OODB(Object Oriented Database)를 위해 OMG(Object Management)에서 제안한 OMA(Object Management)모델의 컴포넌트인 ORB(Object Request Broker)의 명세를 따르는

CORBA(Common Object Request Broker Architecture)가 데이터베이스 시스템 간 통신을 위해 널리 사용되고 있는 바, 이는 벤더 중심적인 프로토콜인 성격과 접속 지향형 통신의 성격을 갖는다. 따라서 인터넷을 통한 ERP(Enterprise Resource Planning)와 전자상거래 솔루션과 같은 분야에서 사용하기 어렵다[15].

3. 웹 서비스 향후 발전 방향

한 발전과 Globus 와 같은 미들웨어의 기술 개발로 성능 저하의 주요 원인이었 던 저속의 네트워크 문제와 통합의 어려움이 해결되고 있다. 이에 따라 미국과 유럽은 국가 슈퍼컴퓨터 자원들과 고성능 실험 장비들을 결합하여 네트워크로 연결된 그리드 환경을 구축하고 있으며, 국내에서도 정보통신부가 주관하여 국가 그리드 계획을 발표하는 등 국가 그리드 구축사업이 추진중에 있다[18].

향후 미래의 웹 서비스는 SOAP, WSDL, UDDI, 이외의 추가적인 기술 표준 들을 통해 ebXML, RosettaNet 과 같은 B2B 관련 표준과 유사하거나 동일한 수 준의 기능을 제공할 것으로 예측되며, 이러한 B2B 관련 표준과의 경쟁과 연계를 통해 보다 다양한 기능을 제공하는 방향으로 진행될 것이고, 시맨틱 웹 기술의 도입을 통한 자동화된 서비스 검색 및 비즈니스 플로우의 구성 등이 가능해 질 것으로 전망된다[19].

Ⅲ. 제안된 시스템

1. 제안된 시스템 모델

본 논문에서 제안하는 시스템은 그림 4와 같다. 기업형 비즈니스를 기업 내 또는 기업 간 동질적이고 이질적인 데이터베이스를 통합 운영하기 위한 시스템 은 Management 부분과 Client 부분, 그리고 웹 서비스 부분으로 크게 구성된다.

그림 4. 제안된 시스템 모델

2. 제안된 시스템 구조

2) Client

Ⅳ. 시스템 구현 결과

1. 개발환경 및 서비스 환경

개발환경은 .NET Framework Version 1.1, C#, ASP .NET, 그리고 Web Services 기반이며, 제안 시스템 서비스 환경은 <표 4>와 같다.

<표 4> 개발 환경 및 서비스 환경

구분 OS Func. DB

Management

System MS 2000 Pro.

Client 추가, 수정, 삭제

해당 Client별로 데이터 검색, 통계 모든 Client 데이터 검색, 통계

Oracle

Client-1 MS XP Pro. 데이터 입력, 수정, 삭제( 입고/ 판매) MsSQL

Client-2 MS XP Pro. 데이터 입력, 수정, 삭제( 입고/ 판매) MySQL

2. Management

그림 5. Management에서의 트랜잭션 처리도

그림 5는 Management 에서의 Management Server 의 검색 트랜잭션이 수 행되는 과정을 나타낸 트랜잭션 처리도이다. DataManage 객체는 생성된 Proxy 객체에 데이터베이스 접근 트랜잭션에 관한 역할을 할 수 있도록 역할을 부여한 다. 즉, 지역 데이터베이스 연결과 검색, 삽입, 수정, 삭제 등의 여러 질의에 관한 행위들을 하는 클래스 객체이다. Server:Family 객체, 여기서는 Proxy 객체가 되 겠다. 즉, DataMange 객체에서 역할 부여한 행위들을 Clinet:Family Proxy 객체 와 SOAP 메시지로 상호 통신을 한다. 그리고 StockTable 객체와 SaleTable 객 체는 지역 데이터베이스에서 데이터베이스를 핸들링 할 수 있는 클래스 객체이 다.

3. Client

Client 에 서의 데이 터 삽입 트 랜 잭 션 처 리 도 Client 에 서의 데이 터 삽입 트 랜 잭 션 처 리 도

그림 6. Client 에서의 데이터 삽입 트랜잭션 처리도

그림 6은 지역 데이터베이스를 관리하는 Client 에서의 데이터 삽입 트랜잭션 처리도이다. DataManage 객체는 Management상의 Management Server 에서 관리되는 DataManage 객체와 역할이 같다. 지역 데이터베이스에서는 먼저 Proxy 객체를 생성하기 위해 Management Server 의 Proxy 객체로부터 지역 데 이터베이스가 참조하고 있는 웹 서비스의 위치 정보를 검색한다. 그리고 검색된 웹 서비스의 위치 정보를 이용하여 Proxy 객체를 생성하여 지역 데이터베이스에 Proxy 객체를 사용하여 데이터 삽입의 행위를 수행한다.

4. 웹 서비스 구성 요소

1) SOAP

(1) Sale_SearchAll2 서비스의 SOAP Message

그림 7. Sale_SearchAll2 서비스의 SOAP Message

그림 7은 Sale_SearchAll2 라는 검색 질의에 대한 해당 XML 기반의 SOAP Request 메시지와 Response 메시지이다.

(2) Stock_InputData 서비스 SOAP Message

그림 8. Stock_InputData 서비스 SOAP Message

그림 8은 Stock_InputData 라는 삽입 질의에 대한 해당 SOAP Request 메시 지와 Response 메시지이다.

2) WSDL

(1) Stock_InputData의 WSDL

그림 9. Stock_InputData의 WSDL

그림 9는 지역 데이터베이스에서 데이터를 입력시 사용되는 Stock_InputData 서비스, 즉 삽입 질의에 대한 명세인 WSDL 이다.

(2) Sale_SearchAll2의 WSDL

그림 10. Sale_SearchAll2의 WSDL

그림 10은 Management 에서 서버 프로그램 상에서 검색 질의에 해당하는 Sale_SearchAll2 서비스의 WSDL 이다.

3) UDDI

그림 11. 웹 서비스 항목

Management 상의 Management Server 와 지역 데이터베이스인 Client 가 동 적 참조할 수 있는 웹 서비스 항목들이다. 즉, UDDI 를 말한다. 이를 이용하여 서비스 개발자는 지원하는 웹 서비스의 종류를 검색하여 시스템을 개발할 수 있 다.

5. 상호운영 트랜잭션 결과

1) Management Server

그림 12. Management Server에서 검색 질의를 수행한 후의 결과

Management Server 에서의 어플리케이션 모습이다. 위 그림은 특정 지역 데 이터베이스가 관리하고 있는 데이터베이스의 데이터를 Management Server 에서 검색 질의를 수행한 후의 결과이다.

그림 13. 지역 데이터베이스의 검색 질의 수행 후 통계

그림 13은 지역 데이터베이스가 관리하고 있는 지역 데이터베이스의 검색 질 의 수행 후, 통계 기능을 수행 했을 때, 입력 데이터 항목별로 통계를 수행한 결 과이다.

2) Client

(1) Client 접속

그림 14. Client의 접속

그림 14는 지역 데이터베이스의 Client 가 활성화되기 위해 접속을 하는 부분 이다. 즉, Client 는 Management Server 로부터 웹 서비스의 위치 정보를 알기 위해 로그인을 한다. Management Server 는 Client 로 해당 웹 서비스의 위치 URL 을 리턴 시켜주고, 받은 URL 을 참조 하여 Client 는 Proxy 객체를 생성하 여 지역 데이터베이스에 관한 여러 연산을 수행한다.

(2) 삽입 질의를 수행

그림 15. Client에서 삽입연산 수행

그림 15는 Client 에서 지역 데이터베이스에서 할 수 있는 여러 연산중에 삽 입 연산을 수행한 모습이다. 즉, 삽입을 하면 삽입 항목이 FamilyData Array 형식의 SOAP 메시지로 지역 데이터베이스 시스템인 Client 가 참조하고 있는 웹 서비스 서버에 전송이 되며, 받은 SOAP 메시지는 디코딩되어 지역 데이터베 이스에 삽입을 하게 된다.

Ⅴ. 결론 및 향후 연구

본 논문에서는 기업 내에서 또는 기업 간 비즈니스와 관련된 데이터들을 관리 하고 유지하기 위해 웹 서비스 기반의 분산되면서 이질적인 데이터베이스를 상 호 운영할 수 있는 시스템을 제안하고 설계하였다. 제안된 시스템은 자사의 지역 데이터베이스를 중앙에서 통합 관리할 수 있는 기반이 되며 서로 다른 운영 환 경하의 이질적 분산 데이터베이스를 활용하고 관리할 수 있는 방안을 제시하였 다. 또한 제안된 시스템은 기업 내 또는 기업 간 트랜잭션 처리를 하기 위해 분 산 데이터베이스 연결은 기존의 연결 표준인 ODBC, OLE-DB, ADO, CORBA 기반을 배제하고 이를 웹 서비스 기반인 HTTP 를 사용하게 되며, 분산 데이터 베이스의 단점으로 지적되고 있는 이미 존재하고 있는 데이터베이스에 기반 한 응용 프로그램에 대한 투자비용의 감소와 이질적 분산 데이터베이스를 통합하는 데 있어서 조직적인 어려움들의 해결 가능성, 그리고 전체적인 분산 데이터베이 스의 상호 호환성을 증가시켰다.

향후 연구과제는 분산 데이터베이스 시스템과 제안된 시스템 모델간의 정량적 인 성능 평가 및 순수한 데이터베이스 관리 시스템으로의 웹 서비스에 대한 심 도있는 연구가 필요하다.

참 고 문 헌

[1] Reash Trivedi, "Web Service Architecture Models", RCG IT, 2002, 4 [2] eXtensible Markup Language(XML) 1.0

http://www.w3.org/TR/2000/REC-xml-20001006/

[3] James Snell 외 2인, Programming Web Services with SOAP, O'Reilly &

http://www.w3.org/TR/2000/NOTE-SOAP-20000508/

[11] Web Services Description Language (WSDL) 1.1 http://www.w3.org/TR/2001/NOTE-wsdl

[12] UDDI Version 2.04 API Specification UDDI Committee Specification, 19 July 2002

http://uddi.org/pubs/ProgrammersAPI-V2.04-Published-20020719.htm#_Toc 25137690-20010315/

[13] David Bell, et al. Distributed Database System Addison-Wesley, 1992 [14] M. Tamer Ozsu, Principles of Distributed Database System, Prentice-Hall, 1999

[15] United Modeling Language(UML), Version 1.5, Complete specification, http://www.omg.org/docs/formal/03-03-01.pdf

[16] Fabio Casati, Ming-Chien Shan, "Models and Languages for Describing and Discovering E-Services", Tutorial, Semantic Web Working

Symposium, Stanford, USA, July 2001.

[17] 시장분석, 텔레메틱스, Software Market News, 한국소프트웨어진흥원 (2002. 11)

[18] 김동균, 이필우, 황일선, 그리드 컴퓨팅, 정보과학회지, 제 20권 2호(2002. 2) [19] 이경하, 이규철, 웹 서비스의 향후 발전 방향, 정보처리학회지, 제 9권 4호 (2002. 7)

관련 문서