Desafío 1brc

From: Jairo Graterón <jgrateron(at)gmail(dot)com>
To: Lista PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Desafío 1brc
Date: 2024-01-09 02:59:46
Message-ID: CALnU-rNtXDjRrOFw9ZrBpmm=rm2rW7FNF39SVTTOSbCEfCsoVQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Saludos lista

Hay un reto para crear un algoritmo en java para para recuperar valores de
medición de temperatura de un archivo de texto y calcular la temperatura
mínima, media y máxima por estación meteorológica
https://www.morling.dev/blog/one-billion-row-challenge/

Pero se están haciendo implementaciones en otros lenguajes y por supuesto
en bases de datos por ejemplo https://ftisiot.net/posts/1brows/ y
https://rmoff.net/2024/01/03/1%EF%B8%8F%E2%83%A3%EF%B8%8F-1brc-in-sql-with-duckdb/

Ya inserté los mil millones de registros en mi máquina y al realizar la
consulta
[image: image.png]
Tarda casi 2 minutos, así que seguí investigando como mejorar el tiempo y
al encontrar estas otras pruebas
https://gist.github.com/FranckPachot/50a6a491b85b0ddb3da6399d54653085 me
llamó la atención ésta línea
select /*+ parallel(8) gather_plan_statistics*/

Revisando postgres tiene un parámetro para aumentar el número de workers en
paralelo si la consulta lo necesita max_parallel_workers_per_gather

[image: image.png]
Mejoró bastante, 40 segundos menos.

*¿Qué otras optimizaciones se podrían realizar en postgres para disminuir
el tiempo?*

Con Apache Pinot tarda aprox 1.9s
https://hubertdulay.substack.com/p/1-billion-row-challenge-in-apache?r=46sqk&utm_campaign=post&utm_medium=web

Otro tardó 20 segundos
https://twitter.com/_TylerHillery/status/1742971310123487429

Por supuesto eso depende de las especificaciones del equipo pero es
interesante que compartan sus experiencias.

Las especificaciones de mi máquina son:
Ryzen 5 6 cores/12 Threads a 3.0ghz
Disco nvme KINGSTON
Ubuntu 22.04
Postgresql 14

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Horacio Miranda 2024-01-09 03:19:15 Re: Desafío 1brc
Previous Message Alvaro Herrera 2024-01-08 16:21:06 Re: lista de stopwords