Recomendações de desempenho da Lakehouse Federation

Este artigo fornece orientações para melhorar o desempenho das consultas da Lakehouse Federation.

Definir o parâmetro JDBC fetchSize

O tamanho da busca do JDBC determina o número de linhas a serem buscadas por viagem de ida e volta. Em default, a maioria dos conectores JDBC busca dados atomicamente. Isso pode fazer com que a quantidade de dados exceda a quantidade de memória disponível.

Para evitar erros de falta de memória, defina o parâmetro fetchSize. Quando fetchSize é definido como um valor diferente de zero, o conector lê os dados em lotes. O número máximo de linhas por lote é igual ao valor de fetchSize. A Databricks recomenda a especificação de um valor fetchSize grande, por exemplo, 1000.

SELECT * FROM catalog.schema.jdbcTable WITH ('fetchSize' 1000)

Definir o parâmetro partition_size_in_mb (Snowflake)

Defina o parâmetro partition_size_in_mb para grandes conjuntos de resultados de consulta que precisam ser divididos em várias partições de DataFrame. Essa opção especifica o tamanho não compactado recomendado para cada partição do DataFrame. Para reduzir o número de partições, especifique um valor maior. O endereço default é 100 (MB).

partition_size_in_mb é usado como tamanho recomendado. O tamanho real das partições pode ser menor ou maior. Essa opção só se aplica quando o parâmetro use_copy_unload está definido como FALSE.

SELECT * FROM catalog.schema.snowflakeTable WITH ('partition_size_in_mb' 1000)