Fonctionnalités clés
- Compatibilité avec pandas : 209 méthodes de DataFrame pandas, 56 méthodes
.str, plus de 42 méthodes.dt - Optimisation SQL : les opérations sont automatiquement compilées en requêtes SQL optimisées
- Évaluation paresseuse : les opérations sont différées jusqu’à ce que leurs résultats soient nécessaires
- 630+ méthodes d’API : une API complète pour la manipulation des données
- Extensions ClickHouse : accesseurs supplémentaires (
.arr,.json,.url,.ip,.geo) non disponibles dans pandas
Architecture
- Chaîne d’opérations différées : les opérations sont enregistrées, sans être exécutées immédiatement
- Sélection intelligente du moteur : QueryPlanner dirige chaque segment vers le moteur le plus adapté (chDB pour SQL, Pandas pour les opérations complexes)
- Mise en cache intermédiaire : les résultats sont mis en cache à chaque étape pour accélérer l’exploration itérative
Migration en une ligne à partir de Pandas
Comparaison des performances
| Opération | Pandas | DataStore | Gain de vitesse |
|---|---|---|---|
| GroupBy count | 347ms | 17ms | 19.93x |
| Pipeline complexe | 2,047ms | 380ms | 5.39x |
| Filter+Sort+Head | 1,537ms | 350ms | 4.40x |
| GroupBy agg | 406ms | 141ms | 2.88x |
Quand utiliser DataStore
- Vous travaillez avec de grands jeux de données (des millions de lignes)
- Vous effectuez des agrégations et des opérations de groupby
- Vous interrogez des données depuis des fichiers, des bases de données ou un stockage cloud
- Vous créez des pipelines de données complexes
- Vous souhaitez profiter de l’API pandas avec de meilleures performances
- Vous préférez écrire du SQL directement
- Vous avez besoin d’un contrôle précis sur l’exécution des requêtes
- Vous utilisez des fonctionnalités propres à ClickHouse qui ne sont pas exposées dans l’API pandas
Comparaison des fonctionnalités
| Fonctionnalité | Pandas | Polars | DuckDB | DataStore |
|---|---|---|---|---|
| Compatibilité avec l’API Pandas | - | Partielle | Non | Totale |
| Évaluation paresseuse | Non | Oui | Oui | Oui |
| Prise en charge des requêtes SQL | Non | Oui | Oui | Oui |
| Fonctions ClickHouse | Non | Non | Non | Oui |
| Accesseurs String/DateTime | Oui | Oui | Non | Oui + extras |
| Array/JSON/URL/IP/Geo | Non | Partielle | Non | Oui |
| Requêtes directes sur des fichiers | Non | Oui | Oui | Oui |
| Prise en charge du stockage cloud | Non | Limitée | Oui | Oui |
Statistiques de l’API
| Catégorie | Nombre | Couverture |
|---|---|---|
| Méthodes DataFrame | 209 | 100 % de pandas |
| Accesseur Series.str | 56 | 100 % de pandas |
| Accesseur Series.dt | 42+ | 100 %+ (inclut des extensions propres à ClickHouse) |
| Accesseur Series.arr | 37 | Spécifique à ClickHouse |
| Accesseur Series.json | 13 | Spécifique à ClickHouse |
| Accesseur Series.url | 15 | Spécifique à ClickHouse |
| Accesseur Series.ip | 9 | Spécifique à ClickHouse |
| Accesseur Series.geo | 14 | Spécifique à ClickHouse |
| Total des méthodes de l’API | 630+ | - |
Prise en main
- Démarrage rapide - Installation et utilisation de base
- Migration depuis Pandas - Guide de migration pas à pas
Référence de l’API
- Méthodes de fabrique - Création de DataStore à partir de diverses sources
- Construction de requêtes - Opérations de requête de type SQL
- compatibilité avec pandas - Les 209 méthodes compatibles avec pandas
- Accesseurs - Accesseurs String, DateTime, Array, JSON, URL, IP et Geo
- Agrégation - Fonctions d’agrégation et fonctions de fenêtre
- Opérations d’E/S - Lecture et écriture de données
Sujets avancés
- Modèle d’exécution - Évaluation paresseuse et mise en cache
- Référence de classe - Référence complète de l’API
Configuration & débogage
- Configuration - Toutes les options de configuration
- Mode Performance - Mode orienté SQL pour un débit maximal
- Débogage - Explain, profilage et journalisation
Guides d’utilisation de Pandas
- Livre de recettes Pandas - Cas d’usage courants
- Principales différences - Différences importantes par rapport à pandas
- Guide des performances - Conseils d’optimisation
- SQL pour les utilisateurs de Pandas - Comprendre le SQL sous-jacent aux opérations pandas
Exemple rapide
Étapes suivantes
- Vous débutez avec DataStore ? Commencez par le guide de démarrage rapide
- Vous utilisez déjà pandas ? Consultez le guide de migration
- Vous voulez en savoir plus ? Consultez la référence de l’API