تنسيق Avro في Azure Data Factory وSynapse Analytics

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

تلميح

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

اتبع هذه المقالة عندما تريد تحليل الملفات النصية المحددة أو كتابة البيانات بتنسيق نص Avro.

تنسيق Avro مدعوم للموصلات التالية: Amazon S3، Amazon S3 Compatible Storage، Azure Blob، Azure Data Lake Storage Gen1، Azure Data Lake Storage Gen2، Azure Files، نظام الملفات، FTP ، Google Cloud Storage، HDFS وHTTP وOracle Cloud Storage وSFTP.

خصائص مجموعة البيانات

للحصول على قائمة كاملة بالأقسام والخصائص المتوفرة لتعريف مجموعات البيانات، راجع مقالة مجموعات البيانات. يوفر هذا القسم قائمة بالخصائص التي تدعمها مجموعة بيانات Avro.

الخاصية الوصف مطلوب
النوع يجب تعيين خاصية نوع مجموعة البيانات إلى Avro. ‏‏نعم‬
موقع إعدادات الموقع للملف (الملفات). يحتوي كل موصل يستند إلى ملف على نوع الموقع الخاص به وخصائص مدعومة ضمن location. راجع التفاصيل الواردة في مقالة الموصل -> قسم خصائص مجموعة البيانات. ‏‏نعم‬
avroCompressionCodec برنامج ترميز الضغط لاستخدامها عند الكتابة إلى ملفات Avro. عند القراءة من ملفات Avro، تحدد الخدمة تلقائياً برنامج ترميز الضغط استناداً إلى بيانات تعريف الملف.
الأنواع المدعومة هي "none" (افتراضي)،"deflate"، "snappy". ملاحظة حالياً لا يدعم نشاط النسخ Snappy عند قراءة/كتابة ملفات Avro.
لا

إشعار

المساحة البيضاء في اسم العمود غير معتمدة لملفات Avro.

وفيما يلي مثال على مجموعة بيانات Avro على Azure Blob Storage:

{
    "name": "AvroDataset",
    "properties": {
        "type": "Avro",
        "linkedServiceName": {
            "referenceName": "<Azure Blob Storage linked service name>",
            "type": "LinkedServiceReference"
        },
        "schema": [ < physical schema, optional, retrievable during authoring > ],
        "typeProperties": {
            "location": {
                "type": "AzureBlobStorageLocation",
                "container": "containername",
                "folderPath": "folder/subfolder",
            },
            "avroCompressionCodec": "snappy"
        }
    }
}

انسخ خصائص النشاط

للحصول على قائمة كاملة بالأقسام والخصائص المتوفرة لتعريف الأنشطة، راجع مقالة التدفقات. يوفر هذا المقطع قائمة الخصائص المعتمدة من قبل مصدر Avro ومتلقي.

Avro كمصدر

يتم دعم الخصائص التالية في جزء نسخ النشاط *Source*.

الخاصية الوصف مطلوب
النوع يجب تعيين خاصية نوع مصدر نشاط النسخ إلى AvroSource. ‏‏نعم‬
إعدادات المخزن lمجموعة من الخصائص حول كيفية قراءة البيانات من مخزن بيانات. يحتوي كل موصل يستند إلى ملف إعدادات القراءة المدعومة الخاصة به ضمن storeSettings. راجع التفاصيل في مقالة الموصل -> قسم خصائص نسخ النشاط. لا

Avro كمتلقي

الخصائص التالية مدعومة في نشاط النسخ * lمتلقي * القسم.

الخاصية الوصف مطلوب
النوع يجب تعيين خاصية نوع مصدر نشاط النسخ إلى AvroSink. ‏‏نعم‬
إعدادات التنسيقات مجموعة من الخصائص. راجع جدول إعدادات كتابة Avro أدناه. لا
إعدادات المخزن مجموعة من الخصائص حول كيفية كتابة البيانات إلى مخزن بيانات. يحتوي كل موصل يستند إلى ملف إعدادات الكتابة المعتمدة الخاصة به ضمن storeSettings. راجع التفاصيل في مقالة الموصل -> قسم خصائص نسخ النشاط. لا

إعدادات كتابة Avro المعتمدة الواردة ضمن formatSettings:

الخاصية الوصف مطلوب
النوع يجب تعيين نوع formatSettings إلى AvroWriteSettings. ‏‏نعم‬
maxRowsPerFile عند كتابة البيانات في مجلد، يمكنك اختيار الكتابة إلى ملفات متعددة وتحديد الصفوف القصوى لكل ملف. لا
fileNamePrefix قابل للتطبيق عند تكوين maxRowsPerFile.
حدد بادئة اسم الملف عند كتابة البيانات إلى ملفات متعددة، مما أدى إلى هذا النمط: <fileNamePrefix>_00000.<fileExtension>. إذا لم يتم تحديد، سيتم إنشاء بادئة اسم الملف تلقائياً. لا تنطبق هذه الخاصية عندما يكون المصدر مخزن مستند إلى ملف أو مخزن بيانات تمكين خيار القسم.
لا

تعيين خصائص تدفق البيانات

في تخطيط تدفقات البيانات، يمكنك القراءة والكتابة إلى تنسيق avro في مخازن البيانات التالية: Azure Blob Storage، Azure Data Lake Storage Gen1، Azure Data Lake Storage Gen2 وSFTP، ويمكنك قراءة تنسيق avro في Amazon S3.

خصائص المصدر

يسرد الجدول أدناه الخصائص المعتمدة من قبل مصدر avro. يمكنك تحرير هذه الخصائص في علامة التبويب "Source options".

الاسم ‏‏الوصف مطلوب القيم المسموح بها خاصية البرنامج النصي لتدفق البيانات
مسارات محرف البدل ستتم معالجة جميع الملفات المطابقة لمسار محرف البدل. يتجاوز المجلد ومسار الملف المحددين في مجموعة البيانات. no سلسلة[] wildcardPaths
مسار جذر التقسيم بالنسبة لبيانات الملف المقسمة، يمكنك إدخال مسار جذر القسم لقراءة المجلدات المقسمة كأعمدة no السلسلة‬ partitionRootPath
قائمة الملفات ما إذا كان المصدر يشير إلى ملف نصي يسرد الملفات المراد معالجتها no true أو false قائمة الملفات
عمود لتخزين اسم الملف إنشاء عمود جديد باسم الملف المصدر ومساره no السلسلة‬ rowUrlColumn
بعد الانتهاء احذف أو انقل الملفات بعد المعالجة. مسار الملف يبدأ من جذر الحاوية no حذف: true أو false
نقل: ['<from>', '<to>']
إزالة الملفات
نقل الملفات
التصفية حسب آخر تعديل اختيار تصفية الملفات استناداً إلى آخر مرة تم تبديلها no الطابع الزمني تم التعديل بعد ذلك
modifiedBefore
السماح بعدم العثور على أي ملفات إذا كان هذا صحيحاً، فلن يتم طرح خطأ إذا لم يتم العثور على ملفات no true أو false ignoreNoFilesFound

خصائص المتلقّي

يسرد الجدول أدناه الخصائص المعتمدة بواسطة avro sink. يمكنك تحرير هذه الخصائص في علامة التبويب "Settings".

الاسم ‏‏الوصف مطلوب القيم المسموح بها خاصية البرنامج النصي لتدفق البيانات
مسح المجلد إذا تم مسح المجلد الوجهة قبل الكتابة no true أو false اقتطاع
خيار اسم الملف تنسيق تسمية البيانات المكتوبة. بشكل افتراضي، ملف واحد لكل قسم بالتنسيق part-#####-tid-<guid> no النمط: سلسلة
لكل قسم: سلسلة[]
كبيانات في العمود: سلسلة
الإخراج إلى ملف واحد: ['<fileName>']
filePattern
partitionFileNames
rowUrlColumn
partitionFileNames
اقتبس الكل إحاطة جميع القيم في عروض الأسعار no true أو false quoteAll

دعم نوع البيانات

Copy activity

لا يتم اعتماد أنواع البيانات المعقدة Avro (السجلات وقوائم التعداد الصفائف والخرائط والاتحادات والثابتة) في نشاط نسخ.

تدفقات البيانات

عند العمل مع ملفات Avro في تدفق البيانات، يمكنك قراءة وكتابة أنواع البيانات المعقدة، ولكن تأكد من مسح المخطط الفعلي من مجموعة البيانات أولاً. في تدفق البيانات، يمكنك تعيين الإسقاط المنطقي الخاص بك واشتقاق الأعمدة التي هي هياكل معقدة، ثم تعيين تلك الحقول تلقائياً إلى ملف Avro.