Skip to main content
Ce guide vous aide à migrer du code pandas existant vers DataStore afin d’améliorer les performances tout en conservant la compatibilité.

La migration en une ligne

La migration la plus simple consiste à modifier votre import :
C’est tout ! La plupart du code pandas fonctionne tel quel.

Migration pas à pas

1

Installer chDB

2

Modifier l’import

3

Tester votre code

Exécutez votre code existant. La plupart des opérations fonctionnent sans modification :
4

Gérer les éventuelles différences

Quelques opérations se comportent différemment. Voir les principales différences ci-dessous.

Ce qui fonctionne tel quel

Chargement des données

Filtrage

Sélection

GroupBy et agrégation

Tri

Opérations sur les chaînes

Opérations sur DateTime

Opérations d’E/S


Principales différences

1. Évaluation différée

Les opérations de DataStore sont évaluées de manière différée : elles ne s’exécutent que lorsque les résultats sont nécessaires. pandas:
DataStore :

2. Types de retour

3. Pas de paramètre inplace

DataStore ne prend pas en charge inplace=True. Utilisez toujours la valeur renvoyée : pandas:
DataStore:

4. Comparer des DataStores

pandas ne reconnaît pas les objets DataStore. Utilisez donc to_pandas() pour les comparer :

5. Ordre des lignes

DataStore ne préserve pas toujours l’ordre des lignes pour certaines sources de données (comme les bases de données SQL). Utilisez un tri explicite :

Stratégies de migration

Modèle 1 : lecture-analyse-écriture

Modèle 2 : DataFrame avec opérations pandas

Si vous avez besoin de fonctionnalités propres à pandas, convertissez à la fin :

Modèle 3 : workflow mixte


Comparaison des performances

DataStore est nettement plus rapide sur les grands jeux de données : Benchmark sur 10 M de lignes

Dépannage de la migration

Problème : l’opération ne fonctionne pas

Certaines opérations pandas peuvent ne pas être prises en charge. Vérifiez :
  1. L’opération figure-t-elle dans la liste de compatibilité ?
  2. Essayez d’abord de convertir en DataFrame pandas : ds.to_df().operation()

Problème : résultats différents

Activez la journalisation en mode débogage pour comprendre ce qui se passe :

Problème : lenteurs

Vérifiez votre mode d’exécution :

Problème : incompatibilités de types

DataStore peut inférer les types différemment :

Stratégie de migration progressive

Semaine 1 : Tester la compatibilité

Semaine 2 : Migrez d’abord les scripts simples

Commencez par les scripts qui :
  • Lisent de gros fichiers
  • Effectuent du filtrage et de l’agrégation
  • N’utilisent pas de fonctions apply personnalisées

Semaine 3 : Traiter les cas complexes

Pour les scripts avec des fonctions personnalisées :

Semaine 4 : migration complète

Modifiez tous les scripts pour utiliser l’import DataStore.

FAQ

Puis-je utiliser à la fois pandas et DataStore ?

Oui ! Convertissez librement de l’un à l’autre :

Mes tests continueront-ils à passer ?

La plupart des tests devraient encore passer. Pour les tests de comparaison, convertissez en pandas :

Puis-je utiliser DataStore dans Jupyter ?

Oui ! DataStore fonctionne dans les notebooks Jupyter :

Comment signaler des problèmes ?

Si vous rencontrez des problèmes de compatibilité, signalez-les ici : https://github.com/chdb-io/chdb/issues
Dernière modification le 3 juillet 2026