Su base de datos está en Stage 0: compró los fierros, pero nadie reprogramó el motor
En el tuning, agregar piezas sin recalibrar la ECU no da potencia; a veces la quita. Con SQL Server pasa exactamente lo mismo, y es la razón más común por la que un servidor nuevo no se siente más rápido.
Hace un tiempo, tuve la oportunidad de adquirir un Swift Sport. Y como todo el que compra un auto así, lo primero que hice fue leer foros referentes al tuning.
La escalera que uno encuentra siempre es la misma, y conviene verla con las piezas reales sobre la mesa, no en abstracto. Este es el 1.4 turbo, así que la ruta que ofrecen los talleres es más o menos ésta:
| Etapa | Qué se le hace de verdad |
|---|---|
| Bolt-on suelto | Filtro de alto flujo en la caja original. Se instala en veinte minutos. |
| Higiene | Decantador de aceite —obligado en un motor de inyección directa, donde el vapor de aceite ensucia las válvulas de admisión— y atención a la válvula de descarga. |
| Stage 1 | Solo reprogramación de la ECU. Ni una pieza nueva: más presión de turbo, más avance, otra curva de par. |
| Stage 2 | Admisión completa, downpipe menos restrictivo, intercooler más grande, escape. Y del lado que frena: balatas de mejor compuesto, discos ventilados, líneas aceradas y líquido de mayor punto de ebullición. Más otra reprogramación. |
| Stage 3 | Turbo híbrido, inyectores y bomba de mayor caudal, embrague reforzado, internos si se va en serio. Y otra reprogramación más. |
Lo interesante no es la escalera. Son dos cosas que casi nadie dice en voz alta.
La primera: el filtro de alto flujo no hizo nada
Un filtro de alto flujo deja entrar más aire al motor. Suena a que eso, por sí solo, debería dar más potencia. No la da.
No la da porque la computadora del auto no se enteró. La ECU sigue inyectando la misma gasolina, sosteniendo la misma presión de turbo y respetando los mismos límites que traía de fábrica. Usted le abrió la puerta al aire, pero el mapa que gobierna el motor sigue siendo el mismo mapa conservador de siempre.
Ese es, exactamente, el escenario que encontramos cuando una empresa nos llama porque «el sistema está lento aunque acabamos de comprar servidor nuevo».
La segunda: la reprogramación no es un escalón, es el hilo
Mire otra vez la tabla. La reprogramación aparece en Stage 1, otra vez en Stage 2 y otra vez en Stage 3.
No es que uno reprograme una vez y de ahí en adelante sean puros fierros. Es al revés: cada vez que cambia el hardware, hay que volver a calibrar el mapa, o el hardware nuevo no sirve de nada. Un downpipe menos restrictivo sin su mapa correspondiente es un tubo caro. Un turbo híbrido con el mapa del turbo anterior es, en el mejor de los casos, dinero dormido.
La recalibración no es una etapa de la escalera. Es lo que hace que la escalera exista.
El mapa de fábrica es conservador a propósito
Aquí está la parte que a la gente le cuesta creer: la armadora sabe que el motor puede dar más. No lo entrega porque el mapa de fábrica tiene que funcionar en el peor escenario imaginable: gasolina de dudosa calidad, servicios que nadie hace a tiempo, clima extremo, y un cliente que va a reclamar la garantía.
El motor de base de datos hace exactamente lo mismo, y por la misma razón. Los valores con los que sale de instalación están calibrados para que no falle nunca, ni siquiera en la laptop más modesta del inventario. No están calibrados para su operación, y algunos de ellos vienen sin cambios desde hace más de veinte años, pensados para servidores que hoy serían un teléfono.
Su motor de datos toma decisiones todo el tiempo sobre cosas como éstas:
- Cómo reparte una consulta entre los núcleos que tiene disponibles.
- Cuánta memoria se reserva para sí mismo y cuánta le deja al sistema operativo, al respaldo y al antivirus.
- Qué hace cuando un archivo se llena y necesita crecer.
- Dónde y cómo escribe los resultados intermedios de cada operación.
- Qué tan actualizada está la información con la que elige un plan de ejecución.
Ninguna de esas decisiones se arregla comprando hardware. Todas dependen de cómo esté calibrado el motor.
Cómo se ve el Stage 0 desde el escritorio del usuario
Sus usuarios no le van a decir «tenemos mal configurado el paralelismo». Le van a decir cosas como éstas, y probablemente ya las escuchó esta semana:
- El sistema se congela dos o tres segundos a media captura. Siempre a la misma hora.
- Cuando alguien saca un reporte pesado, todos los demás se frenan.
- El cierre de mes tarda el triple que hace dos años, con el mismo volumen de pólizas.
- Un reporte que corría en segundos ahora tarda minutos, y nadie lo modificó.
- El respaldo nocturno ya no alcanza a terminar antes del primer turno.
- Compraron servidor nuevo y se siente igual que el viejo.
Ese último punto es el diagnóstico más limpio que existe. Si los fierros cambiaron y la experiencia no, el cuello de botella nunca estuvo en los fierros.
Lo que nadie le advierte: los fierros sin recalibrar pueden empeorarlo
Esta es la parte incómoda, y es la razón por la que escribimos esta nota.
En el mundo automotriz hay un caso clásico: instalar una válvula de descarga venteada en un auto cuya computadora está contando ese aire para decidir cuánta gasolina inyectar. El auto no gana nada; empieza a tartamudear, a marchar rico y a apagarse en los cambios. Puso una pieza mejor y el auto quedó peor, porque la computadora sigue haciendo cuentas con un aire que ya se fue por otro lado.
En bases de datos ocurre el equivalente exacto, y es el caso que más vemos:
Una empresa migra a un servidor con muchos más núcleos. Nadie toca la configuración. El motor, que sigue creyendo que vive en la máquina anterior, ahora parte muchísimas más consultas entre muchísimos más núcleos. Aparece un costo de coordinación que antes no existía. El sistema queda más lento que en el servidor viejo, con el doble de fierros y el gasto inflado.
Duplicar los núcleos sin recalibrar no es neutral. Es un cambio que empeora el comportamiento, y el usuario final lo siente el lunes siguiente.
Stage 1 es, de lejos, la mejor relación costo-beneficio
Pregúntele a cualquiera que haya recorrido la escalera completa cuál escalón le dio más por su dinero. Todos contestan lo mismo: la reprogramación. Es la única etapa donde no se compra una sola pieza y el motor entrega notoriamente más, porque deja de estar frenado por un mapa que no fue escrito para él.
En su operación pasa igual. Stage 1 no requiere comprar nada: requiere medir la instalación y ajustar lo que el motor ya podía dar. Es el trabajo menos vistoso del catálogo y el que más se nota en la caja.
Stage 2 no es potencia: son frenos
Fíjese otra vez en la tabla. En Stage 2, la mitad de la lista no suma potencia. Los discos ventilados, las balatas de mejor compuesto y las líneas aceradas no lo hacen ir más rápido: lo hacen capaz de frenar de forma repetida sin que se le vaya el pedal al piso.
Nadie sube de etapa sin mejorar los frenos. Quien lo hace no termina con un auto rápido, termina con un auto peligroso.
En la operación es idéntico. Cuando el sistema empieza a soportar más carga, más usuarios y más integraciones, lo primero que hay que reforzar no es la velocidad: es la capacidad de detenerse bien. Respaldos que alguien haya restaurado de verdad al menos una vez. Alta disponibilidad. Monitoreo que avise antes que el usuario. Posibilidad de revertir un cambio que salió mal.
Una empresa que sube de etapa sin frenos no se vuelve rápida. Se vuelve frágil.
Stage 3 no es para todos, y decirlo es parte del trabajo
Un Stage 3 serio deja de ser un auto de diario. Se vuelve incómodo, exige atención constante y cuesta mantenerlo.
Hay operaciones que efectivamente necesitan reingeniería profunda: separar la carga analítica de la transaccional, particionar, rediseñar el modelo de datos. Y hay muchas más a las que les proponen ese proyecto cuando en realidad seguían en Stage 0. Recomendar Stage 3 antes de haber hecho Stage 1 no es ambición: es vender de más.
Y a veces el motor sí trae un limitador de fábrica
Hay que ser honestos con el límite de la analogía. Si su instalación corre sobre una edición Express del motor de base de datos —cosa frecuente en instalaciones de CONTPAQi que fueron creciendo sin que nadie lo revisara—, existen topes que ninguna recalibración levanta: memoria limitada por licencia, un máximo de núcleos utilizables y un tamaño máximo por base de datos.
Cuando ese es el caso, se lo decimos con esas palabras. Ahí sí toca cambiar de motor, y ningún ajuste va a sustituirlo. Pero conviene saberlo después de medir, no antes, porque la mayoría de las instalaciones que revisamos todavía tenían mucho margen sin gastar un peso.
Por qué no hay una lista de ajustes en esta nota
Podríamos haber cerrado con diez valores para que su equipo los capture el lunes. No lo hicimos, y no es por reservarnos nada: es porque esa lista no existe.
Un mapa de ECU se hace para un motor. Nadie flashea un mapa genérico bajado de un foro; el que lo hace se queda sin motor. El mapa depende del turbo que trae ese auto, del combustible que va a cargar, del clima donde vive y de lo que el dueño quiere del coche.
Su motor de datos es igual. La calibración correcta depende de cuántos núcleos reales tiene, de cuánta memoria comparte con qué, de cómo está el almacenamiento, de si la carga es de captura o de reportes, y de a qué hora respira su operación. Los mismos valores que arreglan una instalación descomponen la de al lado. Publicar una receta sería tan irresponsable como vender un mapa único para todos los Swift del país.
Nadie reprograma sin dinamómetro
Ningún taller serio le sube un mapa al auto sin medirlo antes. Se hace una corrida en el banco de potencia, se registra la línea base, se recalibra, y se vuelve a medir. Sin eso no hay reprogramación: hay ocurrencia.
Así trabajamos. Primero medimos su instalación como está y le entregamos esa línea base por escrito. Después recalibramos, con los valores que correspondan a su motor. Y luego volvemos a medir contra el mismo punto de partida, para que la mejora esté en números y no en percepciones.
Si compró los fierros y el sistema sigue sintiéndose igual de lento, lo más probable es que su motor nunca haya salido de Stage 0.
Eso tiene arreglo, y casi siempre cuesta menos que el servidor que ya compró.