Después de dos años y medio de desarrollo se dio a conocer el lanzamiento de la nueva versión de Firebird 5.0, versión en la cual se presentan diversas mejoras, tales como mejoras de optimización, mejoras de soporte, asi como también nuevas funciones y paquetes integrados, entre otras cosas más.
Para quienes desconocen de Firebird, deben saber que esta es sistema de gestión de bases de datos relacionales SQL gratuito y de código abierto basado en la edición de código abierto InterBase 6.0. Desarrollado en C y C++, Firebird es compatible con las principales plataformas de hardware y software, incluidas Windows, Linux y Mac OS X. Firebird ofrece muchas funciones estándar ANSI SQL, permite operaciones OLTP y OLAP simultáneas a través de su arquitectura multigeneracional y admite procedimientos almacenados y activadores
Sobre Firebird
El Proyecto Firebird es un proyecto comercialmente independiente de programadores, asesores técnicos y partidarios de C/C++ que desarrollan y mejoran un sistema de gestión de bases de datos relacionales multiplataforma y dentro de sus características más importantes se destacan las siguientes:
- Soporte completo de procedimientos almacenados y desencadenadores.
- Transacciones totalmente compatibles con ACID
- Integridad referencial
- Arquitectura multigeneracional
- Lenguaje interno con todas las funciones para procedimientos almacenados y activadores (PSQL)
- Soporte para funciones externas (UDF)
- Poca o ninguna necesidad de administradores de bases de datos especializados
- Versión integrada de un solo archivo opcional: excelente para crear catálogos en CDROM, versiones de usuario único o
- de evaluación de aplicaciones
- Docenas de herramientas de terceros, incluidas herramientas administrativas GUI, herramientas de replicación, etc.
- Multiplataforma
- Copias de seguridad incrementales
- Implementación completa del cursor en PSQL
- Tablas de seguimiento
Principales novedades de Firebird 5.0
Esta nueva versión de Firebird 5.0 viene con varias mejoras y nuevas características clave, las cuales se destacan a continuación:
- Operaciones Multihilo: Firebird ahora puede ejecutar algunas tareas utilizando múltiples subprocesos en paralelo. Actualmente, se implementa la ejecución paralela para las tareas de barrido y creación de índices. Se admite la ejecución paralela para el barrido automático y manual. Para manejar una tarea con múltiples subprocesos, el motor ejecuta subprocesos de trabajo adicionales y crea archivos adjuntos de trabajo internos. De forma predeterminada, la ejecución paralela no está habilitada.
- Soporte para índices parciales: Se ha agregado soporte para índices parciales, que incluyen solo registros seleccionados que cumplen con las condiciones especificadas al crear el índice,´es decir, un índice ahora puede declarar una condición que define el subconjunto de registros que se indexarán.
- Nueva sintaxis: En las declaraciones SELECT WITH LOCK, UPDATE y DELETE se ha implementado la sintaxis «SKIP LOCKED», que permite omitir los registros para los cuales ya se ha establecido un bloqueo en el momento de enviar la consulta.
- Actualización en ODS: Se ha añadido la posibilidad de actualizar la base de datos a una última versión menor de ODS (13.1) sobre la marcha (inline update) sin crear y restaurar desde una copia de seguridad.
- Caché de declaraciones compiladas: se ha implementado una caché de declaraciones SQL compiladas, que se gestiona automáticamente. De forma predeterminada, el almacenamiento en caché está habilitado; el umbral de almacenamiento en caché lo define el parámetro MaxStatementCacheSize en firebird.conf. Se puede desactivar estableciendo MaxStatementCacheSize en cero. La caché se mantiene automáticamente y las declaraciones almacenadas en caché se invalidan cuando es necesario (generalmente cuando se ejecuta alguna declaración DDL).
- Interfaz de perfilado SQL y PSQL: Se ha añadido una interfaz para el perfilado de SQL y PSQL, permitiendo evaluar el tiempo de ejecución de cada consulta y acumular estadísticas. Se implementa con un paquete de sistema en el motor que pasa datos a un complemento de generación de perfiles.
- Retorno de Múltiples Filas con RETURNING: Se ha proporcionado la capacidad de devolver varias filas con la expresión RETURNING, si la expresión DML especificada afecta a varias filas.
- Nuevas funciones: Se han añadido nuevas funciones incorporadas, como UNICODE_CHAR y UNICODE_VAL, y se ha agregado el paquete de sistema RDB$BLOB_UTIL con operaciones de BLOB para módulos PSQL.
- Mejoras en el algoritmo de compresión: A partir de ODS 13.1, el motor utiliza un método de compresión RLE avanzado y con ello se ha mejorado el algoritmo de compresión de registros para lograr una compresión más eficiente de secuencias de datos repetitivas, reduciendo así la sobrecarga de almacenamiento. Esto mejora la compresión de campos VARCHAR largos (especialmente codificados en UTF8) que se rellenan sólo parcialmente.
- Soporte para cursores bidireccionales: Se ha añadido soporte para cursores bidireccionales (scrollable) al realizar acceso remoto a la base de datos.
Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.
Siempre leo todos los artículos del blog, pero hoy quiero hacer un comentario muy especial para recomendar Firebird. La uso desde que Borland liberó el código fuente de Interbase 6, en el cual se basó Firebird.
Muy recomendable, ocupa poquísima memoria y espacio en disco, tiene una implementación de SQL muy completa y es muy eficiente.
Saludos, gente.