Tercera entrega de la serie ClickHouse desde cero a pro. Tiempo de lectura estimado: 12 minutos. Ya tienes ClickHouse funcionando (entrega I) y sabes diseñar tablas con tipos adecuados y MergeTree bien pensado (entrega II). Ahora toca la parte divertida: escribir consultas que, con PostgreSQL, no te habrías planteado ni intentar. Este post no pretende listar todas las funciones (hay cientos), sino mostrar las familias que más usarás y las que te van a sorprender si vienes del SQL tradicional. Si aún no tienes claro por qué ClickHouse puede ser necesario en tu stack, léete ClickHouse para desarrolladores que vienen...
Segunda entrega de la serie ClickHouse desde cero a pro. Tiempo de lectura estimado: 11 minutos. En la entrega anterior levantamos un ClickHouse local, creamos una tabla con MergeTree y metimos un millón de filas. En este post vamos al grano: qué tipos de datos existen, por qué los strings de baja cardinalidad son especiales, y cómo funciona realmente el motor MergeTree por dentro. Si entiendes estas dos cosas (tipos y MergeTree), ya estás por encima del 80% de la gente que usa ClickHouse a diario. El sistema de tipos ClickHouse tiene un sistema de tipos estático y fuerte, con...
Primera entrega de la serie ClickHouse desde cero a pro. Tiempo de lectura estimado: 9 minutos. Arrancamos una serie de cinco posts sobre ClickHouse. La idea es ir de no haber tocado nunca ClickHouse a ser capaz de diseñar, optimizar y operar un cluster en producción. Nada de teoría de relleno: lo que se usa el día que tu empresa te dice "oye, tenemos 500 millones de CDRs mensuales, ¿montamos analytics?". Si todavía tienes dudas sobre cuándo tiene sentido usar ClickHouse frente a PostgreSQL, el post ClickHouse para desarrolladores que vienen de PostgreSQL es una buena introducción previa. En esta...
ClickHouse es una base de datos columnar diseñada para análisis de grandes volúmenes de datos. Si vienes de PostgreSQL, muchas cosas te van a resultar familiares porque ClickHouse habla SQL. Pero las diferencias internas son enormes y si las ignoras vas a sufrir. Este post explica ClickHouse desde la perspectiva de alguien que ya sabe PostgreSQL. Qué problema resuelve PostgreSQL es una base de datos de propósito general optimizada para transacciones: inserta una fila, lee una fila, actualiza una fila. Es excelente para la operativa diaria de una aplicación. ClickHouse resuelve un problema diferente: consultas analíticas sobre millones o miles...
PostgreSQL es la base de datos que más uso y la que más respeto. Es potente, fiable y tiene funcionalidades que mucha gente no conoce porque se queda en el SELECT * FROM y poco más. Estas son diez consultas que uso regularmente y que creo que todo desarrollador debería tener en su repertorio. 1. CTEs (Common Table Expressions) Las CTEs te permiten escribir subqueries con nombre, haciendo que las consultas complejas sean legibles: Sin la CTE, esto sería una subquery anidada ilegible. Con ella, primero calculas los ingresos mensuales y luego los comparas con el mes anterior. Cada paso...