OPTIMIZE
Otimize as linhas em uma tabela do Apache Iceberg ao gravar novamente arquivos de dados em um layout mais otimizado com base em no tamanho e no número de arquivos excluídos associados.
nota
OPTIMIZE
é transacional e é compatível somente para tabelas do Apache Iceberg.
Sintaxe
O resumo da sintaxe a seguir mostra como otimizar o layout de dados para uma tabela Iceberg.
OPTIMIZE [
db_name
.]table_name
REWRITE DATA USING BIN_PACK [WHEREpredicate
]
nota
Somente colunas de partição são permitidas no predicado
da cláusula WHERE
. Especificar uma coluna sem partição fará com que a consulta falhe.
A ação de compactação é cobrada pela quantidade de dados verificados durante o processo de regravação. A ação REWRITE DATA
usa predicados para selecionar arquivos que contenham linhas iguais. Se alguma linha no arquivo corresponder ao predicado, o arquivo será selecionado para otimização. Assim, para controlar o número de arquivos afetados pela operação de compactação, você pode especificar uma cláusula WHERE
.
Configurar propriedades de compactação
Para controlar o tamanho dos arquivos a serem selecionados para compactação e o tamanho do arquivo resultante após a compactação, você pode usar parâmetros de propriedade de tabela. Você pode usar o comando ALTER TABLE SET TBLPROPERTIES para configurar as propriedades de tabela a seguir.