TigerBeetle es una base de datos especializada en libros mayores financieros escrita en Zig que prescinde de las técnicas habituales de escalado horizontal para centrarse en lo que sus creadores consideran el verdadero cuello de botella: el núcleo del sistema operativo, la fragmentación de memoria y la latencia de cola impredecible. El artículo desglosa los tres pilares arquitectónicos que permiten a esta herramienta superar los cientos de miles de transacciones por segundo con latencias deterministas inferiores al milisegundo.
El primero es la asignación estática de memoria. En lugar de reservar y liberar bloques durante el funcionamiento, TigerBeetle calcula en el arranque toda la memoria que necesitará —búferes de red, caché de almacenamiento, logs y máquinas de estado de consenso— y congela el asignador. Esto elimina la fragmentación del montón y los picos de latencia provocados por el recolector de basura, y permite alinear los bloques con líneas de caché de 64 bytes y páginas de 4 KB para minimizar fallos de TLB. El precio es la rigidez: los límites máximos de conexiones, tamaño de lote y caché deben definirse al inicio; si se superan, el sistema aplica contrapresión o rechaza peticiones.
El segundo pilar es una ruta de E/S de copia cero (zero-copy) que evita el page cache del kernel mediante la combinación de O_DIRECT e io_uring en Linux. Los datos llegan de la red a un búfer estático registrado en io_uring y se persisten en el WAL sin copiar entre espacios de memoria: la controladora NVMe los lee directamente por DMA.
El tercero es el uso de structs de tamaño fijo de 128 bytes para cuentas y transferencias, múltiplo de la línea de caché y del sector de disco. Su layout en memoria coincide con el de disco, lo que elimina serialización. El artículo ilustra este patrón con un fragmento de código Zig que define la estructura Account con alineación explícita. En conjunto, el texto sirve como guía de patrones de ingeniería de bajo nivel aplicables a otros sistemas de alto rendimiento.
