تحويل البيانات باستخدام نشاط Hadoop MapReduce في Azure Data Factory أو Synapse Analytics
ينطبق على: Azure Data Factory Azure Synapse Analytics
تلميح
جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!
يستدعي نشاط HDInsight MapReduce في Azure Data Factory أو مسار Synapse Analytics برنامج MapReduce على نظام مجموعة HDInsight خاصتك أو عند الطلب. تعتمد هذه المقالة على مقالة أنشطة تحويل البيانات، والتي تقدم نظرة عامة على تحويل البيانات وأنشطة التحويل المدعومة.
لمعرفة المزيد، اقرأ مقالات المقدمة عن Azure Data Factory و Synapse Analytics، وقم بإجراء البرنامج التعليمي: البرنامج التعليمي: تحويل البيانات قبل قراءة هذه المقالة.
انظر Pig وHive للحصول على تفاصيل حول تشغيل البرامج النصية Pig/Hive على نظام مجموعة HDInsight المستند إلى Windows/Linux من مسار باستخدام HDInsight لأنشطة Hive وPig.
إضافة نشاط HDInsight MapReduce إلى البنية الأساسية لبرنامج ربط العمليات التجارية باستخدام واجهة المستخدم
لاستخدام نشاط HDInsight MapReduce في البنية الأساسية لبرنامج ربط العمليات التجارية، أكمل الخطوات التالية:
ابحث عن MapReduce في جزء أنشطة البنية الأساسية لبرنامج ربط العمليات التجارية، واسحب نشاط MapReduce إلى لوحة البنية الأساسية لبرنامج ربط العمليات التجارية.
حدّد نشاط MapReduce الجديد على اللوحة إذا لم يكن محددًا بالفعل.
حدد علامة التبويب HDI Cluster لتحديد أو إنشاء خدمة مرتبطة جديدة إلى مجموعة HDInsight التي سيتم استخدامها لتنفيذ نشاط MapReduce.
حدّد علامة التبويب Jar لتحديد أو إنشاء خدمة جديدة مرتبطة بـ Jar إلى حساب Azure Storage الذي سيستضيف البرنامج النصي الخاص بك. حدد اسم فئة ليتم تنفيذه هناك، ومسار ملف داخل موقع التخزين. يمكنك أيضًا تكوين تفاصيل متقدمة، بما في ذلك موقع مكتبة التعليمات البرمجية Jar، وتكوين تصحيح الأخطاء، والوسيطات والمعلمات التي سيتم تمريرها إلى البرنامج النصي.
بناء الجملة
{
"name": "Map Reduce Activity",
"description": "Description",
"type": "HDInsightMapReduce",
"linkedServiceName": {
"referenceName": "MyHDInsightLinkedService",
"type": "LinkedServiceReference"
},
"typeProperties": {
"className": "org.myorg.SampleClass",
"jarLinkedService": {
"referenceName": "MyAzureStorageLinkedService",
"type": "LinkedServiceReference"
},
"jarFilePath": "MyAzureStorage/jars/sample.jar",
"getDebugInfo": "Failure",
"arguments": [
"-SampleHadoopJobArgument1"
],
"defines": {
"param1": "param1Value"
}
}
}
تفاصيل بناء الجملة
الخاصية | الوصف | مطلوب |
---|---|---|
الاسم | تسمية النشاط | نعم |
الوصف | نص يوضح الغرض من استخدام النشاط | لا |
النوع | بالنسبة لنشاط MapReduce، يكون نوع النشاط هو HDinsightMapReduce | نعم |
linkedServiceName | مرجع إلى نظام مجموعة HDInsight مسجلة كخدمة مرتبطة. للتعرف على هذه الخدمة المرتبطة، راجع مقالة خدمات الحوسبة المرتبطة. | نعم |
className | اسم الفئة التي سيتم تنفيذها | نعم |
jarLinkedService | الرجوع إلى خدمة Azure Storage المرتبطة المستخدمة لتخزين ملفات Jar. يتم دعم Azure Blob Storage والخدمات المرتبطة بـ ADLS Gen2 فقط هنا. إذا لم تحدد هذه الخدمة المرتبطة، فسيتم استخدام خدمة Azure Storage المرتبطة المحددة في خدمة HDInsight المرتبطة. | لا |
jarFilePath | قم بتوفير المسار لملفات Jar المخزنة في Azure Storage المشار إليها بواسطة jarLinkedService. اسم الملف حساس لحالة الأحرف. | نعم |
jarlibs | صفيف سلسلة للمسار إلى ملفات مكتبة Jar المشار إليها بواسطة المهمة المخزنة في Azure Storage المحدد في jarLinkedService. اسم الملف حساس لحالة الأحرف. | لا |
getDebugInfo | تحدد متى يتم نسخ ملفات السجل إلى Azure Storage المستخدم بواسطة نظام مجموعة HDInsight (أو) المحددة بواسطة jarLinkedService. القيم المسموح بها: بلا، دوماً، أو فشل. القيمة الافتراضية: بلا. | لا |
الحجج | تعين صفيف من الوسيطات لمهمة Hadoop. يتم تمرير الوسيطات كوسيطات سطر الأوامر لكل مهمة. | لا |
يعرّف | يحدد المعلمات كأزواج مفاتيح/قيم للرجوع إليها ضمن البرنامج النصي للخلية. | لا |
مثال
يمكنك استخدام نشاط HDInsight MapReduce لتشغيل أي ملف MapReduce jar على نظام مجموعة HDInsight. في عينة تعريف JSON التالي للمسار، تكوين نشاط HDInsight لتشغيل ملف Mahout JAR.
{
"name": "MapReduce Activity for Mahout",
"description": "Custom MapReduce to generate Mahout result",
"type": "HDInsightMapReduce",
"linkedServiceName": {
"referenceName": "MyHDInsightLinkedService",
"type": "LinkedServiceReference"
},
"typeProperties": {
"className": "org.apache.mahout.cf.taste.hadoop.similarity.item.ItemSimilarityJob",
"jarLinkedService": {
"referenceName": "MyStorageLinkedService",
"type": "LinkedServiceReference"
},
"jarFilePath": "adfsamples/Mahout/jars/mahout-examples-0.9.0.2.2.7.1-34.jar",
"arguments": [
"-s",
"SIMILARITY_LOGLIKELIHOOD",
"--input",
"wasb://adfsamples@spestore.blob.core.windows.net/Mahout/input",
"--output",
"wasb://adfsamples@spestore.blob.core.windows.net/Mahout/output/",
"--maxSimilaritiesPerItem",
"500",
"--tempDir",
"wasb://adfsamples@spestore.blob.core.windows.net/Mahout/temp/mahout"
]
}
}
يمكنك تحديد أي وسيطات لبرنامج MapReduce في قسم "arguments". في وقت التشغيل، تشاهد بعض الوسيطات الإضافية (على سبيل المثال: mapreduce.job.tags) من إطار عمل MapReduce. لتمييز الوسيطات الخاصة بك مع الوسيطات MapReduce، خذ بعين الاعتبار استخدام كل من الخيار والقيمة كوسيطات كما هو موضح في المثال التالي (-s، --المدخلات، --المخرجات وما إلى ذلك، هي خيارات متبوعة مباشرة بقيمها)
المحتوى ذو الصلة
راجع المقالات التالية التي تشرح كيفية تحويل البيانات بطرق أخرى: