دليل Validatar

إعدادات التحليل الإحصائي — قوالب SQL

Profiling Configuration — SQL Templates

شرح كيفية تهيئة تعريفات ملفات تعريف البيانات (profile definitions) في قوالب مصادر البيانات المبنية على SQL، وأنواع الصيغ والمستويات والمتطلبات المسبقة، وكيفية ارتباطها بمجموعات التعريف على مستوى مصدر البيانات.

لوحة المتابعة

نظرة عامة

تحليل البيانات (data profiling) في Validatar هو التحليل الآلي لخصائص بياناتك — أعداد الصفوف، ونسب القيم الفارغة (null)، وأعداد القيم المميزة (distinct)، والتوزيعات الإحصائية، وغير ذلك. يحدد قالب مصدر بيانات مبني على SQL (SQL-based data source template) تعريفات ملفات التعريف (profile definitions) التي تُحدد المقاييس المتاحة لمصادر البيانات على تلك المنصة. تمثل هذه التعريفات الأساس: فهي تحدد تعبيرات SQL التي تحسب كل مقياس، والشروط التي تنطبق بموجبها، وكيفية تنسيق نتائجها.

ملاحظة

يغطي هذا المقال إعدادات التحليل الإحصائي لقوالب فئة Database. أما بالنسبة للقوالب المبنية على Python، فراجع مقال Profiling Configuration — Python Templates.

تبويب Profiling في قوالب SQL

افتح قالبًا مبنيًا على SQL وانتقل إلى تبويب Profiling. ستظهر لك قائمة بجميع تعريفات ملفات التعريف المهيأة لهذا القالب.

يمثل كل تعريف ملف تعريف مقياسًا واحدًا يمكن حسابه مقابل الجداول أو الأعمدة في مصادر البيانات التي تستخدم هذا القالب.

مستويات ملفات التعريف

شكل 1: مستويات ملفات التعريف

يعمل كل تعريف ملف تعريف على أحد مستويين اثنين:

ملفات التعريف على مستوى الجدول (Table-Level Profiles)

تحسب مقاييس عن الجداول بأكملها. من الأمثلة على ذلك:

Profileما الذي يقيسه
record_countإجمالي عدد الصفوف في الجدول
column_countعدد الأعمدة في الجدول
sum_checksum_tableمجموع تدقيق (checksum) عبر جميع الصفوف (لأغراض اكتشاف التغييرات)
total_data_mbإجمالي حجم البيانات بالميغابايت

ملفات التعريف على مستوى العمود (Column-Level Profiles)

تحسب مقاييس عن أعمدة فردية. من الأمثلة على ذلك:

Profileما الذي يقيسه
distinct_countعدد القيم الفريدة
distinct_percentنسبة القيم الفريدة
null_countعدد القيم الفارغة (null)
null_percentنسبة القيم الفارغة (null)
blank_countعدد القيم النصية الفارغة (لأعمدة السلاسل النصية فقط)
blank_percentنسبة القيم النصية الفارغة
minالقيمة الدنيا
maxالقيمة العليا
meanالمتوسط (للأعمدة الرقمية)
medianالوسيط (للأعمدة الرقمية)
standard_deviationالانحراف المعياري (للأعمدة الرقمية)
most_common_valueالقيمة الأكثر تكرارًا
most_common_countعدد مرات ظهور القيمة الأكثر تكرارًا
top_ten_valuesالقيم العشر الأكثر تكرارًا
bottom_ten_valuesالقيم العشر الأقل تكرارًا
distribution_numericتوزيع تكرار القيم (للأعمدة الرقمية)
distribution_stringتوزيع تكرار القيم (لأعمدة السلاسل النصية)
year_distributionتوزيع القيم حسب السنة (لأعمدة date/datetime)
sampleقيم عينة من العمود

يأتي Validatar مزودًا بحوالي 40 تعريف ملف تعريف جاهز يغطي أكثر مقاييس جودة البيانات شيوعًا.

صيغ ملفات التعريف (Profile Formats)

تحدد صيغة تعريف ملف التعريف كيفية تخزين نتيجته وعرضها:

الصيغ القياسية (Scalar Formats)

تُرجع قيمة واحدة:

Formatمثال على الاستخدام
Numeric Valuerecord_count → 1,500,000
String Valuemost_common_value → "USA"
DateTime Valuemax على عمود تاريخ → 2026-04-01
Percent Valuenull_percent → 3.45%

صيغ المصفوفات (Array Formats)

تُرجع مجموعة من القيم، وتُستخدم عادة للتوزيعات:

Formatمثال على الاستخدام
Numeric Arraydistribution_numeric → فئات قيم مع أعدادها
String Arraytop_ten_values → قائمة قيم مع تكراراتها
DateTime Arrayyear_distribution → سنوات مع أعداد السجلات

تُعرض ملفات تعريف المصفوفات كرسوم بيانية أو جداول في مستكشف البيانات (data explorer)، مما يمنح المستخدمين رؤية مرئية للتوزيعات.

أنواع صيغة حساب ملف التعريف (Profile Formula Types)

يستخدم كل تعريف ملف تعريف أحد الأنواع الثلاثة التالية لحساب نتيجته:

Query

النوع الأكثر شيوعًا. يُحسب ملف التعريف بواسطة تعبير SQL يُنفَّذ مقابل مصدر البيانات. تقوم بتهيئة:

  • Aggregate Script — تعبير جملة SELECT (مثل COUNT(DISTINCT {{column}}))
  • From Script — جملة FROM (عادة مرجع الجدول، ويمكن أن تتضمن joins أو subqueries)
  • Grouping Script — جملة GROUP BY (لملفات تعريف المصفوفات التي تُرجع نتائج مجمّعة)

يقوم Validatar بدمج هذه الأجزاء في استعلام كامل. يمكن تجميع عدة ملفات تعريف مبنية على Query تستهدف نفس الجدول في استعلام واحد لتحسين الكفاءة.

مثال — ملف تعريف distinct_count:

Aggregate Script: COUNT(DISTINCT {{column}})
From Script: {{schema}}.{{table}}
Grouping Script: (فارغ — نتيجة قياسية / scalar)

مثال — ملف تعريف year_distribution:

Aggregate Script: YEAR({{column}}) AS grouping_key, COUNT(*) AS value
From Script: {{schema}}.{{table}}
Grouping Script: YEAR({{column}})

.NET Calculation

يُحسب ملف التعريف من نتائج ملفات تعريف أخرى باستخدام تعبير معادلة بلغة C#. يُستخدم هذا للمقاييس المشتقة التي لا تتطلب استعلام قاعدة بيانات منفصل.

مثال — distinct_percent: عبارة عن .NET Calculation تقسم distinct_count على record_count وتضربها في 100. ويعتمد ذلك على حساب كل من distinct_count وrecord_count أولاً (انظر قسم Prerequisites أدناه).

Python Calculation

مشابه لـ .NET Calculation، لكنه يستخدم تعبير معادلة بلغة Python. مفيد للحسابات الإحصائية الأكثر تعقيدًا أو عندما يكون التعبير عن المنطق أسهل بلغة Python.

تهيئة تعريف ملف تعريف

انقر على تعريف ملف تعريف في القائمة لفتح صفحة تفاصيله.

حقول التهيئة الرئيسية

شكل 2: حقول التهيئة الرئيسية
Fieldالوصف
Nameاسم العرض لملف التعريف (مثل "Distinct Count")
Reference Keyمعرّف فريد يُستخدم برمجيًا (مثل distinct_count)
LevelTable أو Column
Formatصيغة النتيجة (Numeric أو String أو DateTime أو Percent أو أحد أنواع Array)
Formula TypeQuery أو .NET Calculation أو Python Calculation
Restrict to Data Typesعند التفعيل، يُطبَّق ملف التعريف فقط على أعمدة من أنواع بيانات محددة

تعبيرات الشرط (Condition Expressions)

يحدد تعبير الشرط (condition expression) ما إذا كان ينبغي تشغيل ملف التعريف لجدول أو عمود معين. وهو تعبير منطقي (boolean) يُقيَّم قبل التنفيذ.

من الاستخدامات الشائعة:

  • تحليل الأعمدة الرقمية فقط: تقييد بناءً على نوع البيانات
  • تحليل الجداول التي تتجاوز عدد صفوف معين فقط: اشتراط record_count > 0
  • تخطي تحليل الأعمدة ذات عدد كبير جدًا من القيم المميزة: distinct_count < 1000000

يمكن لتعبيرات الشرط الإشارة إلى نتائج ملفات تعريف أخرى (والتي يجب إدراجها كمتطلبات مسبقة).

المتطلبات المسبقة (Prerequisites)

تعتمد بعض ملفات التعريف على نتائج ملفات تعريف أخرى، على سبيل المثال:

  • يحتاج distinct_percent إلى حساب distinct_count وrecord_count أولاً
  • يحتاج تعبير شرط يتحقق من record_count > 0 إلى record_count كمتطلب مسبق
  • يشير ملف تعريف من نوع .NET Calculation إلى نتائج ملفات التعريف المتطلبة له مسبقًا

تضمن المتطلبات المسبقة تنفيذ ملفات التعريف بالترتيب الصحيح وتوافر القيم المعتمَد عليها.

كيف تنتقل ملفات تعريف القالب إلى مصادر البيانات

تحدد القوالب ملفات التعريف المتاحة. أما القرار الفعلي بشأن أي ملفات التعريف يجب تشغيلها، وعلى أي كائنات، ومتى، فيتم على مستوى مصدر البيانات من خلال مجموعات التعريف (profile sets).

العلاقة بينها:

  1. 1يحدد القالب تعريفات ملفات التعريف (كتالوج المقاييس)
  2. 2يحتوي مصدر البيانات على مجموعة تعريف واحدة أو أكثر (profile sets) (راجع Profile Sets)
  3. 3تختار كل مجموعة تعريف تعريفات ملفات التعريف التي تريد تضمينها
  4. 4تحدد مجموعات التعريف أيضًا: الجداول والأعمدة المراد تحليلها (عبر مرشحات الكائنات)، وإعدادات التنفيذ (الحد الأقصى للاستعلامات المتزامنة، الحد الأقصى لملفات التعريف لكل استعلام)، والجدولة (عدد مرات التشغيل)، والاحتفاظ (المدة التي تُحفظ فيها النتائج التاريخية)

عند تنفيذ مجموعة تعريف، يتم تشغيل تعريفات ملفات التعريف المحددة مقابل الكائنات المحددة، باستخدام تعبيرات SQL المعرّفة على القالب.

نصيحة

إذا أضفت تعريف ملف تعريف جديد إلى قالب، يصبح متاحًا للاختيار في مجموعات التعريف على جميع مصادر البيانات التي تستخدم ذلك القالب — لكنه لن يعمل تلقائيًا. يحتاج شخص ما إلى إضافته إلى مجموعات التعريف ذات الصلة.

أفضل الممارسات

  • ابدأ بملفات التعريف المدمجة — تغطي المجموعة الافتراضية معظم حالات الاستخدام الشائعة. أضف ملفات تعريف مخصصة فقط عند الحاجة إلى مقاييس خاصة بمنصة أو مجال معين.
  • استخدم تعبيرات الشرط بحكمة — فهي تمنع التحليل غير الضروري (مثل عدم حساب mean على أعمدة نصية) ويمكن أن تحسّن الأداء عبر تخطي ملفات التعريف على الجداول الكبيرة جدًا.
  • حدد المتطلبات المسبقة بشكل صحيح — قد يؤدي غياب المتطلبات المسبقة إلى فشل ملفات التعريف أو نتائج غير صحيحة. إذا كان ملف تعريف يشير إلى نتيجة ملف تعريف آخر، أدرجه كمتطلب مسبق.
  • اختبر تعبيرات SQL على المنصة المستهدفة — يعمل SQL الخاص بملف التعريف مباشرة مقابل قاعدة بياناتك. تحقق من توفر دوال مثل PERCENTILE_CONT أو STDDEV أو الدوال الخاصة بالمنصة على إصدار قاعدة بياناتك.
  • راعِ الأداء — يمكن أن تكون ملفات تعريف المصفوفات (التوزيعات، قوائم أعلى N) مكلفة على الجداول الكبيرة. استخدم تعبيرات الشرط لتخطيها في الجداول التي تتجاوز حجمًا معينًا، أو هيّئ مجموعات التعريف بحدود تزامن مناسبة.

كيف يندمج هذا في الصورة الأكبر

تحدد تعريفات ملفات التعريف على القالب مقاييس جودة البيانات المتاحة عبر جميع مصادر البيانات على المنصة. وتتغذى هذه التعريفات في مجموعات التعريف (المهيأة لكل مصدر بيانات على حدة)، والتي تنتج نتائج التحليل الظاهرة في مستكشف البيانات والمستخدمة في درجات الثقة (trust scores). كما تُستخدم ملفات التعريف كمصادر بيانات للاختبارات — إذ يمكن استخدام نتائج ملفات التعريف كمجموعات بيانات اختبار (test data sets)، مما يتيح اختبارات تقارن القيم الحالية لملف التعريف مقابل خطوط أساس تاريخية أو حدود متوقعة.

لمزيد من المعلومات حول كيفية عمل مجموعات التعريف على مستوى مصدر البيانات، راجع Profile Sets. وللاطلاع على نظرة عامة كاملة على القوالب، راجع Data Source Templates: The Complete Picture.