شعار زيفيرنت

انشر لوحات معلومات Amazon QuickSight لمراقبة مقاييس عمل AWS Glue ETL وتعيين التنبيهات | خدمات ويب أمازون

التاريخ:

بغض النظر عن الصناعة أو مستوى النضج داخل AWS، يحتاج عملاؤنا إلى رؤية أفضل لأعمالهم غراء AWS الاستخدام. يمكن أن تؤدي الرؤية الأفضل إلى تحقيق مكاسب في الكفاءة التشغيلية وقرارات العمل المستنيرة ومزيد من الشفافية في عائد الاستثمار (ROI) عند استخدام الميزات المتنوعة المتاحة من خلال AWS Glue.

مع نمو شركتك، يجب أن تكون قادرًا على الإجابة على أسئلة بسيطة حول استخدامك لـ AWS Glue، مثل ما يلي:

  • أين أنفق أكثر مع AWS Glue؟
  • أين يمكنني توفير أكبر قدر ممكن من خلال الاستفادة من ميزات AWS Glue الجديدة؟
  • كيف يبدو استخدامي الإجمالي باستخدام AWS Glue؟

تقدم AWS خدمات مثل أمازون كويك سايت, خدمة ذكاء الأعمال (BI) بدون خادم تتيح لك مركزية هذا العرض وحتى طرح أسئلة باللغة الطبيعية لبياناتك باستخدام أمازون QuickSight Q. يمكن لـ QuickSight أن يمنح قادة الأعمال ونظرائهم في مجال التكنولوجيا مشهدًا مشتركًا للإبلاغ عن التفاصيل المهمة لاستخدامهم، وتوفير ذلك الروايات الآلية لسد فجوات التواصل.

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

على الرغم من أننا لا نغطي تحسين وظائفك مقابل التكاليف في هذا المنشور، إلا أنه يمكنك الرجوع إلى راقب وحسِّن التكلفة على AWS Glue لـ Apache Spark للتعرف على كيفية ضبط وظائف AWS Glue الخاصة بك لتحقيق الأداء والكفاءة وتحسين التكلفة.

دعونا الغوص في!

حل نظرة عامة

يوضح الرسم البياني التالي بنية الحل المحدد. على مستوى عالٍ، يقوم حدث مجدول بتشغيل تدفق تزامن يتكون من موارد متعددة للبيانات والحوسبة والتحليلات - ويبلغ مخرجاتها ذروتها كمجموعة من العناصر المرئية في لوحة معلومات BI.

هندسة الحل

الآن دعونا نتعمق في التفاصيل الفنية المتعلقة بهذا الحل.

An وظائف خطوة AWS تمت جدولة سير العمل ليتم تشغيله مرة واحدة كل ساعة أمازون إيفينت بريدج، مما يؤدي إلى تشغيل ملف AWS لامدا الوظيفة التي تستدعي AWS Glue GetJob و GetJobRun واجهات برمجة التطبيقات. نقوم بتحليل هذه البيانات للتحقق من الوظائف التي نجحت أو توقفت أو فشلت في الساعة الماضية، بالإضافة إلى أي مهام متدفقة. يتم استخراج بيانات التعريف من كل تشغيل مهمة، بما في ذلك معلومات مثل وقت التشغيل ووقت البدء ووقت الانتهاء والقياس التلقائي وعدد العمال ونوع العامل، ويتم كتابتها إلى الأمازون DynamoDB الجدول مع تمكين TTL (مدة البقاء) لضمان عدم زيادة حجم الجدول بشكل كبير.

ننتقل إلى حالة متوازية للتحقق من جدولين أمازون أثينا يكتب الناتج من الاستفسارات الموحدة ل. تقوم أثينا أولاً بالتحقق للتأكد من وجود الجداول خدمة تخزين أمازون البسيطة (Amazon S3)، حيث سيتم تخزين البيانات. إذا لم تكن الجداول موجودة، تقوم أثينا بإنشائها. يقوم استعلام موحد بجمع بيانات قياس AWS Glue من الأمازون CloudWatch المقاييس. والآخر يجمع البيانات من جدول DynamoDB حيث تكتب Lambda البيانات التعريفية لوظيفة AWS Glue التي تجمعها. يستخدم كلا الاستعلامين الموحدين التصفية المناسبة لمسح البيانات الضرورية فقط من كل مصدر.

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

عند العثور على مقاييس أو بيانات تعريف جديدة، تقوم Athena بإدراج هذه البيانات في جداول المقاييس أو بيانات التعريف في Amazon S3، والتي يتم تقسيمها حسب الساعة. بعد إدراج البيانات، تستدعي الخطوات النهائية الملف QuickSight CreateIngestion API، مما يؤدي إلى إدخال البيانات في QuickSight SPICE لتشغيل التحليل التفاعلي. عند هذه النقطة، انتهى سير العمل من التشغيل وسيتم تشغيله مرة أخرى في الساعة التالية.

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

يمكن العثور على رمز هذا الحل على عينات AWS من مستودع GitHub.

المتطلبات الأساسية المسبقة

يجب أن يكون لديك المتطلبات الأساسية التالية:

انشر موارد الحلول باستخدام AWS CDK

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

ينشئ هذا الحل الموارد التالية:

  • دور IAM
  • قاعدة EventBridge
  • آلة الدولة وظائف الخطوة
  • وظيفة لامدا
  • دلو S3
  • جدولان AWS Glue وقاعدة بيانات AWS Glue واحدة
  • جدول DynamoDB
  • استعلامات Athena التي تم استدعاؤها بواسطة Step Functions
  • مصدر بيانات QuickSight ومجموعة البيانات والتحليل ولوحة المعلومات

لنشر الحل ، أكمل الخطوات التالية:

  1. استنساخ الكود المصدري من عينات AWS من مستودع GitHub إلى العميل:
    git clone https://github.com/aws-samples/glue-metrics-in-quicksight

  2. قم بتشغيل تطبيق AWS CDK الخاص بك:
    cd glue-metrics-in-quicksight
    npm i aws-cdk-lib
    cdk bootstrap

  3. نشر الحل مع المعلمات المطلوبة:
    1. المعلمة الأولى مخصصة لإنشاء مجموعة S3 جديدة، والتي تحتوي على مقاييس AWS Glue وبيانات التعريف.
    2. المعلمة الثانية مطلوبة حتى يتمكن QuickSight من تعيين الأذونات للمستخدم الذي سيدير ​​الأصول. تشير إلى إدارة وصول المستخدم داخل Amazon QuickSight للعثور على مستخدمي QuickSight الحاليين لديك.
      cdk deploy --parameters BucketName=New-Unique-Bucket-Name --parameters QuicksightUsername=QuickSight-Existing-User

إذا فشل النشر، فتأكد من تثبيت مكتبة AWS CDK وأعد تشغيلها cdk deploy بعد التثبيت:

npm i aws-cdk-lib

قد يستغرق النشر ما يصل إلى 10 دقائق.

بعد نشر الحل، ستقوم آلة حالة Step Functions بتقييم ما إذا كان يجب عليها استيعاب البيانات في QuickSight مرة واحدة كل ساعة. يمكنك تشغيل بعض مهام AWS Glue بعد نشر المكدس والتحقق من لوحة معلومات QuickSight خلال الساعة أو الساعتين التاليتين، حيث سيتم ملء بيانات تعريف الوظيفة ومقاييسها لتحليلك.

استكشف لوحة القيادة

تحتوي لوحة القيادة على ورقتين: وظائف الغراء و مقاييس الغراء.

وظائف الغراء تتضمن الورقة جميع البيانات الوصفية المتعلقة بتشغيل مهام AWS Glue، بما في ذلك AWS Glue for Apache Spark، وAWS Glue for Ray، وAWS Glue Stream ETL. تحتوي معظم العناصر المرئية أيضًا على تسلسل هرمي يمكنك التعمق فيه باستخدام QuickSight، حيث يصل إلى مستوى منخفض يصل إلى معرف تشغيل مهمة محددة. يمكنك استخدام عناصر التحكم للتصفية حسب التاريخ واسم الوظيفة ومعرف تشغيل المهمة.

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

ورقة معلومات الغراء

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

لتعبئة ملف مقاييس الغراء ورقة، يجب تمكين مهام AWS Glue الخاصة بك التقاط المقاييس في CloudWatch.

ورقة قياس الغراء

إعداد التنبيهات

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

إنذار سريع الرؤية

تم تصميم لوحة المعلومات لتمنحك حرية تغييرها وإنشاء تصوراتك الخاصة باستخدام البيانات التعريفية والمقاييس المقدمة لك. إذا كنت تريد مزيدًا من المعرفة حول التكلفة، ففكر في نشر لوحة تحكم كودوس كذلك!

تنظيف

إذا لم تعد بحاجة إلى لوحة القيادة، احذف تطبيق CDK:

cdk destroy

وفي الختام

تحدثنا في هذا المنشور عن أهمية إمكانية ملاحظة وظائف AWS Glue الخاصة بك وقدمنا ​​تطبيق AWS CDK الذي ينشر لوحة معلومات QuickSight لك. نأمل أن يساعدك هذا على تحسين بيئة AWS Glue لديك باستخدام الرؤى التي توفرها لوحة المعلومات. للتعرف على التنبيهات المستندة إلى الأحداث الخاصة بمهام AWS Glue for Apache Spark وRay، راجع أتمتة التنبيهات وإعداد التقارير لاستخدام موارد مهمة AWS Glue.


عن المؤلفين

مايكل هاملتون هو مهندس حلول تحليلات Sr يركز على مساعدة عملاء المؤسسات في الجنوب الشرقي على تحديث وتبسيط أعباء عمل التحليلات الخاصة بهم على AWS. يستمتع بركوب الدراجات في الجبال وقضاء الوقت مع زوجته وأطفاله الثلاثة عندما لا يعمل.

كودي بنتا هو مهندس الحلول في Amazon Web Services ومقره في شارلوت، كارولاينا الشمالية. يركز على الأمن وCDK، ويستمتع بحل المشكلات الصعبة حقًا في عالم التكنولوجيا. خارج ساعات العمل، يحب الاسترخاء في الجبال، وتطوير المشاريع الشخصية، والألعاب.

انجوس فيرجسون هو مهندس حلول في AWS وشغوف بمقابلة العملاء في جميع أنحاء العالم ، ومساعدتهم على حل تحدياتهم التقنية. Angus متخصص في البيانات والتحليلات مع التركيز على العملاء في صناعة الخدمات المالية.

بقعة_صورة

أحدث المعلومات الاستخباراتية

بقعة_صورة