Vue d’ensemble
Ce que désactive le mode Performance
Activation du mode Performance
Utilisation de l’objet de configuration
Utilisation des fonctions au niveau du module
Utilisation des imports simplifiés
L’activation du mode Performance règle automatiquement le moteur d’exécution sur
chdb. Vous n’avez pas besoin d’appeler config.use_chdb() séparément.Quand utiliser le mode Performance
- vous traitez de grands jeux de données (de centaines de milliers à plusieurs millions de lignes)
- vous exécutez des workloads à forte agrégation (groupby, sum, mean, count)
- l’ordre des lignes n’a pas d’importance (par exemple pour des résultats agrégés, des rapports ou des tableaux de bord)
- vous voulez un débit SQL maximal avec un minimum d’overhead
- la consommation mémoire est un enjeu (lecture parallèle de Parquet, sans DataFrame intermédiaire)
- vous avez besoin du comportement exact de pandas (ordre des lignes, MultiIndex, dtypes)
- vous dépendez de
first()/last()pour renvoyer la véritable première/dernière ligne - vous utilisez
shift(),diff(),cumsum()qui dépendent de l’ordre des lignes - vous écrivez des tests qui comparent les résultats de DataStore à ceux de pandas
Différences de comportement
Ordre des lignes
- Résultats de filtrage
- Résultats d’agrégation GroupBy
head()/tail()sanssort_values()explicite- Agrégations
first()/last()
sort_values() explicite :
Résultats de GroupBy
Agrégation
Exécution en une seule requête SQL
groupby sur ColumnExpr (par ex., ds[condition].groupby('col')['val'].sum()) est exécutée comme une seule requête SQL, au lieu du processus en deux étapes utilisé en mode pandas :
Comparaison avec le moteur d’exécution
compat_mode) et le moteur d’exécution (execution_engine) sont deux axes de configuration indépendants :
Définir
compat_mode='performance' définit automatiquement execution_engine='chdb', car le mode Performance est conçu pour l’exécution SQL.
Test en mode Performance
Tri puis comparaison (agrégations, filtres)
Contrôle de la plage de valeurs (première/dernière)
Schéma et comptage (LIMIT sans ORDER BY)
Bonnes pratiques
1. Activez-le dès le début de votre script
2. Ajoutez un tri explicite lorsque l’ordre est important
3. À utiliser pour les charges de travail de traitement par lots/ETL
4. Basculer entre les modes au sein d’une session
- Moteur d’exécution — Sélection du moteur (auto/chdb/pandas)
- Guide des performances — Conseils généraux d’optimisation
- Principales différences avec pandas — Différences de comportement