SAP الكون التقارير



منذ حوالي 4 سنوات ، نقلنا نظام الإبلاغ الخاص بنا من Oracle إلى SAP Hana. اليوم ، يخزن حوالي 10000 جدول ، ويستخدمه 38000 شخص ، وتحدث أكثر من 5000 عملية تحميل يوميًا. في الوقت الحالي ، يتكون مجمعنا ، الذي يعمل عليه النظام ، من 8 خوادم بسعة 14 تيرابايت من الذاكرة. كل يوم ، يقوم نظام التقارير بمعالجة 1.5 pb من البيانات. في الوقت نفسه ، كانت Hana أكثر إنتاجية بنحو 20 مرة من Oracle و DB2 و MySQL. واليوم أود أن أقول كيف ، في إطار تكامل M.Video و Eldorado ، قمنا بالإضافة إلى ذلك بزيادة أداء نظام الإبلاغ ، الذي قمنا بتحسينه.

حمل


اليوم ، من بين عدة آلاف من التقارير التي أنشأها النظام ، يولد 10 تقارير فقط 70٪ من إجمالي الحمل. أثقل تقرير في قاعدة بيانات Hana هو Weekly Bussines Review. يعمل لمدة 30 دقيقة ويستهلك 4 تيرابايت من الذاكرة. يتم إنشاء 90 ٪ من جميع التقارير من قبل مركز الاتصال: لقد أنشأنا خدمة ، عندما يتصل العميل برقم هاتفه ، يفتح تلقائيا تقرير ويظهر للمشغل كامل تاريخ مشتريات المتصل وتفاعله مع الشركة.

نموذج البيانات


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



إنتاجية


في وقت دمج M.Video و Eldorado ، كانت كمية البيانات في نظامي الإبلاغ تبلغ حوالي 10 تيرابايت: 7 تيرابايت في BW على نظام HANA M. Video ، و 2 تيرابايت في BW على HANA Eldorado و 1 TB بيانات إضافية في HADOOP (البيانات التاريخية). عند الجمع بين الأنظمة ، كان لدينا قيود على الأجهزة: يتكون مجمع M. Video من 6 عقد (2 تيرابايت لكل منهما) ، بما في ذلك نسخة احتياطية واحدة. يمكن توسيع هذا النظام إلى 8 عقد كحد أقصى ، منها نسخة احتياطية واحدة.

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

كما ترون ، فإن الموارد المتاحة ليست كافية بشكل قاطع. وكان هذا هو التحدي الأول.

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

كان من الواضح أنه بدون إدخال تحسينات كبيرة ، فإن الزيادة المزدوجة في كمية البيانات في التقارير (بالنسبة إلى علامتين تجاريتين) ستؤدي إلى تفاقم الوضع مرتين.

لذلك ، قررنا تحسين النظام في المجالات التالية:

  • المساءلة. تسريع التقارير الأكثر أهمية والأكثر كثافة للموارد ومراجعة نموذج البيانات.
  • مستودع . الأرشفة والتخزين الأمثل.
  • التنزيلات . تبسيط الإجراء وتغيير جدول التنزيل.

النهج العام للتحسين كان هذا:



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

ماذا فعلنا:

  • تم تغيير تكوين خوادم تطبيقات ABAP: عدد الحالات ، والاستخدام الفعال لتكنولوجيا NUMA والعدد الأمثل لسير العمل.
  • طبقنا المعلمات المثلى لنظام HANA ونظام التشغيل Linux.
  • قمنا بتحليل الانخفاض في استهلاك وحدة المعالجة المركزية.
  • قمنا بتحليل استهلاك ذاكرة الوصول العشوائي في الفاصل الزمني الملحوظ بأكمله.
  • قمنا بتحليل حدوث OOM على HANA.
  • قمنا بتحليل حدوث الأقفال في النظام وتوافر موارد النظام لعمليات الانتظار (الانتظار).
  • قمنا بتحليل موازنة البيانات مع الأخذ في الاعتبار إعادة توزيع وإعادة تقسيم البيانات لحل SCALE-OUT HANA.
  • قمنا بتحليل أسباب مقالب ABAP التي تؤثر على تشغيل السلاسل الحرجة.

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

ما هي النتائج التي تحققت:









بدأ عدد من التقارير المحسّنة في SAP BO العمل بوتيرة أسرع عدة مرات وتستهلك ذاكرة أقل بمئات المرات .



فيما يلي بعض الأمثلة الصارخة حول كيفية تلبية النظام لشروط الاختيار بطريقة غير صحيحة ، وكيفية إنشاء الاستعلامات في HANA بشكل صحيح.

تم الكشف عن المشكلات عند التصفية حسب الكائنات غير الملموسة ، خاصة (!) عند استخدام مؤشرات COUNT DISTINCT (يمكن كتابة قرص مضغوط على مستوى الكون وفي وظيفة في السيرة الذاتية).



حتى إذا قمت باستبعاد القرص المضغوط من الاستعلام ، فسيظل الخيار الأول أبطأ 20 مرة من الثانية ، ومع وجود قرص مضغوط ، تكون السرعة أعلى من 500 مرة.



حالة خاصة لاستخدام كائنات غير ملموسة في عوامل التصفية: عوامل التصفية المركبة لكائنين أو أكثر ، على سبيل المثال ، الإلتصاق بأسبوع وسنة:



لا تعمل الاستعلامات ذات الفلاتر الملصقة بنفس سرعة التحويل إلى تاريخ ، لكنها لا تزال تبطئ الاستعلامات (حوالي 2-3 مرات).



لجمع إحصائيات حول تشغيل نظام التقارير وعمليات التحميل والسلاسل ، قمنا بتطوير المخطط التالي:



في الوقت نفسه ، أضفنا تعليقًا خاصًا على التقارير باسم التقرير. وبالتالي ، يمكننا مقارنة الحمل من أجزاء مختلفة من النظام ومقارنة الفترة بالفترة.



خطط


لدينا العديد من الخطط لتطوير وظائف العمل ومراجعة جوهرية لأداة تصور البيانات. الاتجاه العالمي الذي نشارك فيه بنشاط هو دمج نظام إعداد التقارير في نموذج التحول الرقمي.

ماذا تقصد؟

عندما كان نظام إعداد التقارير الخاص بنا شابًا ، كان المستخدمون يأتون إلينا في كثير من الأحيان بطلبات مماثلة: "أتمتة إنشاء تقرير يوضح مقدار الربح الصافي الذي حصل عليه هذا المتجر أو ذاك أو الشركة بالكامل".

ثم بدأوا يأتون إلينا بطلبات للتوصل إلى خوارزمية من شأنها أن تبني خطة أو توقعًا لصافي الربح ، اعتمادًا على عوامل محددة.

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

بضع كلمات عن فريقنا


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

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

Source: https://habr.com/ru/post/ar462015/


All Articles