28#include <unordered_map>
80 std::optional<CounterResult>
dvs;
100 static std::unique_ptr<ScanMetrics>
Noop();
105 std::shared_ptr<Timer> total_planning_duration;
106 std::shared_ptr<Counter> result_data_files;
107 std::shared_ptr<Counter> result_delete_files;
108 std::shared_ptr<Counter> scanned_data_manifests;
109 std::shared_ptr<Counter> scanned_delete_manifests;
110 std::shared_ptr<Counter> total_data_manifests;
111 std::shared_ptr<Counter> total_delete_manifests;
112 std::shared_ptr<Counter> total_file_size_in_bytes;
113 std::shared_ptr<Counter> total_delete_file_size_in_bytes;
114 std::shared_ptr<Counter> skipped_data_manifests;
115 std::shared_ptr<Counter> skipped_delete_manifests;
116 std::shared_ptr<Counter> skipped_data_files;
117 std::shared_ptr<Counter> skipped_delete_files;
118 std::shared_ptr<Counter> indexed_delete_files;
119 std::shared_ptr<Counter> equality_delete_files;
120 std::shared_ptr<Counter> positional_delete_files;
121 std::shared_ptr<Counter> dvs;
135 int64_t snapshot_id = kInvalidSnapshotId;
139 int32_t schema_id = kInvalidSchemaId;
147 std::unordered_map<std::string, std::string>
metadata;
Factory for creating named Counter and Timer instances.
Definition metrics_context.h:35
Live scan metrics collected during a table scan operation.
Definition scan_report.h:94
static std::unique_ptr< ScanMetrics > Noop()
Create a ScanMetrics instance with all-noop counters and timer.
ScanMetricsResult ToResult() const
Snapshot current counter/timer values into a ScanMetricsResult.
static std::unique_ptr< ScanMetrics > Make(MetricsContext &context)
Create a ScanMetrics instance backed by the given MetricsContext.
Define symbol visibility macros for core Iceberg APIs.
Factory interface for creating named Counter and Timer instances.
Serialisable snapshot types shared across scan and commit metrics.
Core Apache Iceberg C++ APIs.
Definition arrow_io_util.h:33
Immutable snapshot of scan metrics for use in ScanReport.
Definition scan_report.h:46
std::optional< TimerResult > total_planning_duration
Total planning duration (count of recordings + accumulated nanoseconds).
Definition scan_report.h:48
std::optional< CounterResult > skipped_data_files
Number of individual data files skipped by stats pruning.
Definition scan_report.h:70
std::optional< CounterResult > total_data_manifests
Total number of data manifests in the snapshot.
Definition scan_report.h:58
static ScanMetricsResult From(const ScanMetrics &scan_metrics)
Build a ScanMetricsResult from live scan metrics.
std::optional< CounterResult > skipped_delete_files
Number of individual delete files skipped by stats pruning.
Definition scan_report.h:72
std::optional< CounterResult > total_file_size_in_bytes
Total byte size of all result data files.
Definition scan_report.h:62
std::optional< CounterResult > positional_delete_files
Number of positional delete files in the result.
Definition scan_report.h:78
std::optional< CounterResult > total_delete_manifests
Total number of delete manifests in the snapshot.
Definition scan_report.h:60
std::optional< CounterResult > total_delete_file_size_in_bytes
Total byte size of all result delete files.
Definition scan_report.h:64
std::optional< CounterResult > skipped_delete_manifests
Number of delete manifests skipped by partition/stats pruning.
Definition scan_report.h:68
std::optional< CounterResult > equality_delete_files
Number of equality delete files in the result.
Definition scan_report.h:76
std::optional< CounterResult > result_data_files
Number of data files included in the scan result.
Definition scan_report.h:50
std::optional< CounterResult > scanned_data_manifests
Number of data manifests whose files were read (not skipped).
Definition scan_report.h:54
std::optional< CounterResult > dvs
Number of deletion vectors in the result.
Definition scan_report.h:80
std::optional< CounterResult > result_delete_files
Number of delete files included in the scan result.
Definition scan_report.h:52
std::optional< CounterResult > skipped_data_manifests
Number of data manifests skipped by partition/stats pruning.
Definition scan_report.h:66
std::optional< CounterResult > indexed_delete_files
Number of indexed delete files (positional or DV) in the result.
Definition scan_report.h:74
std::optional< CounterResult > scanned_delete_manifests
Number of delete manifests whose files were read (not skipped).
Definition scan_report.h:56
Report generated after a table scan operation.
Definition scan_report.h:131
std::vector< int32_t > projected_field_ids
Projected field IDs from the scan schema.
Definition scan_report.h:141
std::vector< std::string > projected_field_names
Projected field names from the scan schema.
Definition scan_report.h:143
std::string table_name
The fully qualified name of the table that was scanned.
Definition scan_report.h:133
std::unordered_map< std::string, std::string > metadata
Additional key-value metadata.
Definition scan_report.h:147
std::shared_ptr< Expression > filter
Filter expression used in the scan, if any.
Definition scan_report.h:137
ScanMetricsResult scan_metrics
Metrics collected during the scan operation.
Definition scan_report.h:145