تحويل البيانات عن طريق تشغيل نشاط Jar في Azure Databricks

ينطبق على:Azure Data Factory Azure Synapse Analytics

تلميح

جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!

يُشغل نشاط Azure Databricks Jar في عمليات تشغيل التدفق Spark Jar في نظام مجموعة Azure Databricks الخاصة بك. تعتمد هذه المقالة على مقالة أنشطة تحويل البيانات، والتي تقدم نظرة عامة على تحويل البيانات وأنشطة التحويل المدعومة. يُعد Azure Databricks نظاماً أساسياً مُداراً لتشغيل Apache Spark.

للحصول على مقدمة لمدة إحدى عشرة دقيقة وعرض توضيحي لهذه الميزة، شاهد الفيديو التالي:

أضف نشاط Jar لـ Azure Databricks إلى مسار باستخدام واجهة المستخدم

لاستخدام نشاط Jar لـ Azure Databricks في مسار، أكمل الخطوات التالية:

  1. ابحث عن Jar في جزء أنشطة المسار، واسحب نشاط Jar إلى لوحة المسارات.

  2. حدد نشاط Jar الجديد على اللوحة إذا لم يكن محددا بالفعل.

  3. حدد علامة التبويب Azure Databricks لتحديد أو إنشاء خدمة جديدة مرتبطة بـ Azure Databricks ستنفذ نشاط Jar.

    Shows the UI for a Jar activity.

  4. حدد علامة تبويب الإعدادات وحدد اسم فئة ليتم تنفيذه في Azure Databricks، والمعلمات الاختيارية التي سيتم تمريرها إلى Jar، والمكتبات المراد تثبيتها على المجموعة لتنفيذ المهمة.

    Shows the UI for the Settings tab for a Jar activity.

تعريف نشاط Databricks Jar

وإليك عينة تعريف JSON لنشاط Databricks Jar:

{
    "name": "SparkJarActivity",
    "type": "DatabricksSparkJar",
    "linkedServiceName": {
        "referenceName": "AzureDatabricks",
        "type": "LinkedServiceReference"
    },
    "typeProperties": {
        "mainClassName": "org.apache.spark.examples.SparkPi",
        "parameters": [ "10" ],
        "libraries": [
            {
                "jar": "dbfs:/docs/sparkpi.jar"
            }
        ]
    }
}

خصائص نشاط Databricks Jar

يصف الجدول التالي خصائص JSON المستخدمة في تعريف JSON:

الخاصية الوصف مطلوب
الاسم اسم النشاط في التدفق. ‏‏نعم‬
الوصف نص يصف ما يفعله النشاط. لا
النوع بالنسبة لنشاط Databricks Jar، يكون نوع النشاط هو DatabricksSparkJar. ‏‏نعم‬
linkedServiceName اسم خدمة Databricks المرتبطة التي يُشغل عليها نشاط Jar. للتعرف على هذه الخدمة المرتبطة، راجع مقالة خدمات الحوسبة المرتبطة. ‏‏نعم‬
mainClassName الاسم الكامل للفئة التي تحتوي على الأسلوب الرئيسي الذي سيتم تنفيذه. يجب أن تكون هذه الفئة موجودة في JAR يتم توفيرها كمكتبة. يمكن أن يحتوي ملف JAR على فئات متعددة. ويمكن أن تحتوي كلاً من الفئات على أسلوب رئيسي. ‏‏نعم‬
المعلمات المعلمات التي سيتم تمريرها إلى الأسلوب الرئيسي. تُعد هذه الخاصية بمثابة مصفوفة من السلاسل. لا
المصادقة قائمة بالمكتبات التي سيتم تثبيتها على نظام المجموعة الذي سيقوم بتنفيذ المهمة. يمكن أن تكون مصفوفة <سلسلة، عنصر> نعم (يحتوي واحد على الأقل على الأسلوب MainClassName)

إشعار

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

المكتبات المدعومة لأنشطة Databricks

في تعريف نشاط Databricks السابق، حددت أنواع المكتبات التالية: jar، وegg، وmaven، وpypi، وcran.

{
    "libraries": [
        {
            "jar": "dbfs:/mnt/libraries/library.jar"
        },
        {
            "egg": "dbfs:/mnt/libraries/library.egg"
        },
        {
            "maven": {
                "coordinates": "org.jsoup:jsoup:1.7.2",
                "exclusions": [ "slf4j:slf4j" ]
            }
        },
        {
            "pypi": {
                "package": "simplejson",
                "repo": "http://my-pypi-mirror.com"
            }
        },
        {
            "cran": {
                "package": "ada",
                "repo": "https://cran.us.r-project.org"
            }
        }
    ]
}

لمزيد من التفاصيل، راجع وثائق Databricks لأنواع المكتبات.

كيفية تحميل مكتبة في Databricks

يمكنك استخدام واجهة مستخدم مساحة العمل:

  1. استخدام واجهة مستخدم مساحة عمل Databricks

  2. يمكنك استخدام Databricks CLI لحصول على مسار dbfs من المكتبة المضافة باستخدام واجهة المستخدم.

    عادةً ما يتم تخزين مكتبات Jar في الدليل dbfs:/FileStore/jars أثناء استخدام واجهة المستخدم. يمكنك سردها بالكامل من خلال CLI: databricks fs ls dbfs:/FileStore/job-jars

أو يمكنك استخدام Databricks CLI:

  1. اتبع نسخ المكتبة باستخدام Databricks CLI

  2. استخدام Databricks CLI (خطوات التثبيت)

    على سبيل المثال، لنسخ JAR إلى dbfs: dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar

للحصول على مقدمة وعرض توضيحي لمدة 11 دقيقة عن هذه الميزة، شاهد هذا الفيديو.