Motores disponibles
Configuración del motor
Configuración global
Comprobar el motor actual
Modo automático
auto (predeterminado), DataStore selecciona el motor óptimo para cada operación:
Operaciones ejecutadas en chDB
- Filtrado compatible con SQL (
filter(),where()) - Selección de columnas (
select()) - Ordenación (
sort(),orderby()) - Agrupación y agregación (
groupby().agg()) - Uniones (
join(),merge()) - Valores distintos (
distinct(),drop_duplicates()) - Limitación de resultados (
limit(),head(),tail())
Operaciones ejecutadas en pandas
- Funciones
applypersonalizadas (apply(custom_func)) - Tablas dinámicas complejas con agregaciones personalizadas
- Operaciones que no se pueden expresar en SQL
- Cuando la entrada ya es un DataFrame de pandas
Ejemplo
Modo chDB
Cuándo usar
- Procesamiento de grandes volúmenes de datos (millones de filas)
- Cargas de trabajo con agregaciones intensivas
- Cuando necesites la máxima optimización de SQL
- Comportamiento uniforme en todas las operaciones
Características del rendimiento
Limitaciones
- Es posible que no se admitan funciones personalizadas de Python
- Algunas características específicas de pandas requieren conversión
Modo pandas
Cuándo usar
- Pruebas de compatibilidad con pandas
- Uso de funciones específicas de pandas
- Depuración de problemas relacionados con pandas
- Cuando los datos ya están en formato pandas
Características de rendimiento
Motor entre DataStores
Ejemplo
Lógica de selección del motor
Árbol de decisiones del modo automático
Sobrescritura a nivel de función
Comparación de rendimiento
Conclusiones clave:
- chDB destaca en las agregaciones y las canalizaciones complejas
- pandas es ligeramente más rápido en operaciones simples
- Usa el modo
autopara obtener lo mejor de ambos