Apache Iceberg™: novos caminhos de gravação para tabelas gerenciadas pelo Snowflake (pendente)

Atenção

Essa mudança de comportamento está no pacote 2025_01.

Para saber o status atual do pacote, consulte Histórico do pacote.

Para tabelas Iceberg gerenciadas pelo Snowflake (incluindo tabelas convertidas e tabelas Iceberg dinâmicas):

Antes da mudança:

O Snowflake exige que você especifique um BASE_LOCATION para a tabela e grava os arquivos de dados Parquet e os metadados da tabela nos seguintes caminhos em seu armazenamento em nuvem externo:

  • STORAGE_BASE_URL/BASE_LOCATION/data/

  • STORAGE_BASE_URL/BASE_LOCATION/metadata/

Após a mudança:

O Snowflake não precisa mais de um BASE_LOCATION e constrói caminhos usando uma cadeia de caracteres aleatória de 8 caracteres ou o valor de um novo parâmetro de cadeia de caracteres em nível de esquema chamado BASE_LOCATION_PREFIX.

Se você especificar um BASE_LOCATION, o Snowflake ignorará e não usará o BASE_LOCATION_PREFIX.

O Snowflake constrói caminhos usando os seguintes padrões, dependendo dos valores especificados para BASE_LOCATION ou BASE_LOCATION_PREFIX:

  • No BASE_LOCATION, no BASE_LOCATION_PREFIX: STORAGE_BASE_URL/<database>/<schema>/<table_name>.<randomId>/<data | metadata>/

  • No BASE_LOCATION, BASE_LOCATION_PREFIX = “my_prefix”: STORAGE_BASE_URL/my_prefix/<table_name>.<randomId>/<data | metadata>/

  • BASE_LOCATION = “my_base_loc”: STORAGE_BASE_URL/my_base_loc.<randomId>/<data | metadata>/

  • BASE_LOCATION = “” (cadeia de caracteres vazia): STORAGE_BASE_URL/<randomId>/<data | metadata>/

Ref: 1873