Criação de uma tabela Iceberg

Este tópico aborda como criar tabelas Iceberg no Snowflake para diferentes Opções de catálogo Iceberg. Você pode criar uma tabela Iceberg usando o comando CREATE ICEBERG TABLE.

Nota

Para criar uma tabela Iceberg, você deve ter um warehouse em execução especificado como o warehouse atual da sua sessão. Podem ocorrer erros se nenhum warehouse em execução for especificado ao criar uma tabela Iceberg. Para obter mais informações, consulte Como trabalhar com warehouses.

Criação de uma tabela Iceberg com Snowflake como catálogo

Para criar uma tabela Iceberg com Snowflake como catálogo, você deve especificar um volume externo e um local base (diretório no volume externo) onde o Snowflake pode gravar dados e metadados da tabela. Para obter instruções sobre como criar um volume externo, consulte Configuração de um volume externo para tabelas Iceberg.

O exemplo a seguir cria uma tabela Iceberg com Snowflake como catálogo Iceberg.

CREATE ICEBERG TABLE myTable
  CATALOG='SNOWFLAKE'
  EXTERNAL_VOLUME='myIcebergVolume'
  BASE_LOCATION='relative/path/from/extvol/location/';
Copy

Você também pode criar uma tabela Iceberg com Snowflake como catálogo usando sintaxe de variante. Consulte CREATE TABLE … AS SELECT e CREATE ICEBERG TABLE … LIKE.

Criação de uma tabela Iceberg com integração de catálogo

Para criar uma tabela Iceberg que use um catálogo externo ou nenhum catálogo, você deve especificar um volume externo e uma integração de catálogo. Se você usar um catálogo Iceberg externo, também poderá precisar especificar parâmetros adicionais. Por exemplo, ao usar o AWS Glue como catálogo, você deve especificar um nome de tabela de catálogo.

Quando você cria uma tabela Iceberg com integração de catálogo, o Snowflake executa uma atualização inicial de metadados. Você também pode atualizar manualmente os metadados da tabela usando o comando ALTER ICEBERG TABLE para sincronizar os metadados com as alterações mais recentes da tabela. Para obter mais informações, consulte Atualização manual dos metadados da tabela.

Criação de uma tabela Iceberg com AWS Glue como catálogo

Importante

Você deve configurar uma integração de catálogo para o AWS Glue para estabelecer uma relação de confiança entre o Snowflake e o catálogo de dados do Glue. Para obter instruções, consulte Configuração de uma integração de catálogo para tabelas Iceberg.

O exemplo a seguir cria uma tabela Iceberg que usa o catálogo de dados do AWS Glue, especificando o nome de uma integração de catálogo que foi configurada para o AWS Glue (glueCatalogInt) e um valor para a propriedade CATALOG_TABLE_NAME.

CREATE ICEBERG TABLE myGlueTable
  EXTERNAL_VOLUME='glueCatalogVolume'
  CATALOG='glueCatalogInt'
  CATALOG_TABLE_NAME='myGlueTable';
Copy

Criação de uma tabela Iceberg a partir de arquivos Iceberg no armazenamento de objetos

O exemplo a seguir cria uma tabela Iceberg a partir de metadados Iceberg no armazenamento em nuvem externo, especificando um caminho relativo para os metadados da tabela no volume externo (METADATA_FILE_PATH).

CREATE ICEBERG TABLE myIcebergTable
  EXTERNAL_VOLUME='icebergMetadataVolume'
  CATALOG='icebergCatalogInt'
  METADATA_FILE_PATH='path/to/metadata/v1.metadata.json';
Copy