Todos os produtos
Search
Central de documentação

DataWorks:UpdateMetaEntity

Última atualização: Jun 26, 2026

Atualiza uma entidade de metadados. Você pode atualizar entidades personalizadas ou objetos do tipo de tabela estendida, como bancos de dados, tabelas e colunas.

Descrição da operação

Você deve adquirir o DataWorks Professional Edition ou uma edição superior para usar esta operação.

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

Nenhuma autorização necessária para esta operação. Se você encontrar problemas com esta operação, entre em contato com o suporte técnico.

Sintaxe da solicitação

POST  HTTP/1.1

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

Id

string

Sim

O ID da entidade a ser atualizada. O nome da entidade, o tipo de entidade e a relação pai-filho são determinados pelo ID e não podem ser modificados usando esta operação.

custom_entity-customer_api:api_001

Comment

string

Não

O comentário sobre a entidade.

this is a comment

Attributes

object

Não

Os atributos da entidade. Valores complexos devem ser serializados em uma string JSON.

[]

string

Não

The value of the entity attribute.

value

CustomAttributes

object

Não

Os valores de atributos personalizados. Cada chave especifica um atributo personalizado, e seu valor é uma matriz que pode conter no máximo um item. Para excluir um valor de atributo, forneça uma matriz vazia.

[]

array

Não

An array of custom attribute values. Currently, only single-value arrays are supported.

string

Não

The custom attribute value.

张三

Entidades personalizadas

Para entidades personalizadas, defina EntityType como custom_entity-<name>. Você pode atualizar os seguintes itens:

CampoSuportadoDescrição
CommentSimAtualiza o comentário da entidade.
AttributesSimA chave deve ser definida no MetaEntityDef.AttributeDefs correspondente. Fornecer uma chave desconhecida retorna um erro.
CustomAttributesSimA chave deve ser um atributo personalizado que se aplica a este tipo de entidade.

Regras de atributos

ItemDescrição
Semântica de atualizaçãoEsta é uma operação de patch. Apenas as chaves fornecidas na solicitação são atualizadas. Os atributos existentes são mantidos.
Excluir atributoPara excluir um atributo, defina seu valor como null. Isso remove a chave dos attributes da entidade.
Atributo obrigatórioO sistema retorna um erro se você tentar excluir ou limpar um atributo obrigatório.
Atributo ENUMO valor deve ser um dos valores permitidos definidos em AttributeDef.AllowedValues.
Atributo DATEO valor deve ser um carimbo de data/hora em milissegundos.
Atributo ARRAY/JSONO valor deve ser fornecido como uma string JSON porque a API aceita todos os parâmetros como strings.

Exemplo:

{
  "Comment": "Entidade personalizada atualizada",
  "Attributes": {
    "level": "L2",
    "profile": "{\"owner\":\"data_team\"}"
  },
  "CustomAttributes": {
    "biz_owner": ["data_team"]
  }
}
```.

## Objeto de banco de dados do tipo de tabela estendida

Aplica-se a `custom_<name>-database`.

| Chave de Attributes | Suportado | Tipo/formato | Descrição |
| --- | --- | --- | --- |
| `technicalMetadata.location` | Sim | String | Atualiza o local de armazenamento do banco de dados. Isso corresponde ao campo `location` no Elasticsearch. |
| `parentMetaEntityId` | Não | \- | A relação pai-filho não pode ser atualizada. Fornecer esta chave retorna um erro. |
| Outras chaves | Não | \- | Para uma entidade compartilhada, atualizar chaves que não estão na lista de permissões retorna um erro. |.

## Objeto de tabela do tipo de tabela estendida

Aplica-se a `custom_<name>-table`.

| Chave de Attributes | Suportado | Tipo/formato | Descrição |
| --- | --- | --- | --- |
| `tableType` | Sim | String | Atualiza o tipo de tabela. |
| `partitionKeys` | Sim | String de matriz JSON ou String | Se você fornecer uma matriz, o sistema une os itens com vírgulas para criar a string final. Por exemplo, `["dt","hh"]` se torna `dt,hh`. |
| `technicalMetadata.owner` | Sim | String | Atualiza o proprietário. |
| `technicalMetadata.location` | Sim | String | Atualiza o local de armazenamento. |
| `technicalMetadata.compressed` | Sim | Booleano | Suporta `true` e `false`. |
| `technicalMetadata.inputFormat` | Sim | String | Atualiza o InputFormat. |
| `technicalMetadata.outputFormat` | Sim | String | Atualiza o OutputFormat. |
| `technicalMetadata.serializationLibrary` | Sim | String | Atualiza a classe SerDe. |
| `technicalMetadata.parameters` | Sim | String de objeto JSON ou String | Se você fornecer um objeto JSON, o sistema o serializa em uma string e o grava no atributo `parameters`. |
| `parentMetaEntityId` | Não | \- | O banco de dados pai não pode ser atualizado. Fornecer esta chave retorna um erro. |
| `columns` | Não | \- | Você não pode modificar a lista de colunas usando a operação `UpdateMetaEntity`. Em vez disso, atualize cada entidade de coluna individualmente. |
| Outras chaves | Não | \- | Para uma entidade compartilhada, atualizar chaves que não estão na lista de permissões retorna um erro. |

Exemplo:

```json
{
  "Comment": "Descrição da tabela atualizada",
  "Attributes": {
    "tableType": "VIEW",
    "partitionKeys": "[\"dt\"]",
    "technicalMetadata.location": "oss://bucket/ods/order_fact",
    "technicalMetadata.compressed": "true",
    "technicalMetadata.parameters": "{\"retention\":\"30\"}"
  },
  "CustomAttributes": {
    "biz_owner": ["data_team"]
  }
}
```.

## Objeto de coluna do tipo de tabela estendida

Aplica-se a `custom_<name>-column`.

| Chave de Attributes | Suportado | Tipo/formato | Descrição |
| --- | --- | --- | --- |
| `type` | Sim | String | Atualiza o tipo de coluna. |
| `position` | Sim | Inteiro | Atualiza a posição da coluna. |
| `partitionKey` | Sim | Booleano | Define se a coluna é uma chave de partição. Isso corresponde ao campo `isPartitionKey` no Elasticsearch. |
| `primaryKey` | Sim | Booleano | Define se a coluna é uma chave primária. Isso corresponde ao campo `isPrimaryKey` no Elasticsearch. |
| `foreignKey` | Sim | Booleano | Define se a coluna é uma chave estrangeira. Isso corresponde ao campo `isForeignKey` no Elasticsearch. |
| `parentMetaEntityId` | Não | \- | A tabela pai não pode ser atualizada. Fornecer esta chave retorna um erro. |
| Outras chaves | Não | \- | Para uma entidade compartilhada, atualizar chaves que não estão na lista de permissões retorna um erro. |

A solicitação falhará se a tabela pai não existir, não pertencer ao locatário atual ou não tiver colunas embutidas.

Exemplo:

```json
{
  "Comment": "ID do pedido",
  "Attributes": {
    "type": "BIGINT",
    "position": "1",
    "primaryKey": "true"
  },
  "CustomAttributes": {
    "security_level": ["P1"]
  }
}
```.

## Operações não suportadas

| Item | Conclusão |
| --- | --- |
| Modificar nome da entidade | Não suportado. O nome é derivado do `Id`. |
| Modificar EntityType | Não suportado. O tipo é derivado do `Id`. |
| Modificar entidade pai | Não suportado. Fornecer `attributes.parentMetaEntityId` retorna um erro. |
| Modificar lista de colunas | Não suportado. Fornecer `attributes.columns` retorna um erro. |
| Criar novas colunas | Não suportado. Para adicionar colunas a uma tabela estendida, especifique-as no parâmetro `Attributes.columns` ao criar a tabela usando a operação `BatchCreateMetaEntities`. |.

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

object

Os dados retornados na resposta.

RequestId

string

O ID da solicitação.

AASFDFSDFG-DFSDF-DFSDFD-SDFSDF

Success

boolean

Indica se a solicitação foi bem-sucedida.

true

Result

object

O resultado da operação de atualização.

Id

string

O ID da entidade.

custom_entity-customer_api:api_001

Success

boolean

Indica se a atualização foi bem-sucedida.

true

Exemplos

Resposta de sucesso

JSON formato

{
  "RequestId": "AASFDFSDFG-DFSDF-DFSDFD-SDFSDF",
  "Success": true,
  "Result": {
    "Id": "custom_entity-customer_api:api_001",
    "Success": true
  }
}

Códigos de erro

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.