Descripción general
Qué desactiva modo de rendimiento
Activar modo de rendimiento
Uso del objeto de configuración
Uso de funciones a nivel de módulo
Uso de importaciones abreviadas
Al activar el modo de rendimiento, el motor de ejecución se establece automáticamente en
chdb. No es necesario llamar a config.use_chdb() por separado.Cuándo usar modo de rendimiento
- Procesas grandes conjuntos de datos (cientos de miles o millones de filas)
- Ejecutas cargas de trabajo con mucha agregación (groupby, sum, mean, count)
- El orden de las filas no importa (p. ej., resultados agregados, informes, dashboards)
- Quieres el máximo rendimiento en SQL y una sobrecarga mínima
- Te preocupa el uso de memoria (lectura paralela de Parquet, sin DataFrames intermedios)
- Necesitas el comportamiento exacto de pandas (orden de las filas, MultiIndex, dtypes)
- Dependes de que
first()/last()devuelvan realmente la primera/última fila - Usas
shift(),diff(),cumsum()que dependen del orden de las filas - Estás escribiendo pruebas que comparan la salida de DataStore con pandas
Diferencias de comportamiento
Orden de las filas
- Resultados de filtros
- Resultados de agregación de GroupBy
head()/tail()sin unsort_values()explícito- Agregaciones
first()/last()
sort_values() explícito:
Resultados de GroupBy
Agregación
Ejecución con una sola consulta SQL
groupby de ColumnExpr (p. ej., ds[condition].groupby('col')['val'].sum()) se ejecuta como una única consulta SQL en lugar del proceso de dos pasos utilizado en el modo pandas:
Comparación con el motor de ejecución
compat_mode) y el motor de ejecución (execution_engine) son ejes de configuración independientes:
Establecer
compat_mode='performance' configura automáticamente execution_engine='chdb', ya que el modo de rendimiento está diseñado para la ejecución de SQL.
Pruebas con modo de rendimiento
Ordenar y comparar (agregaciones, filtros)
Comprobación del rango de valores (primero/último)
Esquema y conteo (LIMIT sin ORDER BY)
Buenas prácticas
1. Actívalo al principio de tu script
2. Añada una ordenación explícita cuando el orden sea importante
3. Úselo para cargas de trabajo por lotes/ETL
4. Cambiar entre modos en una sesión
- Motor de ejecución — Selección del motor (auto/chdb/pandas)
- Guía de rendimiento — Consejos generales de optimización
- Diferencias clave con pandas — Diferencias de comportamiento