Skip to content

Hydra follow-ups: group totals in the executor, Pass 1 HydraCms candidates, Hydra top-k #703

Open

Description

@zzylol

Scope (deferred for now)

Remaining Hydra work, postponed so the migration's core groups land first:

  1. Group totals in the executor. Upstream asap_sketchlib Design: pre-ASAP structural CSE via bottom-up hash-consing over Rc<QueryExpr> #223 adds Hydra::query_group_total (minimum across rows; never undercounts with non-negative counts; bound n_g + 4N/w at confidence 1−(1/4)^r level). The planner pin branch planner-pin/univmon-hydra puts it on top of the current executor pin. Executor wiring:
    • move the pin;
    • add HydraCms::group_total;
    • answer a point count with value: None in HydraCmsGroup::estimate;
    • accept value: None in capability.rs;
    • fix group_view_reads_and_merges_one_group.
  2. Pass 1 Hydra (G7b). Offer HydraCms for grouped counts, with the Absolute ε·‖stream‖₁ guarantee (after the accuracy metric work in Accuracy targets and guarantees: three error metrics (absolute, relative, rank), a shared AccuracySpec, and metric-aware satisfies #690); prune the degenerate per-group Count-Min for COUNT(*) GROUP BY k with a reason. The executor side (HydraCms kernel, weighted updates, filtered aggregates) is already in feat(asap-physical-operators): execute HydraCms grouped counts and filtered aggregates #695.
  3. Hydra top-k. A per-subpopulation heap kernel and its guarantee.

Related: #695, #690, #669, upstream sketchlib #223.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestsubpopulationsGrouped, hierarchical, or multi-subpopulation summaries

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions