الوصف
State
على الدالة avg
لإنتاج حالة وسيطة من النوع AggregateFunction(avg, T)، حيث
يكون T هو النوع المحدد للمتوسط.
مثال على الاستخدام
AggregateFunction
مع الدالة avgState لتجميع بيانات حركة مرور الموقع الإلكتروني.
أولاً، أنشئ الجدول المصدر لبيانات حركة مرور الموقع:
avg لا يمكنه استخدام النوع SimpleAggregateFunction لأنه يستلزم حالةً معقدة
(مجموعًا وعددًا). لذا نستخدم النوع AggregateFunction:
page_performance:
avg_response_time من النوع AggregateFunction(avg, UInt32)
ويخزّن معلومات الحالة الوسيطة. لاحظ أيضاً أن بيانات الصف الخاصة بـ
avg_response_time ليست ذات فائدة لنا، إذ نرى أحرفاً غريبة مثل
، n، F، }. هذه محاولة من الطرفية لعرض البيانات الثنائية على شكل نص.
والسبب في ذلك أن أنواع AggregateFunction تخزّن حالتها بتنسيق ثنائي
مُحسَّن للتخزين الفعّال والمعالجة، لا للقراءة البشرية. تحتوي هذه الحالة الثنائية على جميع المعلومات اللازمة
لحساب المتوسط.
للاستفادة منه، استخدم المُجمِّع Merge: