البنية
الوسيطات
db_name- اسم قاعدة البيانات التي يوجد فيها جدول TimeSeries.time_series_table- اسم جدول TimeSeries.promql_query- استعلام مكتوب بصيغة PromQL.evaluation_time- الطابع الزمني للتقييم، بدقة ميلي ثانية أو أدق. لتقييم استعلام في الوقت الحالي، استخدمnow()باعتبارهevaluation_time.
القيمة المُعادة
تُرجع الدالة أعمدة مختلفة بحسب نوع نتيجة الاستعلام المُمرَّر إلى المعاملpromql_query:
تكون القيم دائمًا من النوع
Float64 بغض النظر عن نوع القيم في جدول TimeSeries. وتساوي دقة S للطوابع الزمنية دقتها
في الجدول، على ألا تقل عن 3 (مللي ثانية). وتكون المنطقة الزمنية TZ هي المنطقة الزمنية لـevaluation_time إذا كان
نوعه DateTime أو DateTime64 مع منطقة زمنية، وإلا فهي المنطقة الزمنية للطوابع الزمنية في الجدول.
يُسمّى العمود samples بالاسم time_series إذا كان الجدول TimeSeries من version 2 أو أقدم.
الميزات المدعومة في PromQL
المُحدِّدات
المُحدِّدات الآنية، ومُحدِّدات النطاق، ومطابقات التسميات (=, !=, =~, !~)، ومُعدِّلات الإزاحة، ومُعدِّلات الطابع الزمني @، والاستعلامات الفرعية.
الدوال
ملاحظة: تستخدم
histogram_quantile الاستيفاء الخطي على حاويات المُدرَّج التكراري التقليدي (التي يحدّدها تسمية le). لا يتم دعم المُدرَّجات التكرارية الأصلية. يجب أن تكون قيمة وسيطة phi (مستوى quantile) scalar ثابتًا. وتُرفض التعبيرات التي تتغيّر في كل خطوة، مثل histogram_quantile(time() / 1000, ...)، مع استثناء NOT_IMPLEMENTED.
ملاحظة: تُرجع min_of(a, b) وmax_of(a, b) القيمة الأصغر والأكبر، على الترتيب، من بين قيمتين من النوع scalar. ويجب أن تكون كلتا الوسيطتين من النوع scalar.
ملاحظة: تُعدّ min_of وmax_of وts_of_min_over_time وts_of_max_over_time وts_of_last_over_time وfirst_over_time وts_of_first_over_time وmad_over_time دوال تجريبية في Prometheus (تُفعّل فيه باستخدام --enable-feature=promql-experimental-functions)؛ ويقيّمها ClickHouse دون اشتراط تلك العلامة.
العوامل
العوامل الثنائية الحسابية (+, -, *, /, %, ^, atan2) وعوامل المقارنة (==, !=, <, >, <=, >= مع bool اختياري)، مع مُعدِّلات on()/ignoring() وgroup_left()/group_right().
عوامل المجموعات المنطقية and وor وunless، مع مُعدِّلات on()/ignoring().
والعوامل الأحادية + و-.
عوامل التجميع
sum, avg, min, max, count, count_values, stddev, stdvar, group, quantile, topk, bottomk, limitk — مع مُعدِّلات اختيارية من نوع by() أو without().