Abstract
Big data management is becoming increasingly important in both industry and academia of information science community. One of the important categories of big data generated from software systems is log data. Log data is generally used for better services in various service providers and can also be used as information for qualification. This paper presents a big data management architecture specialized for log data. Specifically, it provides the aggregation of log messages sent from multiple clients and provides intelligent functionalities such as analyzing log data. The proposed architecture supports an asynchronous process in client-server architectures to prevent the potential bottleneck of accessing data. Accordingly, it does not affect the client performance although using remote data store. We implement the proposed architecture and show that it works well for processing big log data. All components are implemented based on open source software and the developed prototypes are now publicly available.
최근 빅 데이터 관리가 정보기술 분야의 학계와 업계에서 중요한 이슈로 떠오르고 있다. 빅 데이터 중 소프트웨어 시스템에서 필연적으로 생성되는 대표적인 유형 중 하나가 로그 데이터이다. 로그 데이터는 서비스 제공자가 더 나은 서비스를 제공하고 소프트웨어의 품질을 향상시키기 위해 필요하다. 따라서 적절한 방법으로 로그 데이터를 수집하고 이를 분석할 수 있는 인프라 환경을 구축하는 것은 매우 중요하다. 본 논문은 로그 데이터에 특화된 새로운 빅 데이터 관리 기법을 제안한다. 제안하는 기법은 다수의 클라이언트 어플리케이션에서 생성되는 로그 데이터를 네트워크를 통해 전송하고 이를 실시간으로 저장한 후 분석할 수 있는 아키텍처를 제공한다. 해당 아키텍처는 서버-클라이언트 환경에서 로그의 비동기적인 처리를 지원하여 원격 로깅임에도 불구하고 데이터 처리의 병목 현상이나 클라이언트의 성능 저하를 발생시키지 않는다. 제안하는 기법을 실제 시스템에 구현하고 실측한 결과 확장성 있는 로그 데이터 관리가 이루어짐을 확인하였다. 특히, 본 논문에서는 모든 구현을 오픈소스 소프트웨어에 기반하여 수행했으며, 개발 프로토타입 또한 오픈소스 소프트웨어 형태로 공개하여 누구나 사용할 수 있도록 하였다.