> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-detect-table-modification.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> تحسب دالة PromQL ‏`quantile_over_time` على شبكة زمنية منتظمة.

# timeSeriesQuantileToGrid

<h2 id="timeSeriesQuantileToGrid">
  timeSeriesQuantileToGrid
</h2>

أُضيف في: v26.9.0

دالة تجميعية تستقبل بيانات السلاسل الزمنية على هيئة أزواج من الطوابع الزمنية والقيم، وتحسب دالة [PromQL `quantile_over_time`](https://prometheus.io/docs/prometheus/latest/querying/functions/#quantile_over_time) على شبكة زمنية منتظمة يحددها طابع زمني للبداية وطابع زمني للنهاية وخطوة. ولكل نقطة على الشبكة، تُؤخذ العينات اللازمة لحساب الكمّية من ضمن النافذة الزمنية المحددة. وتُحسب الكمّية باستخدام طريقة R-7 (الشاملة)، على غرار `quantileExactInclusive`. غير أن عينات NaN لا تُستبعد كما تستبعدها `quantileExactInclusive`، بل يُحتفظ بها وتُرتَّب قبل كل قيمة حقيقية كما في Prometheus؛ وعليه يكون وسيط النافذة `[1, NaN, 2]` هو `1`، وتُعيد النافذة التي تكون جميع عيناتها NaN القيمة NaN.

يُمرَّر مستوى الكمّية بعد العينات بوصفه الوسيطة الأخيرة: إما رقمًا واحدًا يُستخدم عند كل نقاط الشبكة، أو مصفوفة تحتوي على رقم لكل نقطة من نقاط الشبكة. ويجب أن يكون المستوى نفسه في جميع الصفوف. وكما في Prometheus، يُعيد المستوى الأقل من 0 القيمة `-Inf`، والمستوى الأكبر من 1 القيمة `+Inf`، ويُعيد المستوى NaN القيمة NaN لكل نقطة من نقاط الشبكة تحتوي نافذتها على عينات.

<Note>
  هذه الدالة في مرحلة المعاينة الخاصة، ويمكن تفعيلها بضبط الإعداد `enable_time_series_aggregate_functions=true`.
</Note>

**الصيغة**

```sql theme={null}
timeSeriesQuantileToGrid(start_timestamp, end_timestamp, grid_step, staleness)(timestamp, value, phi)
timeSeriesQuantileToGrid(start_timestamp, end_timestamp, grid_step, staleness)(samples, phi)
```

**المعلمات**

* `start_timestamp` — يحدد بداية الشبكة الزمنية. يمكن أن يكون أيضًا عددًا كسريًا، أو string يحتوي على رقم أو نص تاريخ ووقت. [`UInt32`](/ar/reference/data-types/int-uint) أو [`DateTime`](/ar/reference/data-types/datetime) أو [`DateTime64`](/ar/reference/data-types/datetime64) أو [`Float*`](/ar/reference/data-types/float) أو [`Decimal*`](/ar/reference/data-types/decimal) أو [`String`](/ar/reference/data-types/string)
* `end_timestamp` — يحدد نهاية الشبكة الزمنية. يمكن أن يكون أيضًا عددًا كسريًا، أو string يحتوي على رقم أو نص تاريخ ووقت. [`UInt32`](/ar/reference/data-types/int-uint) أو [`DateTime`](/ar/reference/data-types/datetime) أو [`DateTime64`](/ar/reference/data-types/datetime64) أو [`Float*`](/ar/reference/data-types/float) أو [`Decimal*`](/ar/reference/data-types/decimal) أو [`String`](/ar/reference/data-types/string)
* `grid_step` — يحدد خطوة الشبكة الزمنية بالثواني. يمكن أن يكون أيضًا عددًا كسريًا، أو string يحتوي على رقم أو مدة مثل '15s' أو '1m'. [`UInt32`](/ar/reference/data-types/int-uint) أو [`Float*`](/ar/reference/data-types/float) أو [`Decimal*`](/ar/reference/data-types/decimal) أو [`String`](/ar/reference/data-types/string)
* `staleness` — يحدد الحد الأقصى لـ"التقادم" بالثواني للعينات التي تؤخذ في الحسبان. نافذة التقادم فاصل زمني مفتوح من اليسار ومغلق من اليمين. يمكن أن يكون أيضًا عددًا كسريًا، أو string يحتوي على رقم أو مدة مثل '15s' أو '1m'. [`UInt32`](/ar/reference/data-types/int-uint) أو [`Float*`](/ar/reference/data-types/float) أو [`Decimal*`](/ar/reference/data-types/decimal) أو [`String`](/ar/reference/data-types/string)

**الوسيطات**

* `timestamp` — الطابع الزمني للعينة. يمكن أن يكون قيمًا فردية أو مصفوفات. [`UInt32`](/ar/reference/data-types/int-uint) أو [`DateTime`](/ar/reference/data-types/datetime) أو [`DateTime64`](/ar/reference/data-types/datetime64) أو [`Array(UInt32)`](/ar/reference/data-types/array) أو [`Array(DateTime)`](/ar/reference/data-types/array) أو [`Array(DateTime64)`](/ar/reference/data-types/array)
* `value` — قيمة السلسلة الزمنية المقابلة للطابع الزمني. يمكن أن تكون قيمًا فردية أو مصفوفات. [`Float*`](/ar/reference/data-types/float) أو [`Array(Float*)`](/ar/reference/data-types/array)
* `samples` — عينات السلسلة الزمنية، تُمرَّر على شكل مصفوفة من الصفوف المرتبة `(timestamp, value)`، تكون عناصرها من أنواع الطابع الزمني والقيمة المذكورة أعلاه. ويُعدّ ذلك بديلًا عن تمرير الطوابع الزمنية والقيم كوسيطتين منفصلتين. [`Array(Tuple(T1, T2))`](/ar/reference/data-types/array)
* `phi` — مستوى الكمّية، ويقع عادةً ضمن النطاق \[0, 1]: إما رقم واحد للشبكة بأكملها، أو مصفوفة تضم رقمًا واحدًا لكل نقطة في الشبكة. يجب أن يكون متطابقًا في جميع الصفوف. [`Float*`](/ar/reference/data-types/float) أو [`UInt8/16/32/64`](/ar/reference/data-types/int-uint) أو [`Int8/16/32/64`](/ar/reference/data-types/int-uint) أو [`Array(Float*)`](/ar/reference/data-types/array) أو [`Array(UInt8/16/32/64)`](/ar/reference/data-types/array) أو [`Array(Int8/16/32/64)`](/ar/reference/data-types/array)

**القيمة المعادة**

تُعيد الكمّية phi للقيم على الشبكة المحددة. تحتوي المصفوفة المُعادة على قيمة واحدة لكل نقطة في الشبكة الزمنية. وتكون القيمة NULL إذا لم توجد أي عينات ضمن النافذة لنقطة معينة في الشبكة. [`Array(Nullable(Float64))`](/ar/reference/data-types/array)

**أمثلة**
