QuackDB.Profile.Operator (quackdb v0.7.0)

Copy Markdown View Source

A DuckDB plan or profiling operator node.

Plans from QuackDB.Profile.explain/4 carry name and extra_info. Profiles from QuackDB.Profile.analyze/4 also carry the operator type, its timing in seconds, and row counts.

Summary

Functions

Decodes a JSON string into this struct.

Decodes a JSON string into this struct, raising on failure.

Dumps this struct into JSON-shaped data, respecting JSON field names.

Builds this struct from a decoded JSON map.

Builds this struct from a decoded JSON map, raising on failure.

Returns a JSON Schema-compatible schema map.

Types

t()

@type t() :: %QuackDB.Profile.Operator{
  children: [t()],
  extra_info: %{required(String.t()) => term()},
  intermediate_rows: non_neg_integer() | nil,
  intermediate_size_bytes: non_neg_integer() | nil,
  name: String.t() | nil,
  row_groups_scanned: non_neg_integer() | nil,
  rows_scanned: non_neg_integer() | nil,
  timing: number() | nil,
  total_row_groups_to_scan: non_neg_integer() | nil,
  type: String.t() | nil
}

Functions

decode(json)

Decodes a JSON string into this struct.

decode!(json)

Decodes a JSON string into this struct, raising on failure.

dump(struct)

Dumps this struct into JSON-shaped data, respecting JSON field names.

from_map(map)

Builds this struct from a decoded JSON map.

from_map!(map)

Builds this struct from a decoded JSON map, raising on failure.

schema()

Returns a JSON Schema-compatible schema map.