Open1

Apache Druid 図解

harrythecodeharrythecode

主要コンポーネントの役割

  1. Client (Query User)

    • クエリをDruidに送るユーザー(またはアプリケーション)。
    • Brokerを経由してデータを取得。
  2. Broker

    • クエリを受け取って、適切なHistoricalやMiddleManagerにデータを問い合わせる。
    • 各データノードから取得したデータを集約して、クエリの結果を返す。
  3. Coordinator

    • クラスター全体のデータ管理を担当。
    • どのHistoricalサーバーがどのデータを持つかを制御。
  4. Overlord

    • MiddleManagerにタスクを割り当てる役割。
    • Druidのデータ取り込みを管理。
  5. MiddleManager

    • Peonを管理し、データ取り込みタスクを実行する。
  6. Peon

    • 実際のデータ取り込み(Ingestion)を担当するワーカープロセス。
    • データを処理し、Deep Storageに保存する。
  7. Historical

    • すでに取り込まれたデータを保持し、Brokerの問い合わせに応じる。
  8. Deep Storage

    • Druidのデータを恒久的に保存する場所(S3, HDFS, GCSなどが利用可能)。