• 검색 결과가 없습니다.

데이터 마이닝 애플리케이션의 복잡성이 증가하면서 리소스에 대한 요 구 사항도 함께 증가하였다. 이러한 상황에서 그리드 컴퓨팅을 데이터 마 이닝에 접목시키려는 작업이 많이 이루어지고 있다. 그러나 그리드 기술 이 대용량 데이터 마이닝 작업에 적용되기 전에 해결되어야 할 많은 이슈 들이 있는데, 이러한 이슈들을 논의해보기 위해서 Data Mining Grid 시 스템이 개발되었다.

Data Mining Grid 연구 그룹은 데이터 마이닝 애플리케이션을 지원하 는 그리드 시스템의 요구사항을 결정하기 위해서 다양한 범위의 애플리케 이션 영역으로부터 유즈케이스 시나리오를 분석하였다. 이와 같은 유즈케 이스 시나리오 및 요구 사항 분석을 통하여 Data Mining Grid는 하나의 프레임워크 안에서 다양한 종류의 프로그램과 애플리케이션 시나리오를 통합할 수 있게 되었다.

복잡한 애플리케이션 시나리오의 요구사항을 하나의 프레임워크로 통합 하는데 필요한 핵심 이슈는 다음과 같다.

1) 그리드 가능한 데이터 마이닝 애플리케이션은 소스 코드의 수정을 필 요로 하지 않아야 한다. 다시 말해서 시스템을 특정 데이터 마이닝 애플 리케이션, 도구, 기술, 또는 알고리즘에 한정시키지 말아야 한다. 또한 DBMS와 파일 시스템과 같은 다양한 종류의 데이터 소스를 지원해야 한 다.

2) 효율적이고 새로운 사용법, 그리고 향상된 리소스 탐색을 지원해야 한 다. 좀 더 구체적으로 데이터 마이닝 애플리케이션의 속도나 처리량과 같 은 성능 향상을 제공해야 하고 더 많은 사용자에게 더 많은 애플리케이션 을 제공하도록 높은 확장성을 제공해야 한다. 또한 새로운 워크플로우 기 반의 데이터 마이닝 애플리케이션을 생성해야 한다. 예를 들어 전처리, 처 리, 후처리를 커버하기 위해서 여러 개의 데이터 마이닝 작업을 조합할

수 있어야 한다. 마지막으로 기존에 존재하는 하드웨어나 소프트웨어 리 소스의 탐색 성능을 향상시켜야 한다.

3) 사용하기 쉬운 시스템을 만들어야 한다. 도메인 한정적인 사용자에게 는 그리드의 복잡한 세부 기술을 숨기고 기술적 지식이 있는 사용자에게 는 애플리케이션의 세부 사항을 정의하고, 설정하고, 파라메터화할 수 있 는 방법을 제공해야 한다.

Data Mining Grid 시스템은 3개의 원칙에 입각하여 설계되었다. 첫 번 째로 Service-Oriented Architecture(SOA)인데, 이것은 유연한 방법으로 지리적으로 분산된 비즈니스 기능을 공유하도록 지원한다. SOA의 중요한 장점은 유연한 통합, 재사용, 확장성, 상호 운용성, 그리고 기반 기술로부 터의 서비스 추상화와 같은 것들이 있다. 두 번째로 Data Mining Grid 시스템의 유연한 발전을 위하여 Open Grid Service Architecture와 Web Services Resource Framework의 2개의 중요한 분산 컴퓨팅 표준을 지원 하도록 설계되었다. 세 번째로 개발의 속도를 빠르게 하고 비용을 줄이기 위해서 이미 존재하는 개방된 기술을 이용하여 시스템을 설계하였다.

Data Mining Grid의 시스템 구조는 그림 11과 같다.

(그림 11) Data Mining Grid 아키텍처

Data Mining Grid의 시스템 구조는 4개의 레이어로 구성되어 있는데, 상위 레이어의 컴포넌트는 하위 레이어에서 조직된 컴포넌트를 사용한다.

1) Software & hardware resources layer는 맨 아래 기반

소프트웨어 리소스는 데이터 마이닝 애플리케이션과 데이터 리소스로 구성되어 있다. 데이터 리소스는 데이터베이스와 파일 시스템을 의미한다.

하드웨어 리소스는 처리장치와 주-보조 저장 장치, 그리고 컴퓨터 클러스 터로 구성되어 있다.

2) Globus toolkit 4 layer는 시스템의 핵심 그리드 미들웨어 컴포넌트를 설명

OGSA의 요구사항을 만족시키고 WSRF를 구현함으로써 핵심 그리드 미들웨어 기능을 제공한다. 제공하는 몇 가지 중요한 컴포넌트에 대해서 살펴보면 다음과 같다.

➀ Monitoring & Discovery System 4(MDS4): Information Service 컴포 넌트

그리드 상의 소프트웨어와 하드웨어 리소스 그리고 그것들의 상태를 기 술하는 XML 문서를 저장 및 검색하기 위한 기반 시스템으로서 Data Mining Grid의 상위 레벨 서비스(Resource Broker & Information Service)의 기능을 구현하기 위해서 사용된다.

➁ Data management 컴포넌트

그리드 파일 전송 기능(GridFTP, Reliable File Transfer service) 제공 과 OGSA-DAI(Data access & integration tools)와 같은 데이터 서비스 를 제공한다. OGSA-DAI는 파일, 관계형 DB, XML DB에 그리드 가능한 접근을 제공한다.

➂ Java Commodity Grid Kit 사용

GridFTP 서버를 설치하지 않은 클라이언트 기계의 애플리케이션이 파 일을 그리드 스토리지 서버에 혹은 서버로부터 전송이 가능하도록 한다.

➃ Execution management tools

원격지 프로세싱의 초기화, 모니터링, 관리, 그리고 상호 조정을 통제한 다. GT4는 웹 서비스 버전의 Grid Resource Allocation &

Management(WS-GRAM) 인터페이스를 제공하는데 이것은 웹 서비스 버전의 작업 실행을 담당한다. Data Mining Grid는 로컬 클러스터 매니 저와 상호작하는 WS-GRAM의 상대적으로 제한된 기능을 극복하기 위해 서 WS-GRAM의 execution adaptor의 기능을 개선시켰다.

3) Data Mining Grid High-level services layer는 중요 Data Mining Grid 서비스를 제공하는 컴포넌트를 보여줌

업을 선택된 사이트에 전송하고 모니터링한다. 이 전송 프로세스는 데이

4) Data Mining Grid Client components layer는 Data Mining Grid 애플 리케이션의 클라이언트 측 컴포넌트를 설명

Data Mining Grid 클라이언트 컴포넌트는 3개의 주요 사용자 그룹을 지원하기 위해서 개발되었다. 하드웨어와 미들웨어 컴포넌트를 관리하는 Administrator, 새로운 그리드 가능한 애플리케이션을 개발하는 Developers, 애플리케이션을 실행하는 End users로 사용자가 구분된다.

여기서 최종 사용자는 2개의 애플리케이션 클라이언트 타입 중에서 자신

ADS(Application Description Schema)는 메타데이터 스키마 정의문으 로서 시스템 아키텍처 컴포넌트와 사용자와의 상호 작용을 관리한다. 이

➀ General information

- 애플리케이션에 대한 설명, 프로그램 벤더, 버전, 등

➁ Implementation aspects

- 애플리케이션의 OS(윈도우 혹은 리눅스), 프로그래밍 언어, 실행 파 일과 저장 위치, 기타요구사항들(CPU 아키텍처, 메모리, 디스크 스페이스 등)

➂ Parameter

- 데이터 마이닝 애플리케이션의 실행 행위를 정의

- 런타임에 이러한 파라메터들은 서로 다른 커맨드 라인 옵션으로 명 시

➃ Data mining aspects

- 데이터 마이닝 방법, 알고리즘, 소프트웨어 등의 정보를 기술함으로 써 그리드 상의 애플리케이션을 쉽고 빠르게 발견하도록 함

Data Mining Grid는 3개의 유럽 국가를 연결하는 그리드 테스트 베드 를 구축하여 실험하였다. 데이터 중심, 계산 중심 등의 다양한 애플리케이 션 시나리오를 가지고 테스트하였는데, 각각의 시나리오에 대해서 이전보 다 좋은 성능을 얻었다. 그러나 데이터 마이닝 애플리케이션의 플랫폼에 따라서 실행될 수 있는 노드의 제약이 존재한다.

결론적으로 대용량 데이터 마이닝 애플리케이션은 분산 컴퓨팅 환경에 의존하게 될 것이라는 것을 Data Mining Grid 연구 그룹은 예측한다. 그 리드 기술과 데이터 마이닝 애플리케이션을 이용하여 고성능, 확장성, 유 연성, 쉬운 사용성, 개념적 단순성 등의 특징을 갖는 시스템을 개발할 수 있다는 것이다. 이 연구 그룹의 향후 계획은 독립적인 계산 작업으로 쉽 게 나누어질 수 없는 복잡한 애플리케이션을 개발하는 것이다. 이러한 개 발은 그리드 내의 효율적인 프로세스간 통신을 쉽게 해주는 복잡한 그리 드 미들웨어 기술을 필요로 하기 때문에 새로운 도전이라고 생각하고 있 다.

관련 문서