Поделиться через


Руководство: Работа с сейсмическими данными с помощью API DDMS для сейсмических данных

В этом руководстве показано, как использовать API службы управления доменными данными (DDMS) с помощью CURL для управления сейсмическими данными в экземпляре Azure Data Manager для энергетики.

В этом руководстве описано, как:

  • Зарегистрируйте секцию данных для сейсмических данных.
  • Используйте API-интерфейсы сейсмических DDMS для хранения и получения сейсмических данных.

Для получения дополнительной информации о DDMS см. концепции DDMS.

Предпосылки

Получите сведения об экземпляре «Azure Data Manager for Energy» для энергетики.

Чтобы продолжить, соберите следующие сведения из экземпляра Azure Data Manager для энергетики с помощью портала Azure:

Параметр Описание Пример Где найти это значение
client_id Идентификатор приложения (клиента) 00001111-aaaa-2222-bbbb-3333cccc4444 Вы используете это приложение и идентификатор клиента при регистрации приложения на платформе идентификации Майкрософт. См . статью "Регистрация приложения"
client_secret Секрет клиента _fl****************** Иногда называется паролем приложения, секрет клиента — это строковое значение, которое приложение может использовать вместо сертификата для идентификации. См. раздел Добавление секрета клиента.
tenant_id Идентификатор каталога (арендатора) 72f988bf-86f1-41af-91ab-xxxxxxxxxxxx Наведите указатель мыши на имя вашей учетной записи в портале Azure, чтобы получить идентификатор каталога или арендатора. Кроме того, найдите и выберите Microsoft Entra ID>Свойства>Идентификатор клиента в портале Azure.
base_url URL экземпляра https://<instance>.energy.azure.com Найдите это значение на странице обзора экземпляра Azure Data Manager для энергетики.
data_partition_id Имя секции данных opendes Найдите это значение на обзорной странице экземпляра Azure Data Manager для энергетики.
access_token Значение токена доступа 0.ATcA01-XWHdJ0ES-qDevC6r........... Следуйте инструкциям по созданию маркера проверки подлинности , чтобы создать маркер доступа и сохранить его.

Используйте API-интерфейсы Seismic DDMS для хранения и извлечения сейсмических данных

Создайте правовой тег, который автоматически добавляется в среду Seismic DDMS для соблюдения требований к данным.

API: настройка>создайте юридический тег для SDMS

curl --request POST \
  --url https://{base_url}/api/legal/v1/legaltags \
  --header 'Authorization: Bearer {access_token}' \
  --header 'Content-Type: application/json' \
  --header 'Data-Partition-Id:  {data_partition_id}' \
  --data '{
    "name": "{tag_name}",
    "description": "Legal Tag added for Seismic",
    "properties": {
        "countryOfOrigin": [
            "US"
        ],
        "contractId": "No Contract Related",
        "expirationDate": "2099-01-01",
        "dataType": "Public Domain Data",
        "originator": "OSDU",
        "securityClassification": "Public",
        "exportClassification": "EAR99",
        "personalData": "No Personal Data"
    }
}'

Пример ответа:

{
	"name": "opendes-Seismic-Legal-Tag-Test999588567444",
	"description": "Legal Tag added for Seismic",
	"properties": {
		"countryOfOrigin": [
			"US"
		],
		"contractId": "No Contract Related",
		"expirationDate": "2099-01-01",
		"originator": "OSDU",
		"dataType": "Public Domain Data",
		"securityClassification": "Public",
		"personalData": "No Personal Data",
		"exportClassification": "EAR99"
	}
}

Дополнительные сведения см. в разделе "Управление юридическими тегами".

Проверьте службу

Выполните базовые тесты подключения к службе и проверки состояния в экземпляре Azure Data Manager для Energy.

API:проверка службы>проверка состояния

curl --request GET \
  --url http://{base_url}/seistore-svc/api/v3/svcstatus \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer {access_token}' \
  --header 'data-partition-id: {data_partition_id}'

Пример ответа:

service OK

Арендатор

Создайте клиент в экземпляре Azure Data Manager для энергетики.

Примечание.

Перед использованием раздела данных с Seismic DDMS необходимо зарегистрировать его в качестве арендатора.

API: Регистрация арендатора>в сейсмическом DMS

curl --request POST \
  --url https://{base_url}/seistore-svc/api/v3/tenant/{data_partition_id} \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access_token}' \
  --header 'Content-Type: application/json' \
  --data '{
    "gcpid": "{data_partition_id}",
    "esd": "{data_partition_id}.dataservices.energy",
    "default_acl": "users.datalake.admins@opendes.dataservices.energy"
}'

Пример ответа:

{
	"name": "opendes",
	"esd": "opendes.dataservices.energy",
	"gcpid": "opendes",
	"default_acls": "users.datalake.admins@opendes.dataservices.energy,users.datalake.ops@opendes.dataservices.energy",
	"Symbol(id)": {
		"partitionKey": "tn-opendes",
		"name": "opendes"
	}
}

Создание подпроекта

Создайте подпроект в экземпляре Azure Data Manager for Energy.

API: Подпроект>Создать новый подпроект

curl --request POST \
  --url https://{base_url}/seistore-svc/api/v3/subproject/tenant/{data_partition_id}/subproject/{sesimic_subproject} \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access_token}' \
  --header 'Content-Type: application/json' \
  --header 'ltag: opendes-Seismic-Legal-Tag-Test999943387766' \
  --data '{
    "admin": "client_id",
    "access_policy": "dataset"
}'

Пример ответа:

{
	"name": "test999384006",
	"tenant": "opendes",
	"ltag": "",
	"acls": {
		"admins": [
			"data.sdms.opendes.test999384006.3a114f91-d79f-489e-b9f0-3a4ac6643924.admin@opendes.dataservices.energy"
		],
		"viewers": [
			"data.sdms.opendes.test999384006.3bbce754-bdfa-4fad-9672-cc9a49231058.viewer@opendes.dataservices.energy"
		]
	},
	"access_policy": "dataset",
	"enforce_key": true,
	"gcs_bucket": "ss-cloud-lr8faf2xnup9yxd",
	"Symbol(id)": {
		"partitionKey": "sp-test999384006",
		"name": "test999384006"
	}
}

Регистрация набора данных

Зарегистрируйте набор данных в экземпляре Azure Data Manager для энергетики.

API: набор данных>Зарегистрировать новый набор данных

curl --request POST \
  --url https://{base_url}/seistore-svc/api/v3/dataset/tenant/{data_partition_id}/subproject/{seismic_subproject}/dataset/{dataset_name} \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access_token}' \
  --header 'Content-Type: application/json' \
  --header 'ltag: {legal_tag}' \
  --data '{
  "admin": "client_id",
  "storage_class": "MULTI_REGIONAL",
  "storage_location": "US",
  "access_policy": "dataset",
  "acls": {
    "admins": [
      "data.default.owners@opendes.dataservices.energy"
    ],
    "viewers": [
      "data.default.viewers@opendes.dataservices.energy"
    ]
  }
}'

Пример ответа:

{
	"name": "test.sgy",
	"tenant": "opendes",
	"subproject": "test999384006",
	"path": "/",
	"ltag": "opendes-Seismic-Legal-Tag-Test999943387766",
	"created_by": "faK96PJHh5W-AzMK_dERdxkBBssUYVuqDjzYJcw9Al0",
	"last_modified_date": "Mon Mar 17 2025 12:43:38 GMT+0000 (Coordinated Universal Time)",
	"created_date": "Mon Mar 17 2025 12:43:38 GMT+0000 (Coordinated Universal Time)",
	"acls": {
		"admins": [
			"data.default.owners@opendes.dataservices.energy"
		],
		"viewers": [
			"data.default.viewers@opendes.dataservices.energy"
		]
	},
	"gcsurl": "ss-cloud-sfibby9ril9i755-915f80ed-4804-448a-bfa5-2e70934a97a2",
	"ctag": "TQsxLjyufohTOFvfopendes;opendes",
	"Symbol(id)": {
		"partitionKey": "ds-opendes-test999384006-3fdd95ea0c79eb59dcb2acc48ed1d1eb057a5f94debacffac4d8e88410c5cb2804d9ba68473ea20d2d91d143b64b755e4627ad87e89530ade1cd9614a8a53545",
		"name": "test.sgy"
	},
	"access_policy": "dataset",
	"sbit": "WSUmTxkL20jQSlKW",
	"sbit_count": 1
}

Регистрация приложений

Зарегистрируйте приложения в экземпляре Azure Data Manager для энергетики.

API: Приложения>Зарегистрируйте новое приложение

curl --request POST \
  --url 'https://{base_url}/seistore-svc/api/v3/app?email={email}&sdpath={sdpath}' \
  --header 'Authorization: Bearer {access_token}'

Пример ответа:

Status Code: 200

Следующий шаг

В качестве альтернативы пользовательскому интерфейсу Postman, вы можете использовать инструмент Python командной строки sdutil для непосредственного взаимодействия с Хранилищем сейсмических данных. Чтобы приступить к работе, используйте следующее руководство.

Использование sdutil для загрузки данных в сейсмическое хранилище Дополнительные сведения об API-интерфейсах REST для сейсмических данных в Azure Data Manager для энергетики см. в спецификациях OpenAPI, доступных в репозитории GitHub adme-samples .