mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-05-26 18:00:41 +00:00
6 lines
11 KiB
HTML
6 lines
11 KiB
HTML
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `extension_plan` mod in crate `promql`."><title>promql::extension_plan - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-e56847b5.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="promql" data-themes="" data-resource-suffix="" data-rustdoc-version="1.92.0-nightly (fa3155a64 2025-09-30)" data-channel="nightly" data-search-js="search-e256b49e.js" data-stringdex-js="stringdex-828709d0.js" data-settings-js="settings-c38705f0.js" ><script src="../../static.files/storage-e2aeef58.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../static.files/main-ce535bd0.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Module extension_plan</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../promql/index.html">promql</a><span class="version">1.0.0-rc.2</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module extension_<wbr>plan</a></h2><h3><a href="#modules">Module Items</a></h3><ul class="block"><li><a href="#modules" title="Modules">Modules</a></li><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#constants" title="Constants">Constants</a></li><li><a href="#functions" title="Functions">Functions</a></li><li><a href="#types" title="Type Aliases">Type Aliases</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="../index.html">In crate promql</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">promql</a></div><h1>Module <span>extension_<wbr>plan</span> <button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/promql/extension_plan.rs.html#15-85">Source</a> </span></div><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><dl class="item-table"><dt><a class="mod" href="absent/index.html" title="mod promql::extension_plan::absent">absent</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="mod" href="empty_metric/index.html" title="mod promql::extension_plan::empty_metric">empty_<wbr>metric</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="mod" href="histogram_fold/index.html" title="mod promql::extension_plan::histogram_fold">histogram_<wbr>fold</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="mod" href="instant_manipulate/index.html" title="mod promql::extension_plan::instant_manipulate">instant_<wbr>manipulate</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="mod" href="normalize/index.html" title="mod promql::extension_plan::normalize">normalize</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="mod" href="planner/index.html" title="mod promql::extension_plan::planner">planner</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="mod" href="range_manipulate/index.html" title="mod promql::extension_plan::range_manipulate">range_<wbr>manipulate</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="mod" href="scalar_calculate/index.html" title="mod promql::extension_plan::scalar_calculate">scalar_<wbr>calculate</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="mod" href="series_divide/index.html" title="mod promql::extension_plan::series_divide">series_<wbr>divide</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="mod" href="union_distinct_on/index.html" title="mod promql::extension_plan::union_distinct_on">union_<wbr>distinct_<wbr>on</a><span title="Restricted Visibility"> 🔒</span> </dt></dl><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Absent.html" title="struct promql::extension_plan::Absent">Absent</a></dt><dt><a class="struct" href="struct.AbsentExec.html" title="struct promql::extension_plan::AbsentExec">Absent<wbr>Exec</a></dt><dt><a class="struct" href="struct.AbsentStream.html" title="struct promql::extension_plan::AbsentStream">Absent<wbr>Stream</a></dt><dt><a class="struct" href="struct.EmptyMetric.html" title="struct promql::extension_plan::EmptyMetric">Empty<wbr>Metric</a></dt><dd>Empty source plan that generate record batch with two columns:</dd><dt><a class="struct" href="struct.EmptyMetricExec.html" title="struct promql::extension_plan::EmptyMetricExec">Empty<wbr>Metric<wbr>Exec</a></dt><dt><a class="struct" href="struct.EmptyMetricStream.html" title="struct promql::extension_plan::EmptyMetricStream">Empty<wbr>Metric<wbr>Stream</a></dt><dt><a class="struct" href="struct.HistogramFold.html" title="struct promql::extension_plan::HistogramFold">Histogram<wbr>Fold</a></dt><dd><code>HistogramFold</code> will fold the conventional (non-native) histogram (<a href="https://prometheus.io/docs/concepts/metric_types/#histogram">1</a>) for later
|
|
computing.</dd><dt><a class="struct" href="struct.HistogramFoldExec.html" title="struct promql::extension_plan::HistogramFoldExec">Histogram<wbr>Fold<wbr>Exec</a></dt><dt><a class="struct" href="struct.HistogramFoldStream.html" title="struct promql::extension_plan::HistogramFoldStream">Histogram<wbr>Fold<wbr>Stream</a></dt><dt><a class="struct" href="struct.InstantManipulate.html" title="struct promql::extension_plan::InstantManipulate">Instant<wbr>Manipulate</a></dt><dd>Manipulate the input record batch to make it suitable for Instant Operator.</dd><dt><a class="struct" href="struct.InstantManipulateExec.html" title="struct promql::extension_plan::InstantManipulateExec">Instant<wbr>Manipulate<wbr>Exec</a></dt><dt><a class="struct" href="struct.InstantManipulateStream.html" title="struct promql::extension_plan::InstantManipulateStream">Instant<wbr>Manipulate<wbr>Stream</a></dt><dt><a class="struct" href="struct.PromExtensionPlanner.html" title="struct promql::extension_plan::PromExtensionPlanner">Prom<wbr>Extension<wbr>Planner</a></dt><dt><a class="struct" href="struct.RangeManipulate.html" title="struct promql::extension_plan::RangeManipulate">Range<wbr>Manipulate</a></dt><dd>Time series manipulator for range function.</dd><dt><a class="struct" href="struct.RangeManipulateExec.html" title="struct promql::extension_plan::RangeManipulateExec">Range<wbr>Manipulate<wbr>Exec</a></dt><dt><a class="struct" href="struct.RangeManipulateStream.html" title="struct promql::extension_plan::RangeManipulateStream">Range<wbr>Manipulate<wbr>Stream</a></dt><dt><a class="struct" href="struct.ScalarCalculate.html" title="struct promql::extension_plan::ScalarCalculate">Scalar<wbr>Calculate</a></dt><dd><code>ScalarCalculate</code> is the custom logical plan to calculate
|
|
<a href="https://prometheus.io/docs/prometheus/latest/querying/functions/#scalar"><code>scalar</code></a>
|
|
in PromQL, return NaN when have multiple time series.</dd><dt><a class="struct" href="struct.SeriesDivide.html" title="struct promql::extension_plan::SeriesDivide">Series<wbr>Divide</a></dt><dt><a class="struct" href="struct.SeriesDivideExec.html" title="struct promql::extension_plan::SeriesDivideExec">Series<wbr>Divide<wbr>Exec</a></dt><dt><a class="struct" href="struct.SeriesDivideStream.html" title="struct promql::extension_plan::SeriesDivideStream">Series<wbr>Divide<wbr>Stream</a></dt><dd>Assume the input stream is ordered on the tag columns.</dd><dt><a class="struct" href="struct.SeriesNormalize.html" title="struct promql::extension_plan::SeriesNormalize">Series<wbr>Normalize</a></dt><dd>Normalize the input record batch. Notice that for simplicity, this method assumes
|
|
the input batch only contains sample points from one time series.</dd><dt><a class="struct" href="struct.SeriesNormalizeExec.html" title="struct promql::extension_plan::SeriesNormalizeExec">Series<wbr>Normalize<wbr>Exec</a></dt><dt><a class="struct" href="struct.SeriesNormalizeStream.html" title="struct promql::extension_plan::SeriesNormalizeStream">Series<wbr>Normalize<wbr>Stream</a></dt><dt><a class="struct" href="struct.UnionDistinctOn.html" title="struct promql::extension_plan::UnionDistinctOn">Union<wbr>Distinct<wbr>On</a></dt><dd>A special kind of <code>UNION</code>(<code>OR</code> in PromQL) operator, for PromQL specific use case.</dd><dt><a class="struct" href="struct.UnionDistinctOnExec.html" title="struct promql::extension_plan::UnionDistinctOnExec">Union<wbr>Distinct<wbr>OnExec</a></dt><dt><a class="struct" href="struct.UnionDistinctOnStream.html" title="struct promql::extension_plan::UnionDistinctOnStream">Union<wbr>Distinct<wbr>OnStream</a></dt></dl><h2 id="constants" class="section-header">Constants<a href="#constants" class="anchor">§</a></h2><dl class="item-table"><dt><a class="constant" href="constant.METRIC_NUM_SERIES.html" title="constant promql::extension_plan::METRIC_NUM_SERIES">METRIC_<wbr>NUM_<wbr>SERIES</a><span title="Restricted Visibility"> 🔒</span> </dt></dl><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><dl class="item-table"><dt><a class="fn" href="fn.build_special_time_expr.html" title="fn promql::extension_plan::build_special_time_expr">build_<wbr>special_<wbr>time_<wbr>expr</a></dt><dt><a class="fn" href="fn.resolve_column_name.html" title="fn promql::extension_plan::resolve_column_name">resolve_<wbr>column_<wbr>name</a></dt><dd>Convert index back to column name for deserialization</dd><dt><a class="fn" href="fn.resolve_column_names.html" title="fn promql::extension_plan::resolve_column_names">resolve_<wbr>column_<wbr>names</a></dt><dd>Batch process multiple column indices</dd><dt><a class="fn" href="fn.serialize_column_index.html" title="fn promql::extension_plan::serialize_column_index">serialize_<wbr>column_<wbr>index</a></dt><dd>Utilities for handling unfix logic in extension plans
|
|
Convert column name to index for serialization</dd></dl><h2 id="types" class="section-header">Type Aliases<a href="#types" class="anchor">§</a></h2><dl class="item-table"><dt><a class="type" href="type.Millisecond.html" title="type promql::extension_plan::Millisecond">Millisecond</a></dt></dl></section></div></main></body></html> |