Visão geral
O que o modo de desempenho desativa
Ativando o modo de desempenho
Usando o objeto de configuração
Usando funções de nível de módulo
Usando imports de conveniência
Ao definir o modo de desempenho, o mecanismo de execução é configurado automaticamente como
chdb. Você não precisa chamar config.use_chdb() separadamente.Quando usar o modo de desempenho
- Estiver processando grandes conjuntos 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 de SQL com o mínimo de sobrecarga
- 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()retornarem a verdadeira primeira/última linha - Usar
shift(),diff(),cumsum()que dependem da ordem das linhas - Estiver escrevendo testes que comparam a saída do DataStore com a do pandas
Diferenças de comportamento
Ordem das linhas
- Resultados de filtro
- Resultados de agregação do GroupBy
head()/tail()semsort_values()explícito- Agregações
first()/last()
sort_values() explícito:
Resultados de GroupBy
Agregação
Execução com uma única consulta SQL
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:
Ao definir
compat_mode='performance', execution_engine='chdb' é definido automaticamente, já que o modo de desempenho foi projetado para execução de SQL.
Testes no modo de desempenho
Ordenar e depois comparar (agregações, filtros)
Verificação da faixa de valores (primeiro/último)
Esquema e contagem (LIMIT sem ORDER BY)
Boas práticas
1. Ative logo no início do script
2. Adicione ordenação explícita quando a ordem for importante
3. Use para cargas de trabalho de batch/ETL
4. Alternar entre modos em uma sessão
- mecanismo de execução — Seleção do mecanismo (auto/chdb/pandas)
- Performance Guide — Dicas gerais de otimização
- Key Differences from pandas — Diferenças de comportamento