> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-fbfa8bee.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuration de DataStore

> Configurer le moteur d’exécution de DataStore, la journalisation, la mise en cache et le profilage

DataStore propose des options de configuration complètes pour la sélection du moteur d’exécution, le mode de compatibilité, la journalisation, la mise en cache, le profilage et la correction des types de données.

<div id="quick-reference">
  ## Aide-mémoire
</div>

```python theme={null}
from chdb.datastore.config import config

# Quick setup presets
config.enable_debug()           # Enable verbose logging
config.use_chdb()               # Force ClickHouse engine
config.use_pandas()             # Force pandas engine
config.use_auto()               # Auto-select engine (default)
config.use_performance_mode()   # SQL-first, max throughput
config.use_pandas_compat()      # Full pandas compatibility (default)
config.enable_profiling()       # Enable performance profiling
```

<div id="all-options">
  ## Toutes les options de configuration
</div>

| Catégorie          | Option                   | Valeurs                       | Par défaut | Description                                     |
| ------------------ | ------------------------ | ----------------------------- | ---------- | ----------------------------------------------- |
| **Journalisation** | `log_level`              | DEBUG/INFO/WARNING/ERROR      | WARNING    | Niveau de verbosité des logs                    |
|                    | `log_format`             | "simple", "verbose"           | "simple"   | Format des messages de log                      |
| **Cache**          | `cache_enabled`          | True/False                    | True       | Activer la mise en cache des résultats          |
|                    | `cache_ttl`              | float (secondes)              | 0.0        | Durée de vie du cache                           |
| **Moteur**         | `execution_engine`       | "auto", "chdb", "pandas"      | "auto"     | Moteur d'exécution                              |
|                    | `cross_datastore_engine` | "auto", "chdb", "pandas"      | "auto"     | Opérations Cross-DataStore                      |
| **Compat**         | `compat_mode`            | "pandas", "performance"       | "pandas"   | Compatibilité pandas vs débit optimisé pour SQL |
| **Profilage**      | `profiling_enabled`      | True/False                    | False      | Activer le profilage                            |
| **Dtype**          | `correction_level`       | NONE/CRITICAL/HIGH/MEDIUM/ALL | HIGH       | Niveau de correction Dtype                      |

***

<div id="methods">
  ## Méthodes de configuration
</div>

<div id="logging">
  ### Configuration de la journalisation
</div>

```python theme={null}
from chdb.datastore.config import config
import logging

# Set log level
config.set_log_level(logging.DEBUG)
config.set_log_level(logging.INFO)
config.set_log_level(logging.WARNING)  # Default
config.set_log_level(logging.ERROR)

# Set log format
config.set_log_format("simple")   # Default
config.set_log_format("verbose")  # More details

# Quick enable debug mode
config.enable_debug()  # Sets DEBUG level + verbose format
```

Voir [journalisation](/fr/products/chdb/debugging/logging) pour plus de détails.

<div id="cache">
  ### Configuration du cache
</div>

```python theme={null}
# Enable/disable caching
config.set_cache_enabled(True)   # Default
config.set_cache_enabled(False)  # Disable caching

# Set cache TTL (time-to-live)
config.set_cache_ttl(60.0)  # Cache expires after 60 seconds
config.set_cache_ttl(0.0)   # No expiration (default)

# Check current settings
print(config.cache_enabled)
print(config.cache_ttl)
```

<div id="engine">
  ### Configuration du moteur
</div>

```python theme={null}
# Set execution engine
config.set_execution_engine('auto')    # Auto-select (default)
config.set_execution_engine('chdb')    # Force ClickHouse
config.set_execution_engine('pandas')  # Force pandas

# Quick presets
config.use_auto()     # Auto-select
config.use_chdb()     # Force ClickHouse
config.use_pandas()   # Force pandas

# Cross-DataStore engine (for operations between different DataStores)
config.set_cross_datastore_engine('auto')
config.set_cross_datastore_engine('chdb')
config.set_cross_datastore_engine('pandas')

# Check current engine
print(config.execution_engine)
```

Voir [Moteur d’exécution](/fr/products/chdb/configuration/execution-engine) pour plus de détails.

<div id="compat-mode">
  ### Mode de compatibilité
</div>

```python theme={null}
# Performance mode: SQL-first, no pandas compatibility overhead
config.use_performance_mode()
# or: config.set_compat_mode('performance')

# Pandas compatibility mode (default)
config.use_pandas_compat()
# or: config.set_compat_mode('pandas')

# Check current mode
print(config.compat_mode)  # 'pandas' or 'performance'
```

Voir [mode performance](/fr/products/chdb/configuration/performance-mode) pour en savoir plus.

<div id="profiling">
  ### Configuration du profilage
</div>

```python theme={null}
# Enable profiling
config.enable_profiling()
config.set_profiling_enabled(True)

# Disable profiling
config.set_profiling_enabled(False)

# Check if profiling is enabled
print(config.profiling_enabled)
```

Voir [Profilage](/fr/products/chdb/debugging/profiling) pour plus d’informations.

<div id="dtype">
  ### Correction des types de données
</div>

```python theme={null}
from chdb.datastore.dtype_correction.config import CorrectionLevel

# Set correction level
config.set_correction_level(CorrectionLevel.NONE)      # No correction
config.set_correction_level(CorrectionLevel.CRITICAL)  # Critical types only
config.set_correction_level(CorrectionLevel.HIGH)      # Default
config.set_correction_level(CorrectionLevel.MEDIUM)    # More corrections
config.set_correction_level(CorrectionLevel.ALL)       # All corrections
```

***

<div id="config-object">
  ## Utilisation de l’objet `config`
</div>

L’objet `config` est un singleton qui gère tous les paramètres :

```python theme={null}
from chdb.datastore.config import config

# Read settings
print(config.log_level)
print(config.execution_engine)
print(config.cache_enabled)
print(config.profiling_enabled)

# Modify settings
config.set_log_level(logging.DEBUG)
config.set_execution_engine('chdb')
config.set_cache_enabled(False)
config.enable_profiling()
```

***

<div id="in-code">
  ## Configuration dans le code
</div>

<div id="per-script">
  ### Configuration propre à chaque script
</div>

```python theme={null}
from chdb import datastore as pd
from chdb.datastore.config import config

# Configure at script start
config.enable_debug()
config.use_chdb()
config.enable_profiling()

# Your DataStore code
ds = pd.read_csv("data.csv")
result = ds.filter(ds['age'] > 25).groupby('city').agg({'salary': 'mean'})
```

<div id="context-manager">
  ### Gestionnaire de contexte (à venir)
</div>

```python theme={null}
# Planned feature: temporary configuration
with config.override(execution_engine='pandas'):
    result = ds.process()
# Original settings restored
```

***

<div id="scenarios">
  ## Scénarios de configuration courants
</div>

<div id="dev-config">
  ### Développement/Débogage
</div>

```python theme={null}
from chdb.datastore.config import config

config.enable_debug()        # Verbose logging
config.enable_profiling()    # Performance tracking
config.set_cache_enabled(False)  # Disable caching for fresh results
```

<div id="prod-config">
  ### Production
</div>

```python theme={null}
from chdb.datastore.config import config
import logging

config.set_log_level(logging.WARNING)  # Minimal logging
config.set_execution_engine('auto')    # Optimal engine selection
config.set_cache_enabled(True)         # Enable caching
config.set_profiling_enabled(False)    # Disable profiling overhead
```

<div id="max-throughput-config">
  ### Débit maximal
</div>

```python theme={null}
from chdb.datastore.config import config

config.use_performance_mode()    # SQL-first, no pandas overhead
config.set_cache_enabled(False)  # Disable cache for streaming
```

<div id="perf-config">
  ### Tests de performance
</div>

```python theme={null}
from chdb.datastore.config import config

config.use_chdb()            # Force ClickHouse for benchmarks
config.enable_profiling()    # Track performance
config.set_cache_enabled(False)  # Disable cache for accurate timing
```

<div id="compat-config">
  ### Tests de compatibilité avec pandas
</div>

```python theme={null}
from chdb.datastore.config import config

config.use_pandas()          # Force pandas engine
config.enable_debug()        # See what operations are used
```

***

<div id="related">
  ## Documentation connexe
</div>

* [Moteur d’exécution](/fr/products/chdb/configuration/execution-engine) - Détails sur la sélection du moteur
* [Mode performance](/fr/products/chdb/configuration/performance-mode) - Mode SQL-first pour un débit maximal
* [Configuration des fonctions](/fr/products/chdb/configuration/function-config) - Configuration du moteur par fonction
* [Journalisation](/fr/products/chdb/debugging/logging) - Configuration de la journalisation
* [Profilage](/fr/products/chdb/debugging/profiling) - Profilage des performances
