typestar

Planes y rendimiento

17 pasos en 5 series de SQL.

Leer EXPLAIN, que es la diferencia entre adivinar y saber. Luego índices, incluidos los compuestos, los parciales y los de cobertura, y después reescribir consultas para que el planificador pueda usarlos.

Las transacciones lo cierran. Diecisiete pasos, y la lección recurrente es que una consulta es rápida porque el planificador encontró un índice, no porque se veía ordenada.

Empieza este tour

Leer un plan

Índices

  • ÍndicesUn índice cambia velocidad de escritura y disco por búsquedas rápidas en una columna.
  • Índices compuestos y orden de columnasUn índice de dos columnas es una sola lista ordenada: solo la columna inicial se puede buscar.
  • Índices parcialesSi la consulta siempre filtra igual, el índice no necesita las demás filas.
  • Indexar una expresiónNo puedes indexar una columna y luego buscar una función de ella. Indexa la función.
  • Índices coveringCuando el índice ya contiene cada columna que la consulta quiere, la tabla ni se toca.

Hacerla más rápida

Transacciones

  • TransaccionesUna transacción hace que varias sentencias aterricen juntas o no aterricen.
  • SavepointsUn savepoint es una transacción dentro de otra, así un paso puede fallar solo.
  • UpsertINSERT ON CONFLICT escribe una fila o actualiza la que ya estaba.
  • Cómo una escritura maneja un conflictoIgnorarlo, reemplazar la fila, o actualizar las partes que querías actualizar.
  • Pragmas de conexiónUn puñado de pragmas decide cómo una conexión de SQLite cambia seguridad por velocidad.

Bis

  • index_review.sqlPreguntarle a la base qué índices tiene, cuáles usa y cuáles solo está pagando.
  • slow_query_clinic.sqlUn reporte escrito de tres formas: subconsulta correlacionada, join y función de ventana.

Los otros tours de SQL