Skip to content

feat(asap-tools): RQE trees and feeder-format data facts in random workloads #881

Closed

Description

@milindsrivastava1997

Part of the RQE frontend tracker. Decisions live in the tracker.

What

In asap-tools/experiments/datasets/fake_metric/random_workloads.py:

  1. Every query gets an expr field: its RQE expression tree (shape defined in the A1 issue). Existing query shapes only, no new templates. Leaves are self-contained (id, metric, capability, lookback_ms, grouping, phi/k, value). Queries whose leaves use capabilities outside sum|quantile|cardinality|topk_by_value (the counter-gated topk_by_count) get no expr.
  2. data_facts is rewritten in the paced feeder's metrics format (the same format as a sketch-bench eval table's e2e.metrics), so the feeder can generate the data and sketch-bench can plan for it:
    • data: gauge, Pareto α = 2.0, series scaled by Zipf θ = 1.1 over the 10,000 leaves, 10 samples/s per series, 4-level child_of hierarchy (region → service → job → label_0)
    • data_total: counter, same hierarchy/rate/keys
    • events: records table; labels region/service/job/label_0 uniform (skew 0); user_id Zipf θ = 1.1 over 10,000 keys; 10 records/s per leaf series (100,000/s total)
    • the cardinality RQE's metric becomes events (the table its SQL reads)
  3. Regenerate and re-commit the seed-862 manifests; keep the byte-identical-for-a-fixed-seed test.
  4. Update the design doc (.design_docs/accelerated-random-workload-eval.md) where it describes data_facts.

The leaf JSON must deserialize into A1's type; if A1 has not merged, mirror its field names exactly.

Done when

  • generator emits expr + feeder-format facts; tests cover both; manifests regenerated
  • the paced feeder accepts the manifest's metrics block (validated by running its parser on one manifest, or a test)

Activity

  1. milindsrivastava1997 commented on Oct 14, 2026

    @milindsrivastava1997
    ContributorAuthor

    Tracker: #886

  2. milindsrivastava1997 commented on Oct 15, 2026

    @milindsrivastava1997
    ContributorAuthor

    Superseded: the feeder-format data facts landed in #879, and RQE trees for random workloads are written by sketch-bench#228 (merged with sketch-bench#226).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions