مشاركة عبر


مراقبة نشاط الحساب باستخدام جداول النظام

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

ما هي جداول النظام؟

جداول النظام هي مخزن تحليلي مستضاف على Azure Databricks للبيانات التشغيلية لحسابك الموجود في الكتالوج system . يمكن استخدام جداول النظام لقابلية الملاحظة التاريخية عبر حسابك.

إشعار

للحصول على وثائق حول system.information_schema، راجع مخطط المعلومات.

المتطلبات

  • للوصول إلى جداول النظام، يجب تمكين مساحة العمل الخاصة بك كتالوج Unity. لمزيد من المعلومات، راجع تمكين مخططات جدول النظام.

  • لا تتوفر جداول النظام في المناطق التالية:

    • مناطق Azure China
    • مناطق Azure Government
    • West India
    • غرب سويسرا

ما هي جداول النظام المتوفرة؟

حاليا، يستضيف Azure Databricks جداول النظام التالية:

جدول ‏‏الوصف الموقع يدعم الدفق فترة الاستبقاء المجانية يتضمن بيانات عالمية أو إقليمية
سجلات التدقيق (معاينة عامة) يتضمن سجلات لكافة أحداث التدقيق من مساحات العمل في منطقتك. للحصول على قائمة بأحداث التدقيق المتوفرة، راجع مرجع سجل التشخيص. system.access.audit ‏‏نعم‬ 365 يومًا إقليمي للأحداث على مستوى مساحة العمل. عمومي للأحداث على مستوى الحساب.
دورة حياة الجدول (معاينة عامة) يتضمن سجلا لكل حدث قراءة أو كتابة على جدول أو مسار كتالوج Unity. system.access.table_lineage ‏‏نعم‬ 365 يومًا الإقليمية
دورة حياة العمود (معاينة عامة) يتضمن سجلا لكل حدث قراءة أو كتابة على عمود كتالوج Unity (ولكنه لا يتضمن الأحداث التي ليس لها مصدر). system.access.column_lineage ‏‏نعم‬ 365 يومًا الإقليمية
الاستخدام القابل للفوترة يتضمن سجلات لجميع الاستخدامات القابلة للفوترة عبر حسابك. كل سجل استخدام هو تجميع كل ساعة لاستخدام المورد القابل للفوترة. system.billing.usage ‏‏نعم‬ 365 يومًا عمومي
التسعير سجل تاريخي لتسعير SKU. تتم إضافة سجل في كل مرة يحدث فيها تغيير في سعر SKU. system.billing.list_prices لا غير محدود عمومي
أنظمة المجموعات (معاينة عامة) جدول أبعاد بطيئ التغير يحتوي على المحفوظات الكاملة لتكوينات الحوسبة بمرور الوقت لأي نظام مجموعة. system.compute.clusters ‏‏نعم‬ غير متوفر الإقليمية
المخطط الزمني للعقدة (معاينة عامة) يلتقط مقاييس الاستخدام لموارد حساب جميع الأغراض والوظائف. system.compute.node_timeline ‏‏نعم‬ 30 يومًا الإقليمية
أنواع العقد (معاينة عامة) يلتقط أنواع العقد المتوفرة حاليا بمعلومات الأجهزة الأساسية الخاصة بها. system.compute.node_types لا ‏‫غير متاح الإقليمية
مستودعات SQL (معاينة عامة) يحتوي على السجل الكامل للتكوينات بمرور الوقت لأي مستودع SQL. system.compute.warehouses ‏‏نعم‬ 365 يومًا الإقليمية
أحداث مستودع SQL (معاينة عامة) يلتقط الأحداث المتعلقة بمستودعات SQL. على سبيل المثال، البدء والإيقاف والتشغيل والتحجيم لأعلى ولأسفل. system.compute.warehouse_events ‏‏نعم‬ 365 يومًا الإقليمية
الوظائف (معاينة عامة) يتعقب جميع الوظائف التي تم إنشاؤها في الحساب. system.lakeflow.jobs ‏‏نعم‬ 365 يومًا الإقليمية
مهام الوظيفة (معاينة عامة) يتعقب جميع مهام الوظيفة التي يتم تشغيلها في الحساب. system.lakeflow.job_tasks ‏‏نعم‬ 365 يومًا الإقليمية
المخطط الزمني لتشغيل المهمة (معاينة عامة) يتعقب أوقات بدء وانتهاء تشغيل المهمة. system.lakeflow.

job_run_timeline
‏‏نعم‬ 365 يومًا الإقليمية
المخطط الزمني لمهمة المهمة (معاينة عامة) يتعقب أوقات البدء والانتهاء واحسب الموارد المستخدمة لتشغيل مهمة الوظيفة. system.lakeflow.

job_task_run_timeline
‏‏نعم‬ 365 يومًا الإقليمية
أحداث قمع السوق (معاينة عامة) يتضمن انطباع المستهلك وبيانات القمع لقوائمك. system.marketplace.listing_

funnel_events
‏‏نعم‬ 365 يومًا الإقليمية
الوصول إلى قائمة السوق (معاينة عامة) يتضمن معلومات المستهلك لبيانات الطلب المكتملة أو الحصول على أحداث البيانات على قوائمك. system.marketplace.listing_

access_events
‏‏نعم‬ 365 يومًا الإقليمية
التحسين التنبؤي (معاينة عامة) يتعقب محفوظات عمليات ميزة التحسين التنبؤي. system.storage.predictive_

optimization_operations_history
لا 180 أيام الإقليمية
أحداث مساعد Databricks (معاينة عامة) يتعقب رسائل المستخدم المرسلة إلى Databricks Assistant. system.access.assistant_events لا 365 يومًا الإقليمية
محفوظات الاستعلام (معاينة عامة) يلتقط سجلات لجميع الاستعلامات التي تعمل على مستودعات SQL. system.query.history ‏‏نعم‬ 90 يومًا الإقليمية
تنظيف أحداث الغرفة (معاينة عامة) يلتقط الأحداث المتعلقة بالغرف النظيفة. system.access.clean_room_events ‏‏نعم‬ 365 يومًا الإقليمية
نموذج يخدم استخدام نقطة النهاية (معاينة عامة) يلتقط عدد الرموز المميزة لكل طلب إلى نقطة نهاية خدمة نموذج واستجاباته. لالتقاط استخدام نقطة النهاية في هذا الجدول، يجب تمكين تتبع الاستخدام على نقطة نهاية العرض. system.serving.endpoint_usage. ‏‏نعم‬ 90 يومًا الإقليمية
نموذج يقدم بيانات نقطة النهاية (معاينة عامة) جدول أبعاد متغير بطيء يخزن بيانات التعريف لكل نموذج خارجي يتم تقديمه في نقطة نهاية خدمة نموذج. system.serving.served_entities ‏‏نعم‬ 365 يومًا الإقليمية

جداول الاستخدام والتسعير القابلة للفوترة مجانية للاستخدام. الجداول في المعاينة العامة مجانية أيضا للاستخدام أثناء المعاينة ولكن يمكن أن تتحمل رسوما في المستقبل.

إشعار

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

تمكين مخططات جدول النظام

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

يتم تمكين جداول النظام على مستوى المخطط. إذا قمت بتمكين مخطط نظام، يمكنك تمكين جميع الجداول داخل هذا المخطط. عند إصدار مخططات جديدة، يحتاج مسؤول الحساب إلى تمكين المخطط يدويا.

يجب تمكين جداول النظام بواسطة مسؤول حساب. يمكنك تمكين جداول النظام باستخدام واجهة برمجة تطبيقات SystemSchemas.

إشعار

billing يتم تمكين المخطط بشكل افتراضي. يجب تمكين المخططات الأخرى يدويا.

سرد مخططات النظام المتوفرة

استخدم الأمر curl التالي لسرد مخططات النظام المتوفرة:

curl -v -X GET -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas"

فيما يلي مثال على إخراج GET الأمر:

{"schemas":[{"schema":"access","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"billing","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"information_schema","state":"<AVAILABLE OR EnableCompleted>"}]}

state: AVAILABLE: مخطط النظام متوفر ولكن لم يتم تمكينه بعد.

state: EnableCompleted: لقد قمت بتمكين مخطط النظام وهو مرئي في مستكشف الكتالوج.

تمكين مخطط النظام

استخدم الأمر curl التالي لتمكين مخطط النظام:

curl -v -X PUT -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

إذا تم تمكين مخطط النظام بنجاح، يتم إرجاع رمز 200 النتيجة.

إذا حاولت إعادة تمكين مخطط نظام، يتم إرجاع ما يلي: "error_code":"SCHEMA_ALREADY_EXISTS","message":"Schema <schema-name> already exists".

تعطيل مخطط النظام

استخدم الأمر curl التالي لتعطيل مخطط النظام:

curl -v -X DELETE -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

منح حق الوصول إلى جداول النظام

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

جداول النظام للقراءة فقط ولا يمكن تعديلها.

إشعار

إذا تم إنشاء حسابك بعد 9 نوفمبر 2023، فقد لا يكون لديك مسؤول metastore بشكل افتراضي. لمزيد من المعلومات، راجع إعداد كتالوج Unity وإدارته.

هل تحتوي جداول النظام على بيانات لكافة مساحات العمل في حسابك؟

تحتوي جداول النظام على بيانات تشغيلية لجميع مساحات العمل في حسابك المنشورة داخل نفس منطقة السحابة. تحتوي جداول نظام الفوترة على بيانات على مستوى الحساب.

على الرغم من أنه لا يمكن الوصول إلى جداول النظام إلا من خلال مساحة عمل كتالوج Unity، فإن الجداول تتضمن أيضا بيانات تشغيلية لمساحات عمل كتالوج غير Unity في حسابك.

أين يتم تخزين بيانات جدول النظام؟

يتم تخزين بيانات جدول النظام لحسابك في حساب تخزين مستضاف على Azure Databricks موجود في نفس المنطقة مثل metastore الخاص بك. تتم مشاركة البيانات بأمان معك باستخدام Delta Sharing.

يحتوي كل جدول على فترة استبقاء بيانات مجانية. للحصول على معلومات حول تمديد فترة الاستبقاء، اتصل بفريق حساب Azure Databricks.

أين توجد جداول النظام في مستكشف الكتالوج؟

توجد جداول النظام في حسابك في كتالوج يسمى system، والذي يتم تضمينه في كل مخزن بيانات تعريف كتالوج Unity. في الكتالوج system ، سترى مخططات مثل access و billing التي تحتوي على جداول النظام.

اعتبارات لجداول نظام الدفق

يستخدم Azure Databricks Delta Sharing لمشاركة بيانات جدول النظام مع العملاء. كن على دراية بالاعتبارات التالية عند الدفق باستخدام Delta Sharing:

  • إذا كنت تستخدم الدفق مع جداول النظام، فقم skipChangeCommits بتعيين الخيار إلى true. يضمن هذا عدم تعطيل مهمة الدفق من الحذف في جداول النظام. راجع تجاهل التحديثات والحذف.
  • Trigger.AvailableNow غير مدعوم مع تدفق مشاركة دلتا. سيتم تحويله إلى Trigger.Once.

إذا كنت تستخدم مشغلا في مهمة الدفق وتجد أنه لا يتعرف على أحدث إصدار لجدول النظام، توصي Databricks بزيادة التكرار المجدول للوظيفة.

قراءة التغييرات المتزايدة من جداول نظام الدفق

spark.readStream.option("skipChangeCommits", "true").table("system.billing.usage")

المشكلات المعروفة

  • حاليا لا يوجد دعم للمراقبة في الوقت الحقيقي. يتم تحديث البيانات على مدار اليوم. إذا لم تشاهد سجلا لحدث حديث، فتحقق مرة أخرى لاحقا.

  • لتمكين جداول النظام، قد تحتاج إلى منح الوصول إلى الشبكة إلى نقطة نهاية تخزين Blob لجداول النظام. لعرض قائمة بنقطة نهاية تخزين جداول نظام كل منطقة، راجع عناوين IP لنقطة نهاية التخزين.

  • يتم إهمال مخططات system.operational_data النظام و system.lineage وستحتوي على جداول فارغة.

  • __internal_logging يتم استخدام مخطط جدول النظام لدعم تسجيل الحمولة باستخدام جداول الاستدلال. هذا المخطط مرئي لمسؤولي الحساب، ولكن لا يمكن تمكينه ولا يجب استخدامه لسير عمل العملاء.