发布

  • [OPIK-4334] [BE] Optimize SpanDAO and TraceDAO ClickHouse queries (#5145)

    frostbyte_neo 发布于 2026-02-10 15:21:28 +00:00

    • [OPIK-4334] [BE] Optimize SpanDAO and TraceDAO ClickHouse queries

    Key optimizations:

    • Use pre-computed duration column instead of inline calculation
    • Add project_id filter to feedback_scores subqueries for better index pruning
    • Remove redundant LIMIT 1 BY inside already-deduplicated CTEs
    • Add DISTINCT to target_spans CTE to avoid duplicate processing

    Benchmark results show 17-67% performance improvement across queries:

    • TraceDAO SELECT_BY_IDS: 61% faster
    • TraceDAO COUNT_BY_PROJECT_ID: 65% faster
    • TraceDAO SELECT_TRACES_STATS: 54% faster
    • SpanDAO SELECT_SPANS_STATS: 60% faster
    • SpanDAO SELECT_BY_TRACE_IDS: 67% faster
    • Remove test since this is not feature

    • Remove from traces tests

    下载附件