Skip to content

Spike Research: Using ClickHouse as the datastore for the Exec Dashboard

Problem to solve

Data-driven optimization of SDLC requires a centralized view of all the DevOps metrics that available in GitLab.

  1. Users need to aggregate multiple data records from multiple stages into one view.
  2. PostgreSQL is not set up for analytical workloads.
  3. Analytics data is currently spread between multiple different APIs

Suggested solution

  1. Daily aggregation jobs to extract the metrics and copying them to ClickHouse.
  2. The granularity of the measurement will be on daily intervals.
  3. The Dashboard will query the data from ClickHouse. (Out of scope for this issue)

Reference use cases

Metrics list

  1. Deployment Frequency (DORA)
  2. Lead Time for Changes (DORA)
  3. Change Failure Rate (DORA)
  4. Time to Restore Service (DORA
  5. Lead time (VSA)
  6. Cycle time (VSA)
  7. MR rate
  8. Commits rate
  9. Critical Vulnerabilities
  10. Project Security status
  11. DevOps Score
  12. DevOps Adoption by subgroup

Use case A: Group by: Project

Click to expand

Screen_Shot_2022-10-04_at_3.14.07

Use case B: Group by: Metric

Click to expand

Screen_Shot_2022-10-04_at_3.15.28

User experience goal (Out of scope for this issue)

Investigation and clarification questions:

  1. What about self-managed ?
  2. What about drill down from the Dashboard into the other analytic pages?

Related information

Edited by Haim Snir