البرنامج التعليمي: تنفيذ استيعاب محلل CSV

يوفر استيعاب محلل القيم المفصولة بفاصلة (CSV) القدرة على استيعاب ملفات CSV في Azure Data Manager لمثيل الطاقة.

في هذا البرنامج التعليمي، تتعلم كيفية:

  • استيعاب عينة ملف CSV للبيانات في Azure Data Manager لمثيل الطاقة باستخدام cURL.
  • ابحث عن سجلات بيانات تعريف التخزين التي تم إنشاؤها أثناء استيعاب CSV باستخدام cURL.

المتطلبات الأساسية

الحصول على تفاصيل Azure Data Manager لمثيل الطاقة

  • لهذا البرنامج التعليمي، تحتاج إلى المعلمات التالية:
المعلمة القيمة المراد استخدامها مثال مكان العثور على هذه القيمة
DNS URI <instance>.energy.azure.com ابحث عن هذه القيمة في صفحة النظرة العامة لمثيل Azure Data Manager for Energy.
data-partition-id أقسام البيانات <data-partition-id> ابحث عن هذه القيمة في قسم أقسام البيانات داخل Azure Data Manager لمثيل الطاقة.
access_token قيمة الرمز المميز للوصول 0.ATcA01-XWHdJ0ES-qDevC6r........... اتبع كيفية إنشاء رمز المصادقة لإنشاء رمز مميز للوصول وحفظه.

اتبع دليل إدارة المستخدمين لإضافة الاستحقاقات المناسبة للمستخدم الذي يقوم بتشغيل هذا البرنامج التعليمي.

إعداد بيئتك

cURL تأكد من تثبيتك على النظام الخاص بك. ستستخدمه لإجراء استدعاءات واجهة برمجة التطبيقات.

استيعاب البيانات بشكل جيد باستخدام cURL

لاستيعاب نموذج ملف CSV للبيانات في Azure Data Manager لمثيل الطاقة، أكمل الخطوات التالية: استبدال العناصر النائبة (<DNS>، <access_token>، وما إلى ذلك) بالقيم المناسبة.

1. إنشاء مخطط

قم بتشغيل الأمر التالي cURL لإنشاء مخطط:

curl -X POST "https://<DNS>/api/schema-service/v1/schema" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -H "data-partition-id: <data-partition-id>" \
     -d '{
           "schemaInfo": {
               "schemaIdentity": {
                   "authority": "<data-partition-id>",
                   "source": "shapeFiletest",
                   "entityType": "testEntity",
                   "schemaVersionPatch": 1,
                   "schemaVersionMinor": 0,
                   "schemaVersionMajor": 0
               },
               "status": "DEVELOPMENT"
           },
           "schema": {
               "$schema": "http://json-schema.org/draft-07/schema#",
               "title": "Wellbore",
               "type": "object",
               "properties": {
                   "UWI": {
                       "type": "string",
                       "description": "Unique Wellbore Identifier"
                   }
               }
           }
       }'

نموذج الاستجابة:

{
  "id": "schema-12345",
  "status": "DEVELOPMENT"
}

id احفظ من الاستجابة لاستخدامها في الخطوات اللاحقة.

قم بتشغيل الأمر التالي cURL لإنشاء علامة قانونية:

curl -X POST "https://<DNS>/api/legal/v1/legaltags" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -H "data-partition-id: <data-partition-id>" \
     -d '{
           "name": "LegalTagName",
           "description": "Legal Tag added for Well",
           "properties": {
               "contractId": "123456",
               "countryOfOrigin": ["US", "CA"],
               "dataType": "Third Party Data",
               "exportClassification": "EAR99",
               "originator": "Schlumberger",
               "personalData": "No Personal Data",
               "securityClassification": "Private",
               "expirationDate": "2025-12-25"
           }
       }'

نموذج الاستجابة:

{
  "name": "LegalTagName",
  "status": "Created"
}

3. الحصول على عنوان URL موقع لتحميل ملف CSV

قم بتشغيل الأمر التالي cURL للحصول على عنوان URL موقع:

curl -X GET "https://<DNS>/api/file/v2/files/uploadURL" \
     -H "Authorization: Bearer <access_token>" \
     -H "data-partition-id: <data-partition-id>"

نموذج الاستجابة:

{
  "SignedURL": "https://storageaccount.blob.core.windows.net/container/file.csv?sv=...",
  "FileSource": "file-source-12345"
}

SignedURL احفظ و FileSource من الاستجابة لاستخدامها في الخطوات التالية.

4. تحميل ملف CSV

قم بتنزيل عينة Wellbore.csv إلى جهازك المحلي. ثم قم بتشغيل الأمر التالي cURL لتحميل الملف:

curl -X PUT -T "Wellbore.csv" "<SignedURL>" -H "x-ms-blob-type: BlockBlob"     

نموذج الاستجابة:

{
  "status": "Success"
}

5. تحميل بيانات تعريف ملف CSV

قم بتشغيل الأمر التالي cURL لتحميل بيانات التعريف لملف CSV:

curl -X POST "https://<DNS>/api/file/v2/files/metadata" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -H "data-partition-id: <data-partition-id>" \
     -d '{
           "kind": "osdu:wks:dataset--File.Generic:1.0.0",
           "acl": {
               "viewers": ["data.default.viewers@<data-partition-id>.dataservices.energy"],
               "owners": ["data.default.owners@<data-partition-id>.dataservices.energy"]
           },
           "legal": {
               "legaltags": ["<data-partition-id>-LegalTagName"],
               "otherRelevantDataCountries": ["US"],
               "status": "compliant"
           },
           "data": {
               "DatasetProperties": {
                   "FileSourceInfo": {
                       "FileSource": "<FileSource>"
                   }
               }
           }
       }'

نموذج الاستجابة:

{
  "id": "metadata-12345",
  "status": "Created"
}

idاحفظ ، وهو معرف الملف الذي تم تحميله، من الاستجابة للاستخدام في الخطوة التالية.

6. تشغيل سير عمل استيعاب محلل CSV

قم بتشغيل الأمر التالي cURL لتشغيل سير عمل الاستيعاب:

curl -X POST "https://<DNS>/api/workflow/v1/workflow/csv-parser/workflowRun" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -H "data-partition-id: <data-partition-id>" \
     -d '{
           "executionContext": {
               "id": "<uploadedFileId>",
               "dataPartitionId": "<data-partition-id>"
           }
       }'

نموذج الاستجابة:

{
  "runId": "workflow-12345",
  "status": "Running"
}

runId احفظ من الاستجابة لاستخدامها في الخطوة التالية.

7. تحقق من حالة سير العمل وانتظر حتى اكتماله.

قم بتشغيل الأمر التالي cURL للتحقق من حالة تشغيل سير العمل:

curl -X GET "https://<DNS>/api/workflow/v1/workflow/csv-parser/workflowRun/<runId>" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -H "data-partition-id: <data-partition-id>"      

نموذج الاستجابة:

{
  "runId": "workflow-12345",
  "status": "Completed"
}

استمر في التحقق كل بضع ثوان، حتى تشير الاستجابة إلى اكتمال ناجح.

8. البحث عن سجلات CSV التي تم استيعابها

قم بتشغيل الأمر التالي cURL للبحث عن السجلات التي تم استيعابها:

curl -X POST "https://<DNS>/api/search/v2/query" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -H "data-partition-id: <data-partition-id>" \
     -d '{
           "kind": "osdu:wks:dataset--File.Generic:1.0.0"
       }'

نموذج الاستجابة:

{
  "results": [
    {
      "id": "dataset-12345",
      "kind": "osdu:wks:dataset--File.Generic:1.0.0",
      "status": "Available"
    }
  ]
}

يجب أن تكون قادرا على رؤية السجلات في نتائج البحث.

الخطوة التالية

تقدم إلى البرنامج التعليمي الآتي: