Todos os produtos
Search
Central de documentação

Object Storage Service:UpdateTableMetadataLocation

Última atualização: Jul 03, 2026

Atualiza o local do arquivo de metadados de uma tabela especificada.

Notas de uso

  • Aponta a tabela para um novo arquivo de metadados, permitindo a evolução do schema e commits de dados.

  • Requer o versionToken atual para bloqueio otimista, garantindo consistência durante atualizações simultâneas.

  • Obtenha o versionToken chamando a operação GetTableMetadataLocation ou GetTable.

  • O novo metadataLocation deve apontar para um arquivo JSON de metadados Iceberg válido.

Permissões

API

Action

Descrição

UpdateTableMetadataLocation

oss:UpdateTableMetadataLocation

Atualize o local dos metadados de uma tabela. Esta operação também verifica a política da tabela.

Sintaxe da requisição

PUT /tables/{tableBucketARN}/{namespace}/{name}/metadata-location HTTP/1.1
Content-type: application/json
Host: cn-hangzhou.oss-tables.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

{
   "versionToken": "string",
   "metadataLocation": "string"
}

Parâmetros da requisição

Parâmetro

Tipo

Obrigatório

Exemplo

Descrição

tableBucketARN

String

Sim

acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket

ARN do bucket da tabela. Formato: acs:osstables:{region}:{uid}:bucket/{bucketName}. Este parâmetro está na URI.

namespace

String

Sim

my_namespace

Nome do namespace da tabela. Este parâmetro está na URI.

name

String

Sim

my_table

Nome da tabela. Este parâmetro está na URI.

versionToken

String

Sim

aaabbb

Token de versão atual para bloqueio otimista. Obtenha este token chamando a operação GetTableMetadataLocation ou GetTable. Este parâmetro está no corpo da requisição.

metadataLocation

String

Sim

oss://data-bucket/metadata/00001-xxx.metadata.json

Caminho OSS para o novo arquivo de metadados. Deve apontar para um arquivo JSON de metadados Iceberg válido. Este parâmetro está no corpo da requisição.

Parâmetros de resposta

Parâmetro

Tipo

Exemplo

Descrição

metadataLocation

String

oss://bucket/metadata/00000-xxx.metadata.json

Caminho OSS atualizado do arquivo de metadados.

name

String

my_table

Nome da tabela.

namespace

Array

-

Namespace da tabela, retornado como array.

tableARN

String

acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket/table/table-id

ARN da tabela.

versionToken

String

abc123def456

Token de versão atualizado.

Exemplos

Exemplo de requisição

PUT /tables/acs%3Aosstables%3Acn-hangzhou%3A1234567890%3Abucket%2Fmy-table-bucket/my_namespace/my_table/metadata-location HTTP/1.1
Content-type: application/json
Host: cn-hangzhou.oss-tables.aliyuncs.com
Date: Thu, 10 Apr 2025 08:00:00 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/osstables/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c****

{
   "versionToken": "aaabbb",
   "metadataLocation": "oss://data-bucket/metadata/00001-xxx.metadata.json"
}

Exemplo de resposta

HTTP/1.1 200 OK
Server: AliyunOSS
x-oss-request-id: 5C06A3B67B8B5A3DA422****
x-oss-server-time: 3
Content-Type: application/json

{
   "metadataLocation": "oss://data-bucket/metadata/00001-xxx.metadata.json",
   "name": "my_table",
   "namespace": ["my_namespace"],
   "tableARN": "acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket/table/table_id",
   "versionToken": "cccbbb"
}

SDKs

Os SDKs a seguir suportam a operação UpdateTableMetadataLocation:

ossutil CLI

Para obter o comando correspondente do ossutil, consulte update-table-metadata-location.

Códigos de erro

Código de erro

Código de status HTTP

Descrição

BadRequestException

400

A requisição é inválida ou malformada.

ForbiddenException

403

O chamador não tem as permissões necessárias para executar esta operação.

NotFoundException

404

O recurso solicitado não existe.

ConflictException

409

A requisição entra em conflito com uma operação de gravação anterior.