Alimentando el motor OLAP: Ingesta masiva por lotes con ClickHouseBulkStep.
ClickHouse es una bestia columnar, pero tratarlo como MySQL haciendo inserts fila a fila tumbará tu clúster. ClickHouseBulkStep encapsula la inserción masiva óptima en un paso reutilizable.
Así se utiliza ClickHouseBulkStep & OLAP Pipelines en un pipeline de producción con wpipe-steps:
from wpipe import Pipeline
from wpipe_steps.database import ClickHouseBulkStep
pipeline = Pipeline(pipeline_name="telemetry_ingest")
pipeline.set_steps([
ClickHouseBulkStep.as_step(
name="insert_telemetry_batch",
host="clickhouse.production.internal",
database="analytics",
table="device_telemetry",
data_key="telemetry_batch",
response_key="clickhouse_status"
)
])
sample_batch = [
{"sensor_id": f"S-{i}", "temp": 24.5 + i, "timestamp": "2026-09-19 12:00:00"}
for i in range(10000)
]
result = pipeline.run({"telemetry_batch": sample_batch})
print(f"Inserted {result['clickhouse_status']['count']} records successfully!")
Por qué wpipe-steps marca la diferencia:
- 196 pasos catalogados que cubren Redis, ClickHouse, MySQL, WAF, S3, Docker e IA local con HuggingFace.
- Carga perezosa con arranques instantáneos en menos de 100ms.
- Interfaz factory limpia y consistente con
.as_step().
¡Visita el repositorio completo en GitHub!
Top comments (0)