نسخ البيانات من Spark باستخدام Azure Data Factory أو تحليلات Synapse
ينطبق على: Azure Data Factory Azure Synapse Analytics
تلميح
جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!
توضح هذه المقالة كيفية استخدام نشاط النسخ فيAzure Data Factory أو تدفقات تحليلات Synapse لنسخ البيانات من Spark. تعتمد هذه المقالة على مقالة نظرة عامة على نشاط النسخ التي تقدم نظرة عامة على نشاط النسخ.
يتوفر دعم موصل Spark للقدرات التالية:
القدرات المدعومة | IR |
---|---|
نشاط النسخ (مصدر/-) | (1) (2) |
نشاط البحث | (1) (2) |
① وقت تشغيل تكامل Azure ② وقت تشغيل التكامل المستضاف ذاتيًا
للحصول على قائمة بمخازن البيانات المدعومة كمصادر/متلقيات بواسطة نشاط النسخ، راجع جدول مخازن البيانات المدعومة.
توفر الخدمة برنامج تشغيل مضمناً لتمكين الاتصال، وبالتالي لا تحتاج إلى تثبيت أي برنامج تشغيل يدوياً باستخدام هذا الموصل.
إذا كان مخزن البيانات الخاص بك موجوداً داخل شبكة محلية، أو شبكة Azure ظاهرية، أو Amazon Virtual Private Cloud، فأنت بحاجة إلى تكوين وقت تشغيل تكامل مستضاف ذاتياً للاتصال به.
إذا كان مخزن البيانات الخاص بك عبارة عن خدمة بيانات سحابية مُدارة، يمكنك استخدام Azure Integration Runtime. إذا كان الوصول مقتصراً على عناوين IP التي تمت الموافقة عليها في قواعد جدار الحماية، يمكنك إضافة عناوين IP لـ Azure Integration Runtime إلى قائمة السماح.
يمكنك أيضاً استخدام ميزة وقت تشغيل تكامل الشبكة الظاهرية المُدارة في Azure Data Factory للوصول إلى الشبكة المحلية دون تثبيت وقت تشغيل تكامل مستضاف ذاتياً وتكوينه.
لمزيد من المعلومات حول آليات وخيارات أمان الشبكة التي يدعمها Data Factory، راجع إستراتيجيات الوصول إلى البيانات.
لتنفيذ نشاط النسخ باستخدام أحد المسارات، يمكنك استخدام إحدى الأدوات أو عدد تطوير البرامج التالية:
- أداة نسخ البيانات
- مدخل Azure
- The .NET SDK
- عدة تطوير برامج Python
- Azure PowerShell
- واجهة برمجة تطبيقات REST
- قالب Azure Resource Manager
استخدم الخطوات التالية لإنشاء خدمة مرتبطة إلى Spark في واجهة مستخدم مدخل Microsoft Azure.
استعرض للوصول إلى علامة التبويب "Manage" في مصنع بيانات Azure أو مساحة عمل Synapse، وحدد "Linked Services"، ثم انقر فوق "New":
ابحث عن Spark وحدد موصل Spark.
قم بتكوين تفاصيل الخدمة، واختبر الاتصال، وأنشئ الخدمة المرتبطة الجديدة.
توفر المقاطع التالية تفاصيل حول الخصائص المستخدمة لتعريف كيانات مصنع البيانات الخاصة بموصل Spark.
يتم اعتماد الخصائص التالية لخدمة Spark المرتبطة:
الخاصية | الوصف | مطلوب |
---|---|---|
النوع | يجب تعيين خاصية النوع إلى: Spark | نعم |
مضيف | عنوان IP أو اسم المضيف لخادم Spark | نعم |
المنفذ | منفذ TCP الذي يستخدمه ملقم Spark للاستماع إلى اتصالات العميل. إذا قمت بالاتصال بـ Azure HDInsights، فحدد المنفذ على أنه 443. | نعم |
serverType | نوع خادم Spark. القيم المسموح بها هي: SharkServer، SharkServer2، SparkThriftServer |
لا |
بروتوكول النقل التوفير | بروتوكول النقل المراد استخدامه في طبقة التوفير. القيم المسموح بها هي: ثنائي، SASL، HTTP |
لا |
نوع المصادقة | طريقة المصادقة المستخدمة للوصول إلى خادم Spark. القيم المسموح بها هي: مجهول، اسم المستخدم، UsernameAndPassword، WindowsAzureHDInsightService |
نعم |
اسم المستخدم | اسم المستخدم الذي تستخدمه للوصول إلى خادم Spark. | لا |
كلمة المرور | كلمة المرور الخاصة بالمستخدم. ضع علامة على هذا الحقل باعتباره SecureString لتخزينه بشكل آمن، أو قم بالإشارة إلى بيانات سرية مخزنة في Azure Key Vault. | لا |
httpPath | عنوان URL الجزئي المطابق لخادم Spark. | لا |
enableSsl | يحدد ما إذا كانت الاتصالات بالخادم مشفرة باستخدام TLS. القيمة الافتراضية هي false. | لا |
trustedCertPath | المسار الكامل لملف .pem الذي يحتوي على شهادات CA موثوق بها للتحقق من الملقم عند الاتصال عبر TLS. يمكن تعيين هذه الخاصية فقط عند استخدام TLS على وقت تشغيل التكامل المستضاف ذاتيًا. القيمة الافتراضية هي ملف cacerts.pem المثبت مع وقت تشغيل التكامل. | لا |
useSystemTrustStore | تحديد ما إذا كنت تريد استخدام شهادة CA من مخزن الثقة بالنظام أو من ملف PEM محدد. القيمة الافتراضية هي false. | لا |
allowHostNameCNMismatch | تحدد ما إذا كنت تريد طلب اسم شهادة TLS / SSL الصادرة عن CA لمطابقة اسم مضيف الملقم عند الاتصال عبر TLS. القيمة الافتراضية هي false. | لا |
allowSelfSignedServerCert | يحدد ما إذا كان سيتم السماح بشهادات موقعة ذاتياً من الخادم. القيمة الافتراضية هي false. | لا |
connectVia | Integration Runtime الذي سيتم استخدامه للاتصال بمخزن البيانات. تعرف على المزيد من قسم المتطلبات الأساسية. إذا لم يتم تحديده، فإنه يستخدم Azure Integration Runtime الافتراضي. | لا |
مثال:
{
"name": "SparkLinkedService",
"properties": {
"type": "Spark",
"typeProperties": {
"host" : "<cluster>.azurehdinsight.net",
"port" : "<port>",
"authenticationType" : "WindowsAzureHDInsightService",
"username" : "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
}
}
}
للحصول على قائمة كاملة بالأقسام والخصائص المتوفرة لتعريف مجموعات البيانات، راجع مقالة مجموعات البيانات. يوفر هذا القسم قائمة بالخصائص التي تدعمها مجموعة بيانات Spark.
لنسخ البيانات من Spark، قم بتعيين خاصية نوع مجموعة البيانات إلى SparkObject. تدعم الخصائص التالية:
الخاصية | الوصف | مطلوب |
---|---|---|
النوع | يجب تعيين خاصية نوع مجموعة البيانات إلى: SparkObject | نعم |
Schema | اسم المخطط. | لا (إذا تم تحديد "الاستعلام" في مصدر النشاط) |
طاولتنا | ضع اسمًا للجدول. | لا (إذا تم تحديد "الاستعلام" في مصدر النشاط) |
اسم الجدول | اسم الجدول مع المخطط. هذه الخاصية مدعومة للتوافق مع الإصدارات السابقة. استخدم schema وtable لأحمال العمل الجديدة. |
لا (إذا تم تحديد "الاستعلام" في مصدر النشاط) |
مثال
{
"name": "SparkDataset",
"properties": {
"type": "SparkObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<Spark linked service name>",
"type": "LinkedServiceReference"
}
}
}
للحصول على قائمة كاملة بالأقسام والخصائص المتوفرة لتعريف الأنشطة، راجع مقالة التدفقات. يوفر هذا القسم قائمة بالخصائص التي يدعمها مصدر Spark.
لنسخ البيانات من Spark، قم بتعيين نوع المصدر في نشاط النسخ إلى SparkSource. تُدعم الخصائص التالية في قسم مصدر نشاط النسخ:
الخاصية | الوصف | مطلوب |
---|---|---|
النوع | يجب تعيين خاصية نوع مصدر نشاط النسخ إلى: SparkSource | نعم |
استعلام | استخدم استعلام SQL المخصص لقراءة البيانات. على سبيل المثال: "SELECT * FROM MyTable" . |
لا (إذا تم تحديد "tableName" في مجموعة البيانات) |
مثال:
"activities":[
{
"name": "CopyFromSpark",
"type": "Copy",
"inputs": [
{
"referenceName": "<Spark input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "SparkSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
لمعرفة تفاصيل حول الخصائص، تحقق من نشاط البحث.
للحصول على قائمة بمخازن البيانات المدعومة من نشاط النسخ كمصادر ومواضع تلقي، راجع مخازن البيانات المدعومة.