Aunque una bien programada Base de Datos de Firebird prácticamente no necesita de mantenimiento y puede usarse 24/7 (o sea: durante las 24 horas, los 7 días de la semana) sin problemas, siempre hay algunas tareas que se deben realizar con ella. A la persona que realiza dichas tareas se la conoce como “Administrador de la Base de Datos” y puede ser una persona distinta del programador o desarrollador porque sus tareas son muy diferentes.

Las tareas del Administrador son las siguientes:

  • Elegir la versión del Firebird que se instalará
  • Instalar el Servidor del Firebird
  • Determinar el alias que tendrá la Base de Datos
  • Parametrizar el archivo FIREBIRD.CONF
  • Analizar las estadísticas de la Base de Datos
  • Realizar los backups y los restores

Por lo tanto, el Administrador debe conocer:

  • Las características de cada versión del Firebird
  • Las diferencias entre esas versiones
  • La arquitectura MGA
  • El significado de las estadísticas de la Base de Datos
  • Las ventajas y desventajas de cada manera de realizar los backups y los restores
  • Que es y como funciona la recolección de basura

Lo ideal es detectar los problemas potenciales que podrían ocurrir antes de que realmente ocurran, para evitar dolores de cabezas. Para eso es de una gran ayuda analizar las estadísticas porque ellas nos dirán que hace el Servidor y cuando.

La arquitectura MGA (multigeneracional) usa varias versiones de cada registro para que los lectores no interfieran con los escritores ni los escritores con los lectores. Gracias a esta arquitectura, si un usuario se arrepiente de lo que estaba haciendo o si se detecta un error, se puede regresar la Base de Datos al estado consistente anterior. Sin embargo, la arquitectura MGA tiene una desventaja: puede ser causa de un bajo rendimiento cuando las transacciones están mal programadas. Analizando las estadísticas se pueden encontrar esas malas transacciones.

Otra ventaja de la arquitectura MGA es que los usuarios pueden continuar trabajando mientras se realiza un backup. O sea que no es necesario realizar los backups durante la hora del almuerzo o a la medianoche, como con otros sistemas.

En el archivo de backup se copian las definiciones de los índices, pero no los índices. Cuando se realiza la restauración esos índices son regenerados y todos los parámetros de las transacciones son reiniciados.

Para obtener un mejor rendimiento, lo aconsejable es que el backup se realice en otra computadora. Para comprobar que se tiene un backup válido hay que verificar que la fecha y la hora de la Base de Datos original sean diferentes a la fecha y la hora del backup y también restaurar el backup en otra computadora. Si la restauración se realizó con éxito, entonces se puede confiar en esa copia.

El backup se puede automatizar, para que se realice todos los días a determinada hora (o inclusive, varias veces cada día). Esto puede hacerse mediante las “tareas programadas” del Windows o con programas especializados.

La recolección de basura depende de un correcto manejo de las transacciones. Lo que se recolecta son datos y páginas de índices y el Firebird puede realizar esa tarea automáticamente. Cuando se recolecta la basura:

  • Se limpia la Base de Datos
  • Se reorganiza el espacio de memoria
  • La limpieza se ejecuta en segundo plano, sin interferir con las operaciones de los usuarios

Si no se recolecta la basura, el rendimiento de la Base de Datos se irá degradando poco a poco, hasta que llegará el momento en que realizar cualquier operación con ella tomará demasiado tiempo.

Resumen de tareas administrativas

  • Ninguna tarea administrativa es requerida si la Base de Datos está bien programada
  • Si el manejo de las transacciones es el correcto, ninguna tarea de mantenimiento se necesita
  • La recolección de basura depende de un manejo correcto de las transacciones
  • La recolección de basura afecta a los datos y a las páginas de índices