الدرس التعليمي: إدارة جداول تحليلات الزلازل وتحميل التقارير

مهم

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

يوضح هذا الدرس كيفية استخدام عملية تحليلات DDMS الزلزالي في Azure Data Manager لصالح Energy لإنشاء جداول تحليلات متكررة لبياناتك الزلزالية، وإدراج وتنزيل التقارير المولدة، وحذف الجداول التي لم تعد بحاجة إليها. تساعدك التحليلات المجدولة على تتبع استهلاك التخزين وأنماط الوصول إلى البيانات عبر المشاريع الفرعية والمستأجرين مع مرور الوقت، حتى تتمكن من تخطيط السعة وتحسين تكاليف التخزين دون الحاجة لبناء خط تقارير مخصص. تقوم وظيفة الخلفية بحساب الإحصائيات المطلوبة على إيقاع متكرر وتكتب كل تقرير إلى مساحة تخزين Azure Blob. تقوم بتنزيل بيانات التقرير مباشرة من التخزين، ولا تتدفق أبدا عبر الخدمة.

في هذا البرنامج التعليمي، تتعلم كيفية:

  • أنشئ جدول تحليلات لمشروع فرعي أو مستأجر
  • ادرج جداول التحليلات والتقارير المولدة
  • حمل تقريرا بعنوان URL قصير العمر لنظام SAS
  • حذف جدول التحليلات

المتطلبات المسبقه

قبل البدء، تأكد من استيفاء المتطلبات الأساسية التالية:

  • اشتراك في Azure.
  • مدير بيانات Azure لموارد الطاقة مع إعدادات Seismic DDMS.
  • مسجل tenant وفي subproject خدمة DDMS الزلزالي.
  • ال subproject.admin، datamanager، أو tenant.admin الدور المخصص لحساب المستخدم الخاص بك، حسب النطاق.
  • رمز حامل للمصادقة في واجهة برمجة التطبيقات. عند استخدامك DefaultAzureCredential، اطلب التلسكوب https://energy.azure.com/.default . راجع كيفية إنشاء رمز المصادقة المميز.
  • والمستأجر data-partition-id الخاص بك. القيمة المفقودة تعود 400 BAD_REQUESTب .

فهم نطاقات التحليلات

وظائف التحليلات تعمل في أحد نطاقين. يحدد النطاق مجموعات البيانات التي يتم قياسها وأي دور مطلوب.

النطاق ما الذي يقيس كيف تستهدفها الدور المطلوب
مشروع فرعي مشروع فرعي واحد داخل القسم name في جسم الطلب (الإنشاء)، أو subprojectid في مسار الرابط subproject.admin, datamanager, أو tenant.admin
مستأجر قسم البيانات بالكامل إما الفارغ أو المحذوف name (الإنشاء)، أو المسارات /tenant/... datamanager او tenant.admin

كل جدول يخزن ثلاثة إعدادات: statistics الحساب، يوم الأسبوع لأول محاولة (first_execution)، وعدد مرات تكراره في الأيام (freq_execution). تستخدم /job واجهة برمجة التطبيقات نقاط نهاية لعمليات الجدولة. تقوم وظيفة الخلفية بقراءة الجداول وتكتب التقارير إلى sdms-analytics-reports الحاوية باستخدام تخطيط <subproject>/YYYY/MM/DD/المسار .

قدم جدول تحليلات

قدم طلبا PUT باستخدام مصفوفة JSON تحتوي على كائن جدول واحد. حذف name (أو إرسال سلسلة فارغة) لإنشاء جدول زمني على مستوى المستأجر؛ وفر مشروعا name فرعيا لتحديد نطاق الجدول لذلك المشروع الفرعي.

يدعم جسم الطلب الحقول التالية:

الميدان Required Type Description
name لا. string اسم المشروع الفرعي. عند الفراغ أو حذفه، يتم إنشاء الجدول عند نطاق المستأجر ويتحول افتراضيا إلى .data-partition-id
statistics ‏‏نعم‬ string قائمة إحصائيات مفصولة بفواصل للحساب. يتم إزالة المساحة البيضاء ويتم تقليل قيمة الغلاف قبل التخزين.
first_execution لا. الأعداد الصحيحة (1–7) يوم الأسبوع للجولة الأولى. تعود افتراضيا إلى اليوم الحالي. القيم الخارجية 1–7 إرجاع 400 BAD_REQUEST.
freq_execution لا. العدد الصحيح (>0) تكرار التنفيذ بالأيام. تتغير افتراضيا إلى 7.
  1. قدم الطلب. لجدول المشروع الفرعي، أدرج المشروع nameالفرعي:

    PUT https://<instance>.energy.azure.com/seistore-svc/api/v3/analytics/job
    Authorization: Bearer {access_token}
    data-partition-id: {data_partition_id}
    Content-Type: application/json
    
    [
      {
        "name": "{subproject_name}",
        "statistics": "count,size",
        "first_execution": 1,
        "freq_execution": 7
      }
    ]
    

    لجدول مستأجر على مستوى المستأجر، احذف name:

    PUT https://<instance>.energy.azure.com/seistore-svc/api/v3/analytics/job
    Authorization: Bearer {access_token}
    data-partition-id: {data_partition_id}
    Content-Type: application/json
    
    [
      {
        "statistics": "count,size",
        "freq_execution": 7
      }
    ]
    
  2. راجع الجدول المعياري الذي تم إرجاعه في الرد. المجال type مخصص subproject لجدول المشاريع الفرعية وجدول partition مستأجر على مستوى المستأجر. يعاد الميدان first_execution كطابع زمني للجولة المجدولة التالية:

    [
      {
        "name": "{subproject_name}",
        "type": "subproject",
        "statistics": "count,size",
        "first_execution": 1743552000000,
        "freq_execution": 7
      }
    ]
    

تنشئ الخدمة جدول التحليلات المتكرر للنطاق المختار. اطلب فقط الإحصائيات التي تحتاجها، واضبط freq_execution لتطابق عدد مرات استهلاكك للتقارير.

استرجاع جداول التحليلات

اتصل بنقطة نهاية الجداول لرؤية الجداول التي يمكنك عرضها. المستخدمون الذين لديهم دور tenant.admin OR datamanager يحصلون على القائمة الكاملة. المستخدم الذي يحمل هذا subproject.admin الدور يحصل فقط على جداول المشاريع الفرعية التي يمكنه إدارتها.

  1. قدم الطلب.

    GET https://<instance>.energy.azure.com/seistore-svc/api/v3/analytics/job
    Authorization: Bearer {access_token}
    data-partition-id: {data_partition_id}
    
  2. راجع الجداول المرتجعة.

    [
      {
        "name": "{subproject_name}",
        "type": "subproject",
        "statistics": "count,size",
        "first_execution": 1743552000000,
        "freq_execution": 7
      }
    ]
    

الرد يحتوي على جداول التحليلات التي يمكن للدور المكلف بك عرضها.

استرجاع التقارير المولدة

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

تتحكم معلمات الاستعلام التالية في طلبات قوائم التقارير وعناوين URL الخاصة ب SAS:

المعلمه Required Type Description
filter-date لا. string يقيد النتائج حسب التاريخ. يجب أن يكون YYYYأو YYYY-MMأو .YYYY-MM-DD أي صيغة أخرى تعود 400 BAD_REQUEST.
extension لا. string يختار حاوية تقارير بديلة باسم sdms-analytics-reports-<extension>. يجب أن يحتوي فقط على أحرف أبجدية رقمية صغيرة وشرطة، دون شرطات متتالية، ويجب ألا يتجاوز اسم الحاوية المدمج 63 حرفا.
  1. لإدراج التقارير لمشروع فرعي، اتصل بمسار المشروع الفرعي:

    GET https://<instance>.energy.azure.com/seistore-svc/api/v3/analytics/job/{subprojectid}?filter-date=2026-09
    Authorization: Bearer {access_token}
    data-partition-id: {data_partition_id}
    

    لإدراج التقارير للمستأجر بأكمله، اتصل بمسار المستأجر:

    GET https://<instance>.energy.azure.com/seistore-svc/api/v3/analytics/tenant/job?filter-date=2026
    Authorization: Bearer {access_token}
    data-partition-id: {data_partition_id}
    
  2. راجع قائمة مسارات الكتلة في الرد على التقارير:

    [
      "{subproject_name}/2026/09/15/{report_file_name}",
      "{subproject_name}/2026/09/22/{report_file_name}"
    ]
    

تحتوي الاستجابة على مسارات كتلة التقرير التي تطابق مرشح النطاق والتاريخ المختار. استخدم الأكثر تحديدا filter-date الذي يلبي احتياجاتك لتقليل عدد المسارات المعادة.

حمل تقريرا يحتوي على رابط SAS

بيانات الإبلاغ لا تتدفق أبدا عبر الخدمة. بدلا من ذلك، اطلب بيانات اعتماد SAS قصيرة العمر من نقطة /connection-string النهاية، ثم استخدم عنوان URL SAS العائد لقراءة كتل التقرير مباشرة من مساحة تخزين Azure Blob. يتم إلحاق المورد filter-date بمسار التخزين، لذا فإن تاريخ أكثر تحديدا يحدد بيانات الاعتماد لمجموعة أضيق من الكتل. يمكنك أيضا استخدام المعامل extension الموصوف في القسم السابق لاستهداف حاوية تقارير بديلة.

  1. لطلب رابط SAS لتقرير مشروع فرعي، اتصل بمسار المشروع الفرعي:

    GET https://<instance>.energy.azure.com/seistore-svc/api/v3/analytics/job/{subprojectid}/connection-string?filter-date=2026-09-15
    Authorization: Bearer {access_token}
    data-partition-id: {data_partition_id}
    

    لطلب رابط SAS لتقرير المستأجر، اتصل بمسار المستأجر:

    GET https://<instance>.energy.azure.com/seistore-svc/api/v3/analytics/tenant/job/connection-string?filter-date=2026-09
    Authorization: Bearer {access_token}
    data-partition-id: {data_partition_id}
    
  2. راجع الاستجابة. يحتوي على access_token رابط SAS:

    {
      "access_token": "https://<account>.blob.core.windows.net/sdms-analytics-reports/...&sig=...",
      "expires_in": 3599,
      "token_type": "SasUrl"
    }
    
  3. استخدم رابط SAS مع تخزين Azure SDK أو واجهة برمجة تطبيقات REST لتحميل مسار التقرير الذي اخترته في القسم السابق.

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

حذف جدول التحليلات

احذف جدول التحليلات عندما لا ترغب في أن تقوم الخدمة بتوليد تقارير متكررة لهذا النطاق.

  1. لحذف جدول مشروع فرعي، استدعي مسار المشروع الفرعي:

    DELETE https://<instance>.energy.azure.com/seistore-svc/api/v3/analytics/job/{subprojectid}
    Authorization: Bearer {access_token}
    data-partition-id: {data_partition_id}
    

    لحذف جدول المستأجر، اتصل بمسار المستأجر:

    DELETE https://<instance>.energy.azure.com/seistore-svc/api/v3/analytics/tenant/job
    Authorization: Bearer {access_token}
    data-partition-id: {data_partition_id}
    
  2. تأكد من أن الطلب يعود 200 OK. حذف جدول غير موجود ينجح أيضا، لذا العملية آمنة لإعادة المحاولة.

يتم حذف جدول التحليلات، ولم تعد الخدمة تولد تقارير متكررة لهذا النطاق.

تنظيف الموارد

هذا الدرس لا يوفر موردا جديدا ل Azure. لمنع إنشاء التقارير المستقبلية، احذف جدول التحليلات كما هو موضح في حذف جدول التحليلات.