25 ans d'expérience en SQL, je pratique Firebird depuis sa 1ère version et avant, j'ai connu Interbase 6.0
Ayant pratiqué DB2 sur MVS, DB2UDB, Oracle, SQL Serveur, MySQL, Interbase, Firebird et PostGre
Excepté en cas de très gros volumes de données , ma préférence va et de loin à Firebird.
Firebird s'installe en 5 minutes, une configuration "pointue" est rarement nécessaire et si elle l'est elle se fait aisément.
FireBird et Interbase disposent des procédures stockées depuis très très longtemps, bien avant MySQL.
Il est impossible sur Firebird de créer une procédure stockée contenant une erreur SQL (un colonne absente d'une table).
Il est impossible sur Firebird de supprimer par erreur un objet référencé par un autre.
Un backup est rapide , une restauration, tout autant.
J'ai pu comparer les performances sur un même soft entre une version sur MySQL et une version sur Firebird avec les mêmes tables, les mêmes indexes : Firebird l'emporte haut la main jusque des volumes importants avant de se faire dépasser.
Firebird/Interbase est SQL-COMPLIANT a presque 100% : pas de fonctions ou codes "spécifique" qui ne soit pas portable sur un autre SGBD.
Et pour couronner le tout, nous avons des applications qui utilisent des procédures stockées en cascade pour les mise à jour développées initialement sous Firebird 1.0.
La base de données a été migrée au fur et à mesure (aujourd'hui en Firebird 3.4) par un simple backup/restore et aucune modification de code n'a été nécessaire !
En 20 ans d'exploitation 7/7, H24 de dizaines de base de données clientes sous Firebird, nous n'avons jamais connus aucune altération de données !
Et ce, malgré de grosses migrations (d'OS, de version d'OS, de version de Firebird etc...)
Alors que la migration de MySQL 5.6 aux suivantes a été un enfer. Qu'aujourd'hui, une installation form sratch de MySQL et sa configuration n'a rien d'évident et cela change presque à chaque version. Par défaut, une petite base de données MySQL nous fait un processus qui squatte 1Go de RAM (sauf à configurer finement MySQL) tandis que sur Firebird, le process occupe 10 fois moins de mémoire !
Et parlons des outils : MySQL Workbench est une vrai usine à bugs inutilisable sans écran Full HD (des boutons essentiels sont cachés en faible résolution). Alors que Flamerobin ou EMS Firebird font très bien le job sans bugs. Pire, ils contiennent par défaut les outils affichant les dépendances des objects DDL ce que MySQL ne sait pas faire !!! Il faut faire une requête à la main !
Evidement il y a DB2 ou Oracle et Embarcadero Rapid SQL mais là, c'est un autre monde où le ticket d'entrée n'est pas donné pour une PME/TPE.
Je ne reproche que 3 choses à Firebird :
- le peu de fonctions internes disponibles (compensées par la possibilité de développer des fonctions externes en C ou en Pascal)
- les difficultés à débuguer les fonctions externes qu'on a personnalisé.
- le fait que la base de données des utilisateurs soit centralisée.
8 |
0 |