ProvenanceQuantumGraphReader¶
- class lsst.pipe.base.quantum_graph.ProvenanceQuantumGraphReader(header: HeaderModel, pipeline_graph: PipelineGraph, zf: zipfile.ZipFile, decompressor: Decompressor, address_reader: AddressReader, page_size: int)¶
Bases:
BaseQuantumGraphReaderA helper class for reading provenance quantum graphs.
Notes
The
opencontext manager should be used to construct new instances. Instances cannot be used after the context manager exits, except to access thegraphattribute`.The various
read_*methods in this class update thegraphattribute in place and returnself.Methods Summary
fetch_logs(nodes)Fetch log datasets.
fetch_metadata(nodes)Fetch metadata datasets.
Fetch package version information.
open(uri, *[, page_size, import_mode])Construct a reader from a URI.
read_datasets([datasets])Read information about the given datasets.
Read all bipartite edges and all quantum and dataset node attributes, fully populating the
graphattribute.Read the thin graph, with all edge information and categorization of quanta by task label.
read_quanta([quanta])Read information about the given quanta.
Methods Documentation
- fetch_logs(nodes: Iterable[uuid.UUID | DatasetIndex | QuantumIndex]) dict[uuid.UUID | DatasetIndex | QuantumIndex, ButlerLogRecords]¶
Fetch log datasets.
- fetch_metadata(nodes: Iterable[uuid.UUID | DatasetIndex | QuantumIndex]) dict[uuid.UUID | DatasetIndex | QuantumIndex, TaskMetadata]¶
Fetch metadata datasets.
- classmethod open(uri: str | ParseResult | ResourcePath | Path, *, page_size: int | None = None, import_mode: TaskImportMode = TaskImportMode.DO_NOT_IMPORT) Iterator[ProvenanceQuantumGraphReader]¶
Construct a reader from a URI.
- Parameters:
- uriconvertible to
lsst.resources.ResourcePath URI to open. Should have a
.qgextension.- page_size
int, optional Approximate number of bytes to read at once from address files and multi-block files. Note that this does not set a page size for all reads, but it does affect the smallest, most numerous reads. Can also be set via the
LSST_QG_PAGE_SIZEenvironment variable.- import_mode
pipeline_graph.TaskImportMode, optional How to handle importing the task classes referenced in the pipeline graph.
- uriconvertible to
- Returns:
- reader
contextlib.AbstractContextManager[ProvenanceQuantumGraphReader] A context manager that returns the reader when entered.
- reader
- read_datasets(datasets: Iterable[UUID | int] | None = None) Self¶
Read information about the given datasets.
- read_full_graph() Self¶
Read all bipartite edges and all quantum and dataset node attributes, fully populating the
graphattribute.- Returns:
- self
ProvenanceQuantumGraphReader The reader (to permit method-chaining).
- self
Notes
This does not read logs, metadata, or packages ; those must always be fetched explicitly.
- read_init_quanta() Self¶
Read the thin graph, with all edge information and categorization of quanta by task label.
- Returns:
- self
ProvenanceQuantumGraphReader The reader (to permit method-chaining).
- self