قم بنسخ البيانات من مصدر OData باستخدام Azure Data Factory أو Synapse Analytics
ينطبق على: Azure Data Factory Azure Synapse Analytics
تلميح
جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!
توضح هذه المقالة كيفية استخدام Copy Activity في Azure Data Factory أو البنيات الأساسية لـ Synapse Analytics لنسخ البيانات من مصدر OData. تعتمد هذه المقالة على مقالة نشاط النسخ التي تقدم نظرة عامة على نشاط النسخ.
القدرات المدعومة
يعتمد موصل OData في الإمكانيات التالية:
القدرات المدعومة | IR |
---|---|
نشاط النسخ (مصدر/-) | (1) (2) |
نشاط البحث | (1) (2) |
① وقت تشغيل تكامل Azure ② وقت تشغيل التكامل المستضاف ذاتيًا
للحصول على قائمة مخازن البيانات المعتمدة كمصادر ومواضع تلقي، راجع مخازن البيانات المعتمدة.
وبوجه خاص، يدعم موصل OData هذا:
- OData الإصدار 2.0 و3.0 و4.0.
- نسخ البيانات باستخدام إحدى المصادقات التالية: مجهول وأساسي وWindows وMicrosoft Entra كيان الخدمة.
المتطلبات الأساسية
إذا كان مخزن البيانات الخاص بك موجوداً داخل شبكة محلية، أو شبكة 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
قم بإنشاء خدمة مرتبطة إلى متجر OData باستخدام واجهة المستخدم
استخدم الخطوات التالية لإنشاء خدمة مرتبطة بمتجر OData في واجهة مستخدم مدخل Azure.
استعرض للوصول إلى علامة تبويب "Manage" في Azure Data Factory أو مساحة عمل Synapse وحدد "Linked Services"، ثم حدد "New":
قم بالالبحث عن OData وحدد موصل OData.
قم بتكوين تفاصيل الخدمة، واختبر الاتصال، وأنشئ الخدمة المرتبطة الجديدة.
تفاصيل تكوين الموصل
توفر الأقسام التالية تفاصيل حول الخصائص التي يمكنك إستخدامها لتحديد كيانات Data Factory الخاصة بموصل OData.
خصائص الخدمة المرتبطة
يتم اعتماد الخصائص التالية لخدمة مرتبطة خاصة بـ OData:
الخاصية | الوصف | مطلوب |
---|---|---|
النوع | يجب تعيين خاصية type إلى OData. | نعم |
عنوان URL | URL الجذر لخدمة OData. | نعم |
نوع المصادقة | نوع المصادقة المستخدمة للاتصال بمصدر OData. القيم المسموح بها هي Anonymous، Basic و، Windows، و AadServicePrincipal. لا يتم اعتماد OAuth المستندة إلى المستخدم. يمكنك أيضاً تكوين رءوس المصادقة في الخاصية authHeader . |
نعم |
authHeaders | رؤوس طلب HTTP إضافية للمصادقة. على سبيل المثال، لاستخدام مصادقة مفتاح API، يمكنك تحديد نوع المصادقة ك "Anonymous" وتحديد مفتاح API في العنوان. |
لا |
userName | تحديد اسم المستخدم إذا كنت تستخدم المصادقة الأساسية أو Windows. | لا |
كلمة المرور | حدد كلمة المرور لحساب المستخدم الذي حددته ل userName. وضع علامة على هذا الحقل كنوع SecureString لتخزينه بشكل آمن. يمكنك أيضًا الإشارة إلى سر مخزن في Azure Key Vault. | لا |
servicePrincipalId | حدد معرف عميل تطبيق Microsoft Entra. | لا |
aadServicePrincipalCredentialType | حدد نوع بيانات الاعتماد لاستخدامه للمصادقة الأساسية للخدمة. القيم المسموح بها هي ServicePrincipalKey و ServicePrincipalCert . |
لا |
servicePrincipalKey | حدد مفتاح تطبيق Microsoft Entra. ضَع علامة على هذا الحقل باعتباره SecureString لتخزينه بشكل آمن، أو أشر إلى أحد بيانات سرية مخزنة في Azure Key Vault. | لا |
servicePrincipalEmbeddedCert | حدد الشهادة المشفرة base64 للتطبيق الخاص بك المسجلة في معرف Microsoft Entra، وتأكد من أن نوع محتوى الشهادة هو PKCS #12. ضَع علامة على هذا الحقل باعتباره SecureString لتخزينه بشكل آمن، أو أشر إلى أحد بيانات سرية مخزنة في Azure Key Vault. | لا |
servicePrincipalEmbeddedCertPassword | حدد كلمة مرور الشهادة إذا تم تأمين الشهادة بكلمة مرور. ضَع علامة على هذا الحقل باعتباره SecureString لتخزينه بشكل آمن، أو أشر إلى أحد بيانات سرية مخزنة في Azure Key Vault. | لا |
tenant | حدد معلومات المستأجر (اسم المجال أو معرف المستأجر) التي يوجد داخلها التطبيق. يمكنك إستردادها عن طريق تحريك الماوس في الركن العلوي الأيمن من بوابة Azure. | لا |
aadResourceId | حدد مورد Microsoft Entra الذي تطلبه للتخويل. | لا |
azureCloudType | للمصادقة الأساسية للخدمة، حدد نوع بيئة سحابة Azure التي تم تسجيل تطبيق Microsoft Entra إليها. القيم المسموح بها هي AzurePublic، وAzureChina، وAzureUsGovernment، وAzureGermany. يتم استخدام بيئة السحابة للخدمة بشكل افتراضي. |
لا |
connectVia | وقت تشغيل التكامل المطلوب استخدامه للاتصال بمخزن البيانات. تعرف على المزيد من قسم المتطلبات الأساسية. إذا لم يتم التحديد، يتم استخدام وقت تشغيل تكامل Azure الافتراضي. | لا |
مثال 1: استخدام مصادقة Anonymous
{
"name": "ODataLinkedService",
"properties": {
"type": "OData",
"typeProperties": {
"url": "https://services.odata.org/OData/OData.svc",
"authenticationType": "Anonymous"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
مثال 2: استخدام المصادقة Basic
{
"name": "ODataLinkedService",
"properties": {
"type": "OData",
"typeProperties": {
"url": "<endpoint of OData source>",
"authenticationType": "Basic",
"userName": "<user name>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
مثال 3: استخدام مصادقة Windows
{
"name": "ODataLinkedService",
"properties": {
"type": "OData",
"typeProperties": {
"url": "<endpoint of OData source>",
"authenticationType": "Windows",
"userName": "<domain>\\<user>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
مثال 4: استخدام مصادقة مفتاح الخدمة الأساسي
{
"name": "ODataLinkedService",
"properties": {
"type": "OData",
"typeProperties": {
"url": "<endpoint of OData source>",
"authenticationType": "AadServicePrincipal",
"servicePrincipalId": "<service principal id>",
"aadServicePrincipalCredentialType": "ServicePrincipalKey",
"servicePrincipalKey": {
"type": "SecureString",
"value": "<service principal key>"
},
"tenant": "<tenant info, e.g. microsoft.onmicrosoft.com>",
"aadResourceId": "<AAD resource URL>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
مثال 5: استخدام مصادقة شهادة الخدمة الرئيسية
{
"name": "ODataLinkedService",
"properties": {
"type": "OData",
"typeProperties": {
"url": "<endpoint of OData source>",
"authenticationType": "AadServicePrincipal",
"servicePrincipalId": "<service principal id>",
"aadServicePrincipalCredentialType": "ServicePrincipalCert",
"servicePrincipalEmbeddedCert": {
"type": "SecureString",
"value": "<base64 encoded string of (.pfx) certificate data>"
},
"servicePrincipalEmbeddedCertPassword": {
"type": "SecureString",
"value": "<password of your certificate>"
},
"tenant": "<tenant info, e.g. microsoft.onmicrosoft.com>",
"aadResourceId": "<AAD resource e.g. https://tenant.sharepoint.com>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
مثال 6: استخدام مصادقة مفتاح API
{
"name": "ODataLinkedService",
"properties": {
"type": "OData",
"typeProperties": {
"url": "<endpoint of OData source>",
"authenticationType": "Anonymous",
"authHeader": {
"APIKey": {
"type": "SecureString",
"value": "<API key>"
}
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
خصائص مجموعة البيانات
يوفر هذا القسم قائمة بالخصائص التي تدعمها مجموعة بيانات OData.
للحصول على قائمة كاملة بالأقسام والخصائص المتاحة لتعريف مجموعات البيانات، راجع مجموعات البيانات والخدمات المرتبطة.
لنسخ البيانات من OData، قم بتعيين خاصية type لمجموعة البيانات إلى ODataResource. تدعم الخصائص التالية:
الخاصية | الوصف | مطلوب |
---|---|---|
النوع | يجب تعيين خاصية type لمجموعة البيانات إلى ODataResource. | نعم |
path | المسار إلى مورد OData. | نعم |
مثال
{
"name": "ODataDataset",
"properties":
{
"type": "ODataResource",
"schema": [],
"linkedServiceName": {
"referenceName": "<OData linked service name>",
"type": "LinkedServiceReference"
},
"typeProperties":
{
"path": "Products"
}
}
}
خصائص نشاط النسخ
يوفر هذا القسم قائمة بالخصائص التي يدعمها مصدر OData.
للحصول على قائمة كاملة بالأقسام والخصائص المتوفرة لتعريف الأنشطة، راجع المسارات.
OData كمصدر
لنسخ البيانات من OData، يتم اعتماد الخصائص التالية في قسم مصدرCopy Activity:
الخاصية | الوصف | مطلوب |
---|---|---|
النوع | يجب تعيين خاصية type لمصدر Copy Activity إلى ODataSource. | نعم |
استعلام | خيارات استعلام OData لتصفية البيانات. مثال:"$select=Name,Description&$top=5" .ملاحظة:رابط OData نسخ البيانات من URL المدمج: [URL specified in linked service]/[path specified in dataset]?[query specified in copy activity source] . لمزيد من المعلومات، راجع مكونات عنوان URL OData. |
لا |
httpRequestTimeout | المهلة (قيمة TimeSpan) لطلب HTTP للحصول على استجابة. هذه القيمة هي المهلة للحصول على استجابة، وليست المهلة لقراءة بيانات الاستجابة. إذا لم يتم التحديد، فإن القيمة الافتراضية هي 00:30:00 (30 دقيقة). | لا |
مثال
"activities":[
{
"name": "CopyFromOData",
"type": "Copy",
"inputs": [
{
"referenceName": "<OData input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "ODataSource",
"query": "$select=Name,Description&$top=5"
},
"sink": {
"type": "<sink type>"
}
}
}
]
إذا كنت تستخدم المصدر المصنف حسب النوع RelationalSource
، فلا يزال هذا المصدر مدعوماً كما هو، بينما نقترح عليك استخدام المصدر الجديد للمضي قدماً.
تعيين نوع البيانات ل OData
عند نسخ البيانات من OData، يتم استخدام التعيينات التالية بين أنواع بيانات OData وأنواع البيانات المؤقتة المستخدمة داخل الخدمة داخليًا. لمعرفة كيفية تعيين "Copy Activity" للمخطط المصدر ونوع البيانات إلى المتلقي، راجع المخطط وتعيينات نوع البيانات.
نوع بيانات OData | نوع بيانات الخدمة المؤقتة |
---|---|
Edm.Binary | بايت [] |
Edm.Boolean | مجموعة |
Edm.Byte | بايت [] |
Edm.DateTime | DateTime |
Edm.Decimal | عدد عشري |
Edm.Double | مزدوج |
Edm.Single | فردي |
Edm.Guid | Guid |
Edm.Int16 | Int16 |
Edm.Int32 | Int32 |
Edm.Int64 | Int64 |
Edm.SByte | Int16 |
Edm.String | السلسلة |
Edm.Time | TimeSpan |
Edm.DateTimeOffset | DateTimeOffset |
إشعار
أنواع البيانات المعقدة OData (مثل Object) غير معتمدة.
قم بنسخ البيانات من Project Online
يتطلب Project Online OAuth المستند إلى المستخدم، وهو غير معتمد من قبل Azure Data Factory. لنسخ البيانات من Project Online، يمكنك استخدام موصل OData ورمز وصول تم الحصول عليه من أدوات مثل Postman.
تنبيه
تنتهي صلاحية الرمز المميز للوصول في غضون ساعة واحدة بشكل افتراضي، تحتاج إلى الحصول على رمز وصول مميز جديد عند انتهاء صلاحيته.
استخدم Postman للحصول على رمز الوصول:
إشعار
Postman هو مستخدم من قبل بعض المطورين لاختبار واجهات برمجة تطبيقات الويب البعيدة. ومع ذلك، هناك بعض مخاطر الأمان والخصوصية المرتبطة باستخدامه. لا تدعم هذه المقالة استخدام Postman لبيئات الإنتاج. يرجى استخدامه على مسؤوليتك الخاصة.
- انتقل إلى علامة تبويب "Authorization" على موقع Postman.
- في خانة Type ، حدد OAuth 2.0، وفي خانة Add authorization data to ، حدد طلب Headers.
- املأ المعلومات التالية في صفحة تكوين رمز مميز جديد للحصول على رمز مميز جديد للوصول:
- Grant type: حدد Authorization Code.
- Callback URL: Enter
https://www.localhost.com/
. - Auth URL: Enter
https://login.microsoftonline.com/common/oauth2/authorize?resource=https://<your tenant name>.sharepoint.com
. استبدل<your tenant name>
باسم المستأجر الخاص بك. - الوصول إلى عنوان URL المميز: Enter
https://login.microsoftonline.com/common/oauth2/token
. - معرف العميل: أدخل معرف كيان خدمة Microsoft Entra.
- سر العميل: أدخل سر الخدمة الرئيسية.
- مصادقة العميل: حدد إرسال كرأس أساسي ل Auth.
- سيطلب منك تسجيل الدخول باستخدام اسم المستخدم وكلمة المرور.
- بمجرد الحصول على رمز الوصول الخاص بك، يرجى نسخ وحفظه للخطوة التالية.
إنشاء خدمة OData المرتبطة:
- عنوان URL للخدمة: أدخل
https://<your tenant name>.sharepoint.com/sites/pwa/_api/Projectdata
. استبدل<your tenant name>
باسم المستأجر الخاص بك. - نوع المصادقة: حدد Anonymous.
- رؤوس المصادقة:
- اسم الخاصية: اختر التخويل.
- ضمن VALUE، أدخل
Bearer <access token from step 1>
.
- قم باختبار الخدمة المرتبطة.
- عنوان URL للخدمة: أدخل
قم بإنشاء مجموعة بيانات OData:
- قم بإنشاء مجموعة البيانات مع خدمة OData المرتبطة التي تم إنشاؤها في الخطوة رقم 2.
- معاينة البيانات.
بحث عن خصائص النشاط
لمعرفة تفاصيل حول الخصائص، تحقق من نشاط البحث.
المحتوى ذو الصلة
للحصول على قائمة مخازن البيانات المعتمدة كمصادر ومواضع تلقٍّ، راجع مخازن البيانات المعتمدة والتنسيقات.