H2 (base de données)

H2 (base de données)
H2 (base de données)
H2 Database Engine
Environnements Multiplate-forme
Type Base de données relationnelle
Licence Mozilla Public License ou Eclipse Public License
Site web [1]

H2 est un système de gestion de base de données relationnelle écrit en Java. Il peut être intégré à une application Java ou bien fonctionner en mode client-serveur[1]. Son fichier jar est petit : environ 1 Mo[2].

C'est un logiciel open source distribué en licences Mozilla Public License (version modifiée[3]) ou Eclipse Public License.

Sommaire

Description

H2 supporte un sous-ensemble du standard SQL[4]. Il propose des interfaces de programmation (APIs) SQL et JDBC ; toutefois il peut aussi utiliser le pilote ODBC PostgreSQL et se comporter en serveur PostgreSQL[5].

Les tables peuvent être créées en mémoire vive ou sur disque. Elles peuvent être persistantes ou temporaires. Les index sont des tables de hachage et des arbres pour les tables en mémoire, et des arbres B pour les tables sur disque[6]. Toutes les manipulations de données sont transactionnelles. Le verrouillage au niveau table, ainsi la concurrence multiversion sont implémentés. Le protocole de Commit en 2 phases est aussi supporté, mais les APIs standard de transactions distribuées ne sont pas implémentées. La sécurité est assurée par : contrôle d'accès basé sur les rôles, chiffrement SHA-256 des mots de passe, chiffrement des données avec AES ou XTEA. Les connexions SSL / TLS sont supportées en mode client-serveur ainsi que via l'application en ligne de commande (console) [7].

Deux systèmes de recherche plein texte sont inclus : une implémentation native, et une autre utilisant Apache Lucene[8].

La base de données se protège des injections SQL en réclamant l'utilisation d'expressions avec paramètres formels. Cette fonctionnalité est appelée disabling literals (désactivation des valeurs littérales) [9].

Depuis la version 1.1.111, la base "en mémoire" H2 peut tourner au sein de Google App Engine[10].

Utilitaires

Sont inclus:

  • Un serveur web intégré
  • Une console web
  • Des outils en ligne de commande pour
    • démarrer ou arrêter un serveur
    • sauvegarder ou restaurer une baseCommand Line Tools, h2database.com</ref>
  • Une console en ligne de commande[11].

Historique

Le développement de H2 a débuté en mai 2004, et fut publié en décembre 2005. L'auteur du moteur est Thomas Mueller. Il a également développé le SGBD Java Hypersonic SQL [2]. Le nom H2 signifie Hypersonic 2 ; toutefois H2 a été écrit "from scratch"[12],[13] et n'a pas de code commun avec Hypersonic ou HSQLDB.

Voir aussi

Références

  1. Connection Modes, h2database.com
  2. Jar File Download, h2database.com
  3. La modification de la MPL consiste en un en-tête de fichier plus court, et le nom de la licence : voir License, h2database.com
  4. SQL Grammar, h2database.com
  5. ODBC Driver, h2database.com
  6. Creating tables, h2database.com
  7. Security Protocols, h2database.com
  8. Fulltext Search, h2database.com
  9. Protection against SQL Injection, h2database.com
  10. H2 Database on GAE, gaevfs
  11. The Shell Tool, h2database.com
  12. History of the H2 Database Engine, h2database.com
  13. Write Your Own Database, Again, thecodist.com

Liens externes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article H2 (base de données) de Wikipédia en français (auteurs)

Игры ⚽ Нужна курсовая?

Regardez d'autres dictionnaires:

  • Base De Données — Pour les articles homonymes, voir base, BD, BDD et DB. Schéma de la base de données relationnelle …   Wikipédia en Français

  • Base de donnees — Base de données Pour les articles homonymes, voir base, BD, BDD et DB. Schéma de la base de données relationnelle …   Wikipédia en Français

  • Base de données en ligne — Base de données Pour les articles homonymes, voir base, BD, BDD et DB. Schéma de la base de données relationnelle …   Wikipédia en Français

  • Base de donnees chimiques — Base de données chimiques Une base de données chimiques est une base de données (éventuellement bibliographique) spécifiquement dédiée à l information chimique. La plupart des bases de données chimiques stockent des informations sur des molécules …   Wikipédia en Français

  • Base De Données Relationnelle — Système de gestion de Base de données Modèles: Base de données hiérarchique Base de données réseau Base de données relationnelle Une base de données relationnelle est une base de données structurée suivant les principes de l’algèbre relationnelle …   Wikipédia en Français

  • Base de donnees relationnelle — Base de données relationnelle Système de gestion de Base de données Modèles: Base de données hiérarchique Base de données réseau Base de données relationnelle Une base de données relationnelle est une base de données structurée suivant les… …   Wikipédia en Français

  • Base de données relationnel — Base de données relationnelle Système de gestion de Base de données Modèles: Base de données hiérarchique Base de données réseau Base de données relationnelle Une base de données relationnelle est une base de données structurée suivant les… …   Wikipédia en Français

  • Base de données relationnelles — Base de données relationnelle Système de gestion de Base de données Modèles: Base de données hiérarchique Base de données réseau Base de données relationnelle Une base de données relationnelle est une base de données structurée suivant les… …   Wikipédia en Français

  • Base De Données Hiérarchique — Système de gestion de Base de données Modèles: Hiérarchique Base de données réseau Base de données relationnelle Une base de données hiérarchique est une base de données dont le système de gestion lie les enregistrements dans une structure… …   Wikipédia en Français

  • Base de donnees bibliographiques — Base de données bibliographiques Une base de données bibliographiques est une base de données qui contient des notices bibliographiques. Cette définition s applique à toute catégorie d objets bibliographiques : livres, collections, revues,… …   Wikipédia en Français

  • Base de donnees hierarchique — Base de données hiérarchique Système de gestion de Base de données Modèles: Hiérarchique Base de données réseau Base de données relationnelle Une base de données hiérarchique est une base de données dont le système de gestion lie les… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”