나의 잡다한 노트 및 메모

Druid 아키텍처 중 주요 컴포넌트의 역할 본문

데이터엔지니어/Druid

Druid 아키텍처 중 주요 컴포넌트의 역할

peanutwalnut 2025. 3. 1. 20:03

주요 컴포넌트와 역할

  • Middle Manager
    • 역할:
      Middle Manager는 Overlord가 할당한 데이터 인제스천 작업(예: 배치 작업, 스트리밍 데이터 인덱싱)을 실제로 수행합니다.
      • 원시 데이터를 받아서 적절한 포맷으로 변환하고, 인덱싱한 후 세그먼트(segment)로 만들어 Deep Storage에 저장할 수 있도록 준비합니다.
      • 실시간 또는 배치 데이터 처리에서 데이터 변환, 필터링, 집계 등을 수행합니다.
    • 특징:
      • 작업이 완료되면 생성된 세그먼트는 Historical 노드로 전파되어 쿼리 서비스에 활용됩니다.
      • 인제스천 파이프라인의 핵심 역할을 하며, 성능 및 확장성에 중요한 영향을 미칩니다
  • Overlord
    • 역할:
      • 인제스천 작업(task)을 관리하고, 이를 Middle Manager에 할당합니다.
      • 작업 스케줄링, 실패한 작업의 재시도 등을 조율합니다.
    • 특징:
      • 전체 데이터 인제스천 프로세스의 오케스트레이션 역할을 담당합니다.
  • Coordinator
    • 역할:
      • Historical 노드에 저장된 세그먼트의 분포와 복제(replicas)를 관리합니다.
      • 세그먼트의 로드 밸런싱, 재배치 등을 통해 데이터 가용성과 쿼리 성능을 최적화합니다.
    • 특징:
      • 클러스터 전체 데이터의 관리와 유지보수를 담당하는 중요한 중앙 제어 컴포넌트입니다.
  • Broker
    • 역할:
      • 사용자의 쿼리를 받아 적절한 Historical 또는 Real-time(실시간) 노드로 전달하여 응답을 집계한 후 결과를 제공합니다.
    • 특징:
      • 쿼리 라우팅과 집계 최적화를 담당하며, 사용자가 Druid 클러스터와 상호작용할 수 있도록 인터페이스 역할을 수행합니다.
  • Historical
    • 역할:
      • 이미 인제스천된 데이터를 세그먼트 단위로 Deep Storage에서 불러와 쿼리 요청에 응답합니다.
    • 특징:
      • 데이터 읽기 전용으로 운영되며, 대량의 데이터에 대해 빠른 쿼리 응답을 제공합니다.

'데이터엔지니어 > Druid' 카테고리의 다른 글

Supervisors 란?  (0) 2025.03.02
Datasources 단계  (0) 2025.03.02
Druid에서 Tune parameters 단계  (0) 2025.03.02
Druid에서 Filter 단계  (0) 2025.03.02
Druid에서 Parser의 역할  (0) 2025.03.02