Visão geral
O que o modo de desempenho desabilita
Habilitando o modo de desempenho
Usando o objeto config
Usando funções no nível do módulo
Usando importações simplificadas
Ao ativar o modo de desempenho, o mecanismo de execução é definido automaticamente como
chdb. Não é necessário chamar config.use_chdb() separadamente.Quando usar o modo de desempenho
- Estiver processando grandes volumes de dados (de centenas de milhares a milhões de linhas)
- Estiver executando workloads com muita agregação (
groupby,sum,mean,count) - A ordem das linhas não importar (por exemplo, resultados agregados, relatórios, dashboards)
- Quiser o máximo de throughput SQL com a menor sobrecarga possível
- O uso de memória for uma preocupação (leitura paralela de Parquet, sem DataFrames intermediários)
- Precisar do comportamento exato do pandas (ordem das linhas, MultiIndex,
dtypes) - Depender de
first()/last()para retornar de fato a primeira/última linha - Usar
shift(),diff(),cumsum()que dependem da ordem das linhas - Estiver escrevendo testes que comparam a saída do DataStore com o pandas
Diferenças de comportamento
Ordem das linhas
- Resultados de filtros
- Resultados de agregação de GroupBy
head()/tail()semsort_values()explícito- Agregações
first()/last()
sort_values() explícito:
Resultados do GroupBy
Agregação
Execução em SQL único
groupby de ColumnExpr (por exemplo, ds[condition].groupby('col')['val'].sum()) é executada como uma única consulta SQL, em vez do processo de duas etapas usado no modo pandas:
Comparação com o mecanismo de execução
compat_mode) e o mecanismo de execução (execution_engine) são eixos de configuração independentes:
Definir
compat_mode='performance' configura automaticamente execution_engine='chdb', já que o modo de desempenho foi projetado para execução de SQL.
Testando com o modo de desempenho
Ordenar e comparar (agregações, filtros)
Validação de faixa de valores (primeiro/último)
Esquema e contagem (LIMIT sem ORDER BY)
Boas práticas
1. Habilite no início do script
2. Adicione ordenação explícita quando a ordem for importante
3. Use em cargas de trabalho de batch/ETL
4. Alterne entre modos em uma sessão
- Mecanismo de execução — Seleção do mecanismo (auto/chdb/pandas)
- Guia de desempenho — Dicas gerais de otimização
- Principais diferenças em relação ao pandas — Diferenças de comportamento