Fiche technique | |
---|---|
Type de produit : | Langage de programmation de base de données |
Auteur : | Jim Starkey (Embarcadero) |
Licence | Propriétaire |
Date de publication : | 1984 à maintenant |
Introduction
L'InterBase est une base de données SQL développé à l'origine part Jim Starkey, puis vendu à Ashton-Tate, puis racheté par Borland. Elle est aujourd'hui la propriété de Embarcadero Technologies. Les premières versions de Delphi recommandait d'utiliser cette base de données.
InterBase est un système de gestion de bases de données relationnelles (SGBDR) se distinguant par sa légèreté, sa simplicité de déploiement, et ses performances, particulièrement adapté aux environnements embarqués et aux petites applications nécessitant une base de données robuste. Voici un aperçu de ses principales caractéristiques :
- Légèreté et faible empreinte mémoire : InterBase est conçu pour avoir une faible empreinte mémoire, ce qui le rend adapté pour les applications embarquées, les appareils mobiles et les environnements avec des ressources limitées.
- Multi-plateforme : Il fonctionne sur plusieurs systèmes d'exploitation, y compris Windows, Linux, macOS, et même Android et iOS, ce qui le rend polyvalent pour des solutions multi-environnements.
- Architecture client-serveur ou autonome : InterBase peut fonctionner en mode client-serveur (avec un serveur de base de données centralisé) ou en mode embarqué (autonome, dans une application sans serveur séparé).
- Support des transactions ACID : InterBase offre un support complet des transactions ACID (Atomicité, Cohérence, Isolation, Durabilité), assurant l'intégrité des données et le traitement sécurisé des transactions.
- Support multi-générationnel (MGA) : InterBase utilise une architecture MGA (Multi-Generational Architecture) permettant des lectures et écritures simultanées sans blocage, améliorant ainsi les performances dans les environnements à forte concurrence.
- Sécurité avancée :
- Chiffrement des données au repos et en transit (prise en charge du chiffrement AES-256) pour protéger les données sensibles.
- Authentification basée sur les rôles et contrôle d'accès finement configurable.
- Support pour authentification utilisateur unifiée avec des services d'annuaire LDAP.
- Sauvegardes et récupération à chaud :
- InterBase prend en charge les sauvegardes à chaud, permettant de sauvegarder la base de données sans interrompre son utilisation.
- Il dispose également de mécanismes de récupération après sinistre pour assurer la continuité des opérations.
- Synchronisation de données = InterBase ToGo et InterBase Server : Grâce à la fonctionnalité Change Views, InterBase permet de capturer les modifications des données sans avoir à journaliser chaque transaction. Cela permet de synchroniser efficacement les données entre des bases de données locales et à distances.
- Performance et indexation :
- Support des index actifs et des plans d'exécution permettant d'optimiser les requêtes SQL pour des performances accrues.
- Compression des données pour réduire la taille de la base de données et améliorer la vitesse de transfert des données.
- Support des types de données variés : InterBase prend en charge une large gamme de types de données : numériques, chaînes de caractères, BLOB (Binary Large Objects), et JSON, ce qui permet de stocker des documents JSON natifs et de travailler efficacement avec des structures semi-structurées.
- Support de SQL :
- InterBase supporte SQL standard avec des fonctionnalités avancées telles que les déclencheurs, les procédures STORED, les vues, et les contraintes de clef étrangère.
- Il permet également d'exécuter des scripts SQL en utilisant des procédures stockées pour automatiser les tâches courantes.
- Mode embarqué (InterBase ToGo) : La version InterBase ToGo est une édition légère pouvant être intégrée directement dans des applications sans nécessiter un serveur de base de données indépendant. Cela la rend idéale pour des déploiements embarqués ou mobiles.
- Compatibilité avec les environnements de développement :
- Support des outils de développement RAD, tels que Delphi et C++Builder, facilitant le développement rapide d'applications avec des intégrations profondes.
- Compatible avec des environnements de développement comme .NET, Java, et Python, grâce à des bibliothèques et pilotes disponibles.
- Gestion de la réplication des données : Réplication intégrée permettant la duplication et la mise à jour des données entre plusieurs bases de données. Ceci est crucial pour les systèmes nécessitant une haute disponibilité et la tolérance aux pannes.
- Interopérabilité avec des bases de données externes : Possibilité de créer des liaisons vers des bases de données externes et de synchroniser les données, permettant de s'intégrer facilement dans des architectures existantes.
- Mise à l'échelle : Bien qu'InterBase soit optimisé pour des déploiements plus petits, il est également capable de gérer des bases de données de plusieurs téraoctets et de supporter des charges de travail croissantes, avec des fonctionnalités pour ajuster les performances en fonction de la demande.
- Licence flexible : Disponible sous plusieurs licences, adaptées à différents types d'utilisation (versions commerciales pour les grandes entreprises, InterBase ToGo pour les déploiements embarqués,...).
- Fonctionnalités de journalisation et d'audit : Audit des transactions pour suivre les changements effectués dans la base de données, permettant une traçabilité des opérations et une meilleure gestion des conformités réglementaires.
Remarques
- Programmation : L'approche de cette base de données SQL réside dans le fait qu'elle est relativement beaucoup plus simple que d'autres, ainsi il n'y a presque pas de fonction de développé pour cette base de données. En revanche, elle est fournit toutes les possibilités pour en développé de nouvelles et d'étendre ses possibilités.
- Licence : InterBase est aujourd'hui commercialisé sous licence propriétaire par Embarcadero Technologies, en détenant les droits depuis 2008, après avoir acquis les actifs liés aux produits Delphi, C++Builder et InterBase auprès de Borland. Cependant, une version open-source d'InterBase, appelée Firebird, est dérivée de la version 6.0 d'InterBase, publiée sous licence publique par Borland en 2000.
Bibliothèques ou cadre d'application
Voici les principales bibliothèques ou cadres d'application pour communiquer avec InterBase en fonction des langages de programmation :
Langage | Bibliothèque ou cadres d'application |
---|---|
.NET | Entity Framework, InterBase ADO.NET Driver |
C++Builder | FireDAC, IBX (InterBase Express) |
Delphi | FireDAC, IBX (InterBase Express) |
Free Pascal | ZeosLib |
Java | JDBC |
Node.js | node-firebird |
Perl | Perl DBD::Oracle |
PHP | PDO_InterBase |
Python | KInterbasDB |