مشاركة عبر


تجميع التحول في رسم خرائط تدفق البيانات

ينطبق على: Azure Data Factory Azure Synapse Analytics

تلميح

جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!

تتوفر تدفقات البيانات في كل من Azure Data Factory وخطوط أنابيب Azure Synapse. تنطبق هذه المقالة على تعيين تدفقات البيانات. إذا كنت جديداً في مجال التحويلات، فيرجى الرجوع إلى المقالة التمهيدية تحويل البيانات باستخدام تدفق بيانات التعيين.

يحدد التحول التجميعي تجميعات الأعمدة في تدفقات البيانات الخاصة بك. باستخدام Expression Builder، يمكنك تحديد أنواع مختلفة من التجميعات مثل SUM وMIN وMAX وCOUNT مجمعة حسب الأعمدة الموجودة أو المحسوبة.

تجميع حسب

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

تجميع مجموعة التحويل حسب الإعدادات

يعتبر إجراء المجموعة حسب المقطع إجراءً اختيارياً في التحول التجميعي.

تجميع الأعمدة

انتقل إلى علامة التبويب Aggregates لإنشاء تعبيرات التجميع. يمكنك إما الكتابة فوق عمود موجود بتجميع، أو إنشاء حقل جديد باسم جديد. يتم إدخال تعبير التجميع في المربع الأيمن بجوار محدد اسم العمود. لتعديل التعبير، انقر فوق مربع النص وافتح منشئ التعبير. لإضافة المزيد من الأعمدة التجميعية، انقر فوق إضافة أعلى قائمة الأعمدة أو أيقونة الجمع بجوار عمود تجميعي موجود. اختر إما Add column أو إضافة Add column pattern. يجب أن يحتوي كل تعبير تجميع على دالة تجميع واحدة على الأقل.

الإعدادات التجميعية

إشعار

في وضع التصحيح، لا يمكن لمنشئ التعبير إنتاج معاينات بيانات بوظائف تجميعية. لعرض معاينات البيانات للتحولات المجمعة، أغلق منشئ التعبير واعرض البيانات عبر علامة التبويب "معاينة البيانات".

أنماط الأعمدة

استخدم أنماط الأعمدة لتطبيق نفس التجميع على مجموعة من الأعمدة. يكون هذا مفيداً إذا كنت ترغب في استمرار وجود العديد من الأعمدة من مخطط الإدخال حيث يتم إسقاطها افتراضياً. استخدم استدلال مثل first() لاستمرار أعمدة الإدخال من خلال التجميع.

أعد توصيل الصفوف والأعمدة

تشبه التحولات المجمعة استعلامات التحديد المجمعة لـ SQL. لن تتدفق الأعمدة التي لم يتم تضمينها في مجموعتك حسب عبارة أو دالات مجمعة إلى ناتج التحول الكلي. إذا كنت ترغب في تضمين أعمدة أخرى في ناتجك المجمع، فقم بإحدى الطرق التالية:

  • استخدم دالة تجميعية مثل last() أو first() لتضمين هذا العمود الإضافي.
  • أعد ضم الأعمدة إلى دفق الإخراج باستخدام نمط الصلة الذاتية.

إزالة الصفوف المكررة

الاستخدام الشائع للتحويل التجميعي هو إزالة أو تحديد الإدخالات المكررة في البيانات المصدر. تُعرف هذه العملية بإلغاء البيانات المكررة. استناداً إلى مجموعة من المفاتيح، استخدم دليلاً من اختيارك لتحديد الصف المكرر الذي تريد الاحتفاظ به. الأساليب الإرشادية الشائعة هي first()و max()last()و و.min() استخدم أنماط الأعمدة لتطبيق القاعدة على كل عمود باستثناء المجموعة حسب الأعمدة.

إلغاء التكرار

في المثال أعلاه، يتم استخدام الأعمدة ProductID و Name للت تجميع. إذا كان هناك صفان لهما نفس القيم لهذين العمودين، فسيتم اعتبارهما مكررين. في هذا التحول الكلي، سيتم الاحتفاظ بقيم الصف الأول المطابق وسيتم إسقاط جميع القيم الأخرى. باستخدام بناء جملة نمط العمود، فإن جميع الأعمدة التي لا ProductID يتم تعيين أسماءها ويتم Name تعيينها إلى اسم العمود الموجود بها ويتم منحها قيمة الصفوف المتطابقة الأولى. مخطط الإخراج هو نفسه مخطط الإدخال.

بالنسبة لسيناريوهات التحقق من صحة البيانات، يمكن استخدام الدالة count() لحساب عدد التكرارات الموجودة.

البرنامج النصي لتدفق البيانات

بناء الجملة

<incomingStream>
    aggregate(
           groupBy(
                <groupByColumnName> = <groupByExpression1>,
                <groupByExpression2>
               ),
           <aggregateColumn1> = <aggregateExpression1>,
           <aggregateColumn2> = <aggregateExpression2>,
           each(
                match(matchExpression),
                <metadataColumn1> = <metadataExpression1>,
                <metadataColumn2> = <metadataExpression2>
               )
          ) ~> <aggregateTransformationName>

مثال

يأخذ المثال أدناه دفقا MoviesYear واردا ويجموع الصفوف حسب العمود year. ينشئ التحويل عمودا avgrating تجميعيا يتم تقييمه إلى متوسط العمود Rating. يسمى AvgComedyRatingsByYearهذا التحويل التجميعي .

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

تجميع حسب المثال

مثال تجميعي

البرنامج النصي لتدفق البيانات لهذا التحول موجود في القصاصة أدناه.

MoviesYear aggregate(
                groupBy(year),
                avgrating = avg(toInteger(Rating))
            ) ~> AvgComedyRatingByYear

البرنامج النصي لتدفق البيانات المجمعة

MoviesYear: عمود مشتق يحدد أعمدة AvgComedyRatingByYearالسنة والعنوان: التحويل التجميعي لمتوسط تصنيف الكوميديا المجمعة حسب السنة avgrating: اسم العمود الجديد الذي يتم إنشاؤه للاحتفاظ بالقيمة المجمعة

MoviesYear aggregate(groupBy(year),
	avgrating = avg(toInteger(Rating))) ~> AvgComedyRatingByYear