Tutorial: Melakukan pemasukan pengurai CSV

Penyerapan pengurai nilai yang dipisahkan koma (CSV) menyediakan kemampuan untuk menyerap file CSV ke dalam instans Azure Data Manager for Energy.

Dalam tutorial ini, Anda mempelajari cara:

  • Masukkan file CSV sampel data wellbore ke dalam instans Azure Data Manager for Energy dengan menggunakan cURL.
  • Cari rekaman metadata penyimpanan yang dibuat selama penyerapan CSV dengan menggunakan cURL.

Prasyarat

Mendapatkan detail untuk instans Azure Data Manager for Energy

  • Untuk tutorial ini, Anda memerlukan parameter berikut:
Pengaturan Nilai yang akan digunakan Contoh Tempat menemukan nilai ini
DNS URI (Uniform Resource Identifier) <instance>.energy.azure.com Temukan nilai ini di halaman gambaran umum instans Azure Data Manager for Energy.
data-partition-id Partisi data <data-partition-id> Temukan nilai ini di bagian Partisi Data dalam instans Azure Data Manager for Energy.
access_token Nilai token akses 0.ATcA01-XWHdJ0ES-qDevC6r........... Ikuti Cara menghasilkan token autentikasi untuk membuat token akses dan menyimpannya.

Ikuti panduan Kelola pengguna untuk menambahkan hak yang sesuai bagi pengguna yang menjalankan tutorial ini.

Atur lingkungan Anda

Pastikan Anda telah cURL menginstal pada sistem Anda. Anda akan menggunakannya untuk melakukan panggilan API.

Memasukkan data lubang bor dengan menggunakan cURL

Untuk mengimpor sampel file CSV data wellbore ke dalam instans Azure Data Manager for Energy, selesaikan langkah-langkah berikut: Ganti tempat penampung (<DNS>, <access_token>, dll.) dengan nilai yang sesuai.

1. Buat Skema

Jalankan perintah berikut cURL untuk membuat skema:

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"
                   }
               }
           }
       }'

Tanggapan Contoh:

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

Simpan id dari respons untuk digunakan dalam langkah berikutnya.

Jalankan perintah berikut cURL untuk membuat tag hukum:

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"
           }
       }'

Tanggapan Contoh:

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

3. Dapatkan URL yang Ditandatangani untuk Mengunggah File CSV

Jalankan perintah berikut cURL untuk mendapatkan URL yang ditandatangani:

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

Tanggapan Contoh:

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

Simpan SignedURL dan FileSource dari respons untuk digunakan dalam langkah berikutnya.

4. Unggah File CSV

Unduh sampel Wellbore.csv ke komputer lokal Anda. Kemudian, jalankan perintah berikut cURL untuk mengunggah file:

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

Tanggapan Contoh:

{
  "status": "Success"
}

5. Unggah Metadata CSV File

Jalankan perintah berikut cURL untuk mengunggah metadata untuk file 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>"
                   }
               }
           }
       }'

Tanggapan Contoh:

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

Simpan id id, yang merupakan id file yang diunggah, dari respons untuk digunakan pada langkah berikutnya.

6. Memulai Alur Kerja Pemrosesan Pengurai CSV

Jalankan perintah berikut cURL untuk memicu alur kerja penyerapan:

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>"
           }
       }'

Tanggapan Contoh:

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

Simpan runId dari respons untuk digunakan di langkah berikutnya.

7. Periksa status alur kerja dan tunggu penyelesaiannya.

Jalankan perintah berikut cURL untuk memeriksa status eksekusi alur kerja:

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>"      

Tanggapan Contoh:

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

Terus periksa setiap beberapa detik, hingga respons menunjukkan keberhasilan penyelesaian.

8. Cari Rekaman CSV yang Dimasukkan

Jalankan perintah berikut cURL untuk mencari rekaman yang diserap:

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"
       }'

Tanggapan Contoh:

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

Anda akan dapat melihat rekaman di hasil pencarian.

Langkah berikutnya

Melanjutkan ke tutorial berikutnya: