跳到主要内容
跳到主要内容

架构

ClickStack 架构围绕三个核心组件构建:ClickHouseHyperDXOpenTelemetry (OTel) 收集器。一个 MongoDB 实例为应用状态提供存储。它们共同提供了一个高性能、开源的可观察性栈,优化用于日志、指标和追踪。

架构概述

Architecture

ClickHouse: 数据库引擎

ClickStack 的核心是 ClickHouse,这是一款面向实时分析的大规模列式数据库。它支持可观察性数据的摄取和查询,使得:

  • 以亚秒级的速度搜索数TB的事件
  • 每天摄取数十亿的高基数记录
  • 可观察性数据的压缩率至少达到10倍
  • 对半结构化 JSON 数据的原生支持,允许动态架构演变
  • 具有数百个内置分析函数的强大 SQL 引擎

ClickHouse 将可观察性数据视为宽事件,允许在单一统一结构中对日志、指标和追踪进行深度关联。

OpenTelemetry 收集器:数据摄取

ClickStack 包含一个预配置的 OpenTelemetry (OTel) 收集器,以开放、标准化的方式摄取遥测数据。用户可以通过以下方式使用 OTLP 协议发送数据:

  • gRPC(端口 4317
  • HTTP(端口 4318

收集器以高效的批量方式将遥测数据导出到 ClickHouse。它支持每个数据源的优化表架构,确保所有信号类型间可扩展的性能。

HyperDX: 界面

HyperDX 是 ClickStack 的用户界面。它提供:

  • 自然语言和 Lucene 风格的搜索
  • 实时调试的实时尾追
  • 日志、指标和追踪的统一视图
  • 前端可观察性的会话回放
  • 仪表板创建和警报配置
  • 用于高级分析的 SQL 查询接口

HyperDX 专为 ClickHouse 设计,将强大的搜索功能与直观的工作流程结合在一起,使用户能够快速发现异常、调查问题并获得洞见。

MongoDB: 应用状态

ClickStack 使用 MongoDB 来存储应用级状态,包括:

  • 仪表板
  • 警报
  • 用户资料
  • 保存的可视化

将状态与事件数据分离确保了性能和可扩展性,同时简化了备份和配置。

这种模块化架构使 ClickStack 能够提供一个即插即用的可观察性平台,快速、灵活且开源。