Partilhar via


Tutorial: Trabalhar com dados sísmicos usando APIs de DDMS sísmicas

Este tutorial demonstra como utilizar APIs do Seismic Domain Data Management Services (DDMS) com cURL para gerenciar dados sísmicos em uma instância do Azure Data Manager for Energy.

Neste tutorial, você aprenderá a:

  • Registre uma partição de dados para dados sísmicos.
  • Utilize APIs de DDMS sísmicas para armazenar e recuperar dados sísmicos.

Para obter mais informações sobre DDMS, consulte Conceitos de DDMS.

Pré-requisitos

Obtenha os detalhes da instância do Azure Data Manager for Energy

Para continuar, reúna os seguintes detalhes da sua instância do Azure Data Manager for Energy através do portal do Azure:

Parâmetro Descrição Exemplo Onde encontrar este valor
client_id ID da aplicação (cliente) 00001111-aaaa-2222-bbbb-3333cccc4444 Você usa este aplicativo ou ID de cliente ao registrar o aplicativo com a plataforma de identidade da Microsoft. Consulte Registar uma candidatura
client_secret Segredo do cliente _fl****************** Às vezes chamado de senha de aplicativo , um segredo do cliente é um valor de cadeia de caracteres que seu aplicativo pode usar no lugar de um certificado para se identificar. Veja Adicionar um segredo do cliente.
tenant_id ID do diretório (inquilino) 72f988bf-86f1-41af-91ab-xxxxxxxxxxxx Passe o cursor sobre o nome da sua conta no portal do Azure para obter o diretório ou a ID do locatário. Como alternativa, procure e selecione Microsoft Entra ID>, Propriedades> e ID do Locatário no portal do Azure.
base_url URL da instância https://<instance>.energy.azure.com Encontre esse valor na página de visão geral da instância do Azure Data Manager for Energy.
data_partition_id Nome da partição de dados opendes Encontre esse valor na página de visão geral da instância do Azure Data Manager for Energy.
access_token Valor do token de acesso 0.ATcA01-XWHdJ0ES-qDevC6r........... Siga Como gerar um token de autenticação para criar um token de acesso e salvá-lo.

Use APIs de DDMS sísmicas para armazenar e recuperar dados sísmicos

Crie uma tag legal que é adicionada automaticamente ao ambiente Seismic DDMS para conformidade de dados.

API: Configuração>Criar marca legal para 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"
    }
}'

Exemplo de resposta:

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

Para obter mais informações, consulte Gerenciar tags legais.

Verificar o serviço

Execute testes básicos de conexão e status de serviço em sua instância do Azure Data Manager for Energy.

API: Verificação de Serviço>Verificar Estado

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

Exemplo de resposta:

service OK

Inquilino

Crie um locatário em sua instância do Azure Data Manager for Energy.

Observação

Você deve registrar uma partição de dados como locatário antes de usá-la com o DDMS sísmico.

API: Locatário>Registrar um locatário sísmico-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"
}'

Exemplo de resposta:

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

Criar um subprojeto

Crie um subprojeto em sua instância do Azure Data Manager for Energy.

API: Subprojeto>Criar um novo subprojeto

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

Exemplo de resposta:

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

Registrar um conjunto de dados

Registre um conjunto de dados em sua instância do Azure Data Manager for Energy.

API: Dataset>Registrar um novo conjunto de dados

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

Exemplo de resposta:

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

Registar aplicações

Registre aplicativos em sua instância do Azure Data Manager for Energy.

API: Aplicativos>Registrar um novo aplicativo

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

Exemplo de resposta:

Status Code: 200

Próximo passo

Como uma experiência de usuário alternativa ao Postman, você pode usar a ferramenta Python de linha de comando sdutil para interagir diretamente com o Seismic Store. Use o seguinte tutorial para começar:

Use sdutil para carregar dados no Repositório Sísmico Para obter mais informações sobre as APIs REST sísmicas no Azure Data Manager for Energy, consulte as especificações OpenAPI disponíveis no repositório GitHub adme-samples .