تحويل المجمع في المعلوماتية مع مثال
⚡ ملخص ذكي
يُعد تحويل التجميع في Informatica هو الكائن النشط الذي يقوم بإجراء عمليات حسابية مثل الجمع والمتوسط والعد عبر مجموعة من الصفوف، مع الاحتفاظ بتلك الصفوف في ذاكرة تخزين مؤقتة مجمعة حتى تكتمل كل مجموعة.

ما هو تحويل المجمع؟
التحويل التجميعي هو تحويل نشط يقوم بإجراء حسابات تجميعية مثل المجموع والمتوسط والعدد.
على سبيل المثال، إذا كنت ترغب في حساب مجموع رواتب جميع الموظفين حسب القسم، يمكنك استخدام تحويل التجميع.
يتم تنفيذ العمليات التجميعية على مجموعة من الصفوف، وبالتالي يلزم وجود عنصر نائب مؤقت لتخزين كل هذه السجلات وإجراء العمليات الحسابية.
لهذا الغرض، تُستخدم ذاكرة التخزين المؤقت للمُجمِّع. وهي ذاكرة رئيسية مؤقتة مُخصصة لعملية تحويل المُجمِّع لتنفيذ هذه العمليات، وتتكون من جزأين: ذاكرة التخزين المؤقت للفهرس تُخزِّن قيم المجموعة، بينما ذاكرة التخزين المؤقت للبيانات تُخزِّن بيانات الصف التي يتم تجميعها.
تُعتبر عملية التحويل نشطة لأنها تُغير عدد الصفوف في مسار البيانات. يمكن أن تدخل إليه عدة آلاف من سجلات الموظفين، ولا يخرج منه سوى صف واحد لكل قسم.
كيفية استخدام تحويل التجميع في إنفورماتيكا
في هذا المثال، سنحسب مجموع الرواتب حسب الأقسام. ولهذا، نحتاج إلى عمود جديد لتخزين هذا المجموع. لذا، أولاً وقبل كل شيء، سنقوم بإعداد عمود جديد.
الخطوة 1) أنشئ جدولًا جديدًا في قاعدة البيانات، على سبيل المثال، "sum_sal_deptwise"، باستخدام البرنامج النصي أدناه. سترى جدول قاعدة البيانات الجديد الذي تم إنشاؤه ضمن Targetقم بإنشاء مجلد s في الخطوة التالية.
قم بتنزيل ملف Create_table_sal_deptwise.txt أعلاه
الخطوة 2) إنشاء جديد رسم خريطةping "m_sum_sal_deptwise".
من أجل إنشاء الخريطة الجديدةpingنحتاج إلى جدول المصدر (EMP) وجدول الهدف (sum_sal_deptwise) في الخريطةping مصمم، لذلك نحتاج إلى
- استورد جدول الهدف "sum_sal_deptwise" في الخريطةping.
- استيراد الجدول المصدر "emp".
يظهر كلا التعريفين الآن على اللوحة، كما هو موضح أدناه.
الخطوة 3) في الخريطةping,
- XNUMX. من قائمة مؤهل المصدر، احذف الأعمدة empno و ename و job و mgr و hiredate و comm، واترك فقط العمودين deptno و sal.
- أنشئ تحويلاً جديداً للمُجمِّع باستخدام قائمة الأدوات كما هو موضح في لقطة الشاشة. عند النقر على أيقونة المُجمِّع، سيتم إنشاء تحويل جديد للمُجمِّع.
يظهر كائن AGGTRANS الجديد بجانب مُؤهِّل المصدر المُقَصَّر.
الخطوة 4) اسحب وأفلت عمودي SAL وDEPTNO من مُؤهِّل المصدر (SQ_EMP) إلى تحويل المُجمِّع. الآن تم ربط المنفذين في AGGTRANS.
الخطوة 5) Doubleانقر على تحويل المُجمِّع لفتح خصائصه، ثم
- إضافة منفذ جديد في التحويل
- أعد تسمية المنفذ إلى SUM_SAL
- تغيير نوع بيانات هذا المنفذ الجديد إلى مزدوج
- اجعل هذا المنفذ منفذ إخراج عن طريق تحديد خانة الاختيار الخاصة بمنفذ الإخراج
- انقر على خيار التعبير
تعرض علامة التبويب "المنافذ" الآن SAL و DEPTNO ومنفذ الإخراج الجديد SUM_SAL.
الخطوة 6) في نافذة محرر التعبيرات
- أضف التعبير sum(SAL)؛ عليك كتابة هذا التعبير بنفسك.
- حدد زر "موافق"، سيؤدي ذلك إلى إعادة فتح نافذة "تحرير التحويلات".
يعرض محرر التعبيرات التعبير التجميعي المخصص لـ SUM_SAL.
الخطوة 7) في نافذة "تحرير التحويلات"، حدد خيار "التجميع حسب" بتحديد خانة الاختيار بجوار عمود "رقم القسم"، ثم انقر فوق "موافق". باختيار "التجميع حسب" بجوار "رقم القسم"، فإننا نوجه برنامج Informatica لتجميع الرواتب حسب رقم القسم.
الخطوة 8) قم بربط عمودي deptno و sum_sal من تحويل المُجمِّع بالجدول الهدف. الخريطةping ثم تكتمل العملية من المصدر إلى الهدف.
الآن احفظ الخريطةping ونفذه بعد إنشاء جديد الجلسة لهذه الخريطةpingسيحتوي الجدول المستهدف على مجموع الرواتب حسب الأقسام. وبهذه الطريقة، يمكننا استخدام تحويل المُجمِّع لحساب النتائج الإجمالية.
تجميع البيانات حسب الموانئ في عملية تحويل المُجمِّع
في الخطوة السابقة، تم تحديد منفذ واحد كـ "تجميع حسب"، مما حوّل إجمالي الشركة إلى إجمالي واحد لكل قسم. ويمكن تحديد أي منفذ إدخال، أو إدخال/إخراج، أو إخراج، أو منفذ متغير بنفس الطريقة.
ثلاثة قواعد تحكم مجموعة النتائج:
- صف واحد لكل مجموعة. عند تجميع القيم، تقوم خدمة التكامل بإنتاج صف واحد لكل مجموعة فريدة من المنافذ المجمعة.
- لا يوجد تجميع حسب، صف واحد. إذا لم يتم تحديد أي منفذ، فسيتم التعامل مع المدخلات بأكملها كمجموعة واحدة وسيتم إرجاع صف واحد لجميع صفوف الإدخال.
- يفوز الصف الأخير. إلى جانب النتيجة الإجمالية، تقوم خدمة التكامل عادةً بتمرير الصف الأخير الذي تم استلامه في المجموعة، ما لم تقم وظيفة مثل FIRST بتسمية صف مختلف.
عند تحديد عدة موانئ، يحدد ترتيب الموانئ المجموعةping الترتيب، والترتيب قد يغير النتيجة.ping حسب رقم القسم ثم الوظيفة ليس هو نفسه حسب المجموعةping حسب الوظيفة ثم رقم القسم، لأن قيم العمود الثاني ليست بالضرورة فريدة.
خصائص تحويل المُجمِّع
تحتوي علامة التبويب "الخصائص" في نافذة "تحرير التحويلات" على الإعدادات التي تحدد مكان وجود ذاكرة التخزين المؤقت ومقدار استخدامها. يوضح الجدول أدناه هذه الإعدادات.
| الضبط | ما الذي يتحكم فيه |
|---|---|
| دليل التخزين المؤقت | الدليل المحلي الذي تُنشئ فيه خدمة التكامل ملفات الفهرس وذاكرة التخزين المؤقت للبيانات. القيمة الافتراضية هي متغير العملية $PMCacheDir المُحدد في مدير سير العمل. |
| Tracمستوى ing | مقدار التفاصيل المكتوبة في سجل الجلسة لهذا التحويل. |
| المدخلات المصنفة | يُعلن أن البيانات الواردة مُرتبة بالفعل حسب المجموعة حسب المنافذ. حددها فقط عندما تكون الخريطةping يقدم بيانات مصنفة بالفعل. |
| حجم ذاكرة التخزين المؤقت لبيانات المُجمِّع | حجم ذاكرة التخزين المؤقت للبيانات. القيمة الافتراضية هي 2,000,000 بايت، ويترك خيار "تلقائي" لخدمة التكامل تحديد حجمها. |
| حجم ذاكرة التخزين المؤقت لفهرس المُجمِّع | حجم ذاكرة التخزين المؤقت للفهرس. القيمة الافتراضية هي 1,000,000 بايت، ويترك خيار "تلقائي" لخدمة التكامل تحديد حجمها. |
| نطاق التحول | يطبق المنطق على كل معاملة، أو على جميع البيانات الواردة. يؤدي خيار "جميع المدخلات" إلى حذف حدود المعاملات الواردة. |
عند تمكين التجميع التدريجي، تقوم خدمة التكامل بكتابة نسخة احتياطية من ملفات ذاكرة التخزين المؤقت في كل عملية تشغيل، لذلك يجب أن يحتوي دليل ذاكرة التخزين المؤقت على مجموعتين من الملفات بدلاً من مجموعة واحدة.
قواعد التعبير التجميعي ونصائح الأداء
قد يجمع التعبير التجميعي بين دالة تجميعية وعبارات شرطية ودوال غير تجميعية، مما يتيح إجراء عمليات الجمع والعد الشرطية داخل منفذ واحد. هناك قاعدتان تحددان ما يمكن كتابته.
- مستوى واحد من التعشيش. لا يمكن تضمين سوى دالة تجميعية واحدة داخل دالة أخرى، ويتم تقييم التعبير الداخلي أولاً.
- لا خلط. قد يحتوي التحويل على دوال أحادية المستوى أو دوال متداخلة، وليس كليهما معًا. إذا احتوى على كليهما، يقوم المصمم بتحديد الخريطة.ping غير صالح، لذلك قم بتقسيم المنطق عبر تحويلين للمجمع.
أما فيما يتعلق بالضبط، فإن ثلاثة إعدادات تقوم بمعظم العمل:
- المدخلات المصنفة. عند وصول الصفوف مُرتبةً حسب المجموعة حسب المنافذ، يُمكن تحرير كل مجموعة فور وصول آخر صف فيها، مما يُقلل بشكل كبير من كمية البيانات المُخزنة مؤقتًا ويُسرّع من أداء الجلسة. لا يُمكن دمج الإدخال المُرتب مع التجميع التزايدي.
- التجميع التدريجي. يتم تمرير صفوف المصدر الجديدة عبر الخريطةping وتم دمجها مع ذاكرة التخزين المؤقتة التاريخية بدلاً من إعادة حساب التاريخ، وهو ما يناسب التحميل الليلي على إجمالي متراكم.
- قم بالتصفية مبكراً. يجب حذف الصفوف التي لن تساهم أبدًا في الإجمالي قبل المُجمِّع، إما في استعلام مُؤهِّل المصدر أو في تحويل المرشحلأن كل صف يصل إلى المُجمِّع يستهلك مساحة من ذاكرة التخزين المؤقت. هذا أحد الفحوصات القياسية أثناء ضبط الأداء.







