Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Разбор данных с использованием файлов CSV позволяет загружать CSV-файлы в экземпляр системы Azure Data Manager для энергетики.
В этом руководстве описано, как:
- Загрузите тестовый CSV-файл данных скважины в экземпляр Azure Data Manager для энергетики с помощью
cURL.- Выполните поиск записей метаданных хранилища, созданных во время приема CSV-файла с помощью
cURL.
Предпосылки
- подписка Azure
- Экземпляр Azure Data Manager для энергетики , созданный в подписке Azure
- Средство командной строки cURL, установленное на компьютере
- Создайте токен доступа учетной записи службы для вызова API-интерфейсов Seismic. Узнайте, как создать токен проверки подлинности.
Узнайте подробности об экземпляре Azure Data Manager для энергетики
- Для работы с этим руководством вам потребуются следующие параметры:
| Параметр | Значение для использования | Пример | Где найти это значение |
|---|---|---|---|
DNS |
УРИ | <instance>.energy.azure.com |
Найдите это значение на странице обзора экземпляра Azure Data Manager для энергетики. |
data-partition-id |
Секции данных | <data-partition-id> |
Найдите это значение в разделе "Секции данных" в экземпляре Azure Data Manager для энергетики. |
access_token |
Значение токена доступа | 0.ATcA01-XWHdJ0ES-qDevC6r........... |
Следуйте инструкциям по созданию маркера проверки подлинности , чтобы создать маркер доступа и сохранить его. |
Следуйте руководству по управлению пользователями, чтобы добавить соответствующие права для пользователя, выполняющего это руководство.
Настройка среды
Убедитесь, что вы cURL установили в системе. Вы будете использовать его для вызова API.
Загрузка данных скважины с помощью cURL
Чтобы загрузить образец CSV-файла данных в экземпляр Azure Data Manager для Energy, выполните следующие действия: замените заполнители (<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 из ответа для использования в последующих шагах.
2. Создание юридического тега
Выполните следующую 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"
}
]
}
Вы должны видеть записи в результатах поиска.
Следующий шаг
Перейдите к следующему уроку: