earticle

논문검색

인터넷

고병렬 데이터 스트림을 위한 분산 메시지 큐 시스템의 확장성 분석

원문정보

Scalability Analysis of Distributed Messaging Queuing Systems for Highly Parallel Data Streams

백승연, 이우경, 최원석, 이하얀, 신승민, 이은지

피인용수 : 0(자료제공 : 네이버학술정보)

초록

영어

The growth of big data services has expanded execution structures where multiple processes share large data volumes. Distributed message queue systems like Apache Kafka, which enable asynchronous data sharing, are essential here. Apache Kafka allows incoming messages for a single topic to be distributed and stored across multiple partitions. A partition represents an abstraction for an independent data flow, and ideally, as the number of partitions increases, the message queue’s throughput should scale linearly. In this paper, we examine through various experiments whether Kafka’s current scalability approach, which relies on partitions, is effective. Experimental results reveal that while increasing partitions improves throughput, it fails to achieve linear scaling even when sufficient resources are available. This limitation appears to stem from an inability to fully maintain independence in the implementation of partitions, which are intended to represent independent data streams. Building on these findings, we aim to analyze in detail the factors that hinder high-parallelism data stream support via partitions and propose methods to address these issues.

한국어

최근 빅데이터 기반 서비스의 증가는 다수의 프로세스가 고용량의 데이터를 송수신하면서 협력하는 실행 구조의 확산을 가져왔다. 프로세스 간 데이터를 비동기적으로 송수신하도록 도와주는 분산 메시지 큐 시스템은 상기 실행 환경 에서 중요한 역할을 수행한다. 양 프로세스 간 동기적 데이터 송수신은 동기화 과정에서 상당한 비효율성을 지니기 때문 에 데이터를 생산/소비하는 프로세스와 별개로 데이터를 풀링(Pooling)해주고, 상시로 데이터를 소비할수 있도록 해주 기 때문에 데이터 공유가 용이해 지기 때문이다. 대표적인 분산 메시지 큐 시스템인 Apache Kafka는 단일 토픽 (Topic)에 대해 유입되는 메시지를 다수의 파티션으로 분산하여 저장할 수 있도록 한다. 파티션은 데이터를 저장하는 독립적인 플로우(Flow)에 대한 추상화 이상적으로는 그 수가 증가하면 메시지 큐의 처리량도 선형적으로 증가해야 한다. 본 논문에서는 파티션에 의존하는 현재의 Kafka 확장성(Scalability) 보장 방식이 실효성을 지니는지 다양한 실험을 통 해 관찰한다. 실험 결과 파티션의 증가가 처리량을 개선시키는 데에 효과는 있으나 자원이 충분함에도 불구하고 선형적 인 증가는 이끌어내지 못하는 것을 관찰하였다. 이것은 파티션이라는 독립적인 데이터 스트림을 나타내는 추상적 개념을 구현할 때 그 독립성을 충분히 확보하지 못하는 것으로 판단된다. 향후 본 논문에서 분석한 실험 결과를 바탕으로 파티 션을 통한 고병렬성 데이터 스트림 지원을 방해하는 요소를 구체적으로 분석하고 이를 개선하는 방안을 제안하고자 한다.

목차

요약
Abstract
Ⅰ. 서론
Ⅱ. 연구 배경
1. Apache Kafka 내부 구조
Ⅲ. 파티션 기반 메시지 큐의 병렬성 분석
Ⅳ. 실험결과 분석
Ⅴ. 결론
References

저자정보

  • 백승연 Seungyeon Baek. 준회원, 숭실대학교 AI융합학부
  • 이우경 Wookyung Lee. 준회원, 숭실대학교 AI융합학부
  • 최원석 Wonseok Choi. 준회원, 숭실대학교 AI융합학부
  • 이하얀 Hayan Lee. 준회원, 숭실대학교 AI융합학부
  • 신승민 Seungmin Shin. 준회원, 숭실대학교 AI융합학부
  • 이은지 Eunji Lee. 정회원, 숭실대학교 AI융합학부

참고문헌

자료제공 : 네이버학술정보

    ※ 기관로그인 시 무료 이용이 가능합니다.

    • 4,000원

    0개의 논문이 장바구니에 담겼습니다.