PostgresBench: Un Benchmark Reputable para Servicios de PostgreSQL
ClickHouse ha desarrollado PostgresBench, una herramienta de benchmarking para evaluar servicios de PostgreSQL. El objetivo es comparar el rendimiento de diferentes servicios de PostgreSQL de manera transparente y reproducible.
La herramienta utiliza una metodología similar a la de ClickBench, que es un benchmarking ampliamente utilizado para bases de datos analíticas. PostgresBench se enfoca en workloads transaccionales y utiliza el estándar pgbench como base. La herramienta simula transacciones concurrentes con escrituras y actualizaciones frecuentes, lo que es típico en patrones de transacciones comunes.
“La herramienta simula transacciones concurrentes con escrituras y actualizaciones frecuentes, lo que es típico en patrones de transacciones comunes”
Los parámetros de benchmarking utilizados incluyen 256 clientes y 16 threads, con cada ejecución durando 10 minutos. Se probaron dos factores de escala: 6849 (~100 GB) y 34247 (~500 GB), que corresponden a tamaños de conjuntos de datos típicos en implementaciones de PostgreSQL. Los métricos capturados incluyen la tasa de transacciones promedio, la latencia promedio, la latencia P95 y la latencia P99.
La herramienta busca ser justa y transparente, permitiendo que cualquier persona pueda validar los resultados o enviar mejoras. Los resultados se publican en un repositorio, junto con la configuración exacta utilizada para cada sistema. La herramienta también permite que los usuarios contribuyan y envíen sus propios resultados o sugieran mejoras. Con PostgresBench, ClickHouse busca proporcionar una herramienta estándar para evaluar el rendimiento de servicios de PostgreSQL y ayudar a los desarrolladores a tomar decisiones informadas sobre su elección de base de datos.