| 特性/方面 | GreptimeDB | VictoriaTraces |
|---|---|---|
| 数据模型 | 统一可观测性数据库 | 分布式链路追踪后端 |
| 值模型 | 多值(支持复杂数据结构) | 带属性的追踪跨度 |
| 多模型支持 | 指标、日志与链路追踪在一个数据库中 | 仅链路追踪(需要 VictoriaMetrics 和 VictoriaLogs 实现完整可观测性) |
| 查询语言 | SQL & PromQL(双接口) | 兼容 TraceQL 的查询 |
| 数据摄取协议 | SQL gRPC InfluxDB 行协议 Prometheus 远程存储 OpenTelemetry Jaeger Loki Push API Elasticsearch Bulk API HTTP API | OpenTelemetry 协议 (OTLP) Jaeger Zipkin |
| 数据保留 | 支持分层存储的灵活 TTL 策略 | 可配置的保留与自动清理 |
| 持续聚合 | 内置 SQL 聚合、Pipeline ETL 引擎与 Flow 流计算 | 基于链路追踪的指标和服务图 |
| 部署复杂度 | 单一系统部署 | 单节点或集群部署,支持可选的多租户 |
| 用例 | 统一可观测性、实时分析、物联网监控、边缘计算 | 分布式追踪、请求流分析、延迟故障排查、基于链路追踪的告警 |
| 架构 | 计算存储分离的云原生分布式架构 | 分布式组件的集群架构 |
| 存储格式 | Apache Parquet(列式存储、压缩) | 优化的链路追踪存储格式 |
| 存储扩展性 | 对象存储集成,容量无限 | 支持集群部署的可扩展存储 |
| 高可用性 | 原生集群,自动故障转移 | 支持复制的集群模式 |
| 许可证 | Apache 2.0 | Apache 2.0 |
| 编程语言 | Rust(内存安全、高性能) | Go(生态系统兼容性) |
| 部署选项 | 单节点、集群、K8s 原生、边缘到云统一 API | 单节点、通过 Helm charts 的 Kubernetes 集群 |
| 运维复杂度 | 统一系统简化 K8s 运维 | VictoriaMetrics 生态系统的一部分(需要 VictoriaMetrics 和 VictoriaLogs 实现完整堆栈) |
| 可视化 | Grafana、Jaeger UI、通过 SQL 的自定义仪表板 | 支持 Grafana 和 Jaeger UI |
| 告警 | 统一告警覆盖指标、日志和链路追踪 | 通过 vmalert 的基于链路追踪的告警 |