تشغيل الاستعلامات الموحدة على مساحة عمل Databricks أخرى

هام

هذه الميزة في المعاينة العامة.

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

هام

Databricks-to-Databricks Lakehouse Federation هو أداة جيدة لتشغيل الاستعلامات على البيانات التي تديرها مساحة عمل أخرى في مساحة عمل Databricks Hive أو AWS Glu metastore. بالنسبة لمعظم السيناريوهات الأخرى، تكون مهام سير عمل Azure Databricks الأخرى أكثر كفاءة:

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

ليست هناك حاجة لإعداد Lakehouse Federation في أي من هذين السيناريوهين.

للاتصال بكتالوج Databricks في مساحة عمل أخرى باستخدام Lakehouse Federation، يجب عليك إنشاء ما يلي في مخزن metastore الخاص بك في كتالوج Azure Databricks Unity:

  • مجموعة أو مستودع SQL في مساحة عمل Databricks.
  • اتصال بالمجموعة أو مستودع SQL.
  • كتالوج خارجي في مخزن بيانات تعريف كتالوج Unity يعكس كتالوج Databricks الآخر الذي يمكن الوصول إليه من نظام المجموعة أو مستودع SQL بحيث يمكنك استخدام بناء جملة استعلام كتالوج Unity وأدوات إدارة البيانات لإدارة وصول مستخدم Azure Databricks إلى البيانات.

قبل البدء

متطلبات مساحة العمل:

  • مساحة العمل ممكنة ل Unity Catalog.

متطلبات الحساب:

  • اتصال الشبكة من نظام مجموعة Databricks Runtime أو مستودع SQL إلى أنظمة قاعدة البيانات الهدف. راجع توصيات الشبكات ل Lakehouse Federation.
  • يجب أن تستخدم مجموعات Azure Databricks Databricks وقت تشغيل Databricks 13.3 LTS أو أعلى ووضع الوصول المشترك أو أحادي المستخدم.
  • يجب أن تكون مستودعات SQL Pro أو بلا خادم.

الأذونات المطلوبة:

  • لإنشاء اتصال، يجب أن تكون مسؤول metastore أو مستخدما لديه CREATE CONNECTION الامتياز على مخزن بيانات تعريف كتالوج Unity المرفق بمساحة العمل.
  • لإنشاء كتالوج خارجي، يجب أن يكون لديك CREATE CATALOG الإذن على metastore وأن تكون إما مالك الاتصال أو أن يكون لديك CREATE FOREIGN CATALOG امتياز على الاتصال.

يتم تحديد متطلبات إذن إضافية في كل مقطع يستند إلى المهام التالية.

يجب أن يكون لديك أيضا مجموعة نشطة أو مستودع SQL في مساحة عمل Azure Databricks التي تستخدمها لتكوين الاتصال.

إنشاء اتصال

يحدد الاتصال مسارا وبيانات اعتماد للوصول إلى نظام قاعدة بيانات خارجي. لإنشاء اتصال، يمكنك استخدام مستكشف الكتالوج CREATE CONNECTION أو الأمر SQL في دفتر ملاحظات Azure Databricks أو محرر استعلام Databricks SQL.

الأذونات المطلوبة: مسؤول Metastore أو المستخدم الذي يتمتع بالامتياز CREATE CONNECTION .

مستكشف الكتالوج

  1. في مساحة عمل Azure Databricks، انقر فوق أيقونة الكتالوجكتالوج.
  2. في الجزء الأيمن، قم بتوسيع قائمة البيانات الخارجية وحدد الاتصال ions.
  3. انقر فوق إنشاء اتصال.
  4. أدخل اسم الاتصال سهل الاستخدام.
  5. حدد نوع الاتصال من Databricks.
  6. أدخل خصائص الاتصال التالية لمثيل Databricks الآخر.
    • المضيف: اسم مثيل مساحة العمل. لمعرفة كيفية الحصول على اسم مثيل مساحة العمل، راجع الحصول على معرفات لكائنات مساحة العمل.
    • مسار HTTP: مسار HTTP لمستودع SQL الخاص بك. للحصول على المسار، انتقل إلى SQL > SQL Warehouses في الشريط الجانبي، وحدد مستودع SQL، وانتقل إلى علامة التبويب الاتصال details، وانسخ قيمة مسار HTTP.
    • رمز الوصول الشخصي: رمز مميز للوصول الشخصي إلى Azure Databricks يتيح الوصول إلى مساحة العمل الهدف. لمعرفة كيفية الحصول على رمز مميز، راجع مصادقة رمز الوصول الشخصي Azure Databricks. بالنسبة للاتصالات، توصي Databricks باستخدام رمز وصول شخصي لكيان الخدمة.
  7. (اختياري) انقر فوق اختبار الاتصال للتأكد من أنه يعمل.
  8. (اختياري) إضافة تعليق.
  9. انقر فوق Create.

Sql

قم بتشغيل الأمر التالي في دفتر ملاحظات أو محرر استعلام Databricks SQL، مع استبدال ما يلي:

  • <connection-name>: اسم سهل الاستخدام للاتصال الذي تقوم بإنشاءه.
  • <workspace-instance>: مثيل مساحة العمل الهدف. لمعرفة كيفية الحصول على اسم مثيل مساحة العمل، راجع الحصول على معرفات لكائنات مساحة العمل.
  • <sql-warehouse-path>: مسار HTTP لمستودع SQL الخاص بك. للحصول على المسار، انتقل إلى SQL > SQL Warehouses في الشريط الجانبي، وحدد مستودع SQL، وانتقل إلى علامة التبويب الاتصال details، وانسخ قيمة مسار HTTP.
  • <personal-access-token>: رمز مميز للوصول الشخصي إلى Azure Databricks يتيح الوصول إلى مساحة العمل الهدف. لمعرفة كيفية الحصول على رمز مميز، راجع مصادقة رمز الوصول الشخصي Azure Databricks. بالنسبة للاتصالات، توصي Databricks باستخدام رمز الوصول الشخصي لمدير الخدمة.
CREATE CONNECTION <connection-name> TYPE databricks
OPTIONS (
  host '<workspace-instance>',
  httpPath '<sql-warehouse-path>',
  personalAccessToken '<personal-access-token>'
);

نوصي باستخدام أسرار Azure Databricks بدلا من سلاسل النص العادي للقيم الحساسة مثل بيانات الاعتماد. على سبيل المثال:

CREATE CONNECTION <connection-name> TYPE databricks
OPTIONS (
  host '<workspace-instance>',
  httpPath '<sql-warehouse-path>',
  personalAccessToken secret ('<secret-scope>','<secret-key-password>')
)

للحصول على معلومات حول إعداد البيانات السرية، راجع إدارة البيانات السرية.

إنشاء كتالوج خارجي

يعكس الكتالوج الخارجي كتالوجا في مساحة عمل Databricks الخارجية بحيث يمكنك الاستعلام عن الوصول إلى البيانات وإدارتها في كتالوج Databricks الخارجي كما لو كان كتالوج في workspsace الخاص بك. لإنشاء كتالوج خارجي، يمكنك استخدام اتصال بمساحة عمل Databricks الخارجية التي تم تعريفها بالفعل.

لإنشاء كتالوج خارجي، يمكنك استخدام مستكشف الكتالوج CREATE FOREIGN CATALOG أو أمر SQL في دفتر ملاحظات Azure Databricks أو محرر استعلام Databricks SQL.

الأذونات المطلوبة:CREATE CATALOG إذن على metastore وإما ملكية الاتصال أو الامتياز CREATE FOREIGN CATALOG على الاتصال.

مستكشف الكتالوج

  1. في مساحة عمل Azure Databricks، انقر فوق أيقونة الكتالوجكتالوج.
  2. انقر فوق الزر إنشاء كتالوج.
  3. في مربع الحوار إنشاء كتالوج جديد، أدخل اسما للكتالوج وحدد نوعخارجي.
  4. حدد الاتصال الذي يوفر الوصول إلى قاعدة البيانات التي تريد عكسها ككتالوج Unity.
  5. أدخل اسم كتالوج Databricks الهدف.
  6. انقر فوق Create.

Sql

قم بتشغيل أمر SQL التالي في دفتر ملاحظات أو محرر Databricks SQL. العناصر الموجودة بين قوسين اختيارية. استبدل قيم العنصر النائب:

  • <catalog-name>: اسم الكتالوج الخارجي الذي تقوم بإنشاءه.
  • <connection-name>: كائن الاتصال الذي يحدد مصدر البيانات والمسار وبيانات اعتماد الوصول.
  • <external-catalog-name>: اسم الكتالوج في مساحة عمل Databricks الخارجية التي تقوم بعكسها.
CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name> USING CONNECTION <connection-name>
OPTIONS (catalog '<external-catalog-name>');

عمليات الدفع المدعومة

يتم دعم القوائم المنبثقة التالية على جميع الحوسبة:

  • عوامل التصفية
  • التوقعات
  • الحد
  • الدالات: يتم دعم تعبيرات التصفية فقط (دالات السلسلة والدالات الرياضية والبيانات ودالات الطابع الزمني والطوابع الزمنية وغيرها من الدالات المتنوعة، مثل الاسم المستعار والإصبع والفرز).

يتم دعم عمليات الدفع التالية على Databricks Runtime 13.3 LTS وما فوق حوسبة مستودع SQL:

  • التجميعات
  • عوامل التشغيل المنطقية التالية: =, <, <=, >, >=, <=>
  • الدالات الرياضية التالية (غير معتمدة إذا تم تعطيل ANSI): +, -, *, ٪, /
  • عوامل التشغيل المتنوعة التالية: ^, |, ~
  • الفرز، عند استخدامه مع الحد

لا يتم دعم القوائم المنبثقة التالية:

  • عمليات الربط
  • وظائف Windows