H2 (DBMS)

H2 (DBMS)

Infobox Software
name = H2 Database Engine



caption = H2 web console running in Internet Explorer 7.0
collapsible = yes
developer =
latestmrelease version = 1.1.100
latest release date = release date|2008|10|04
latest preview version =
latest preview date =
operating system = Cross-platform
programming language = Java
genre = Relational Database Management System
license = Mozilla Public License or Eclipse Public License
website = http://www.h2database.com

H2 is a relational database management system written in Java. It can be embedded in Java applications or run in the client-server mode. The disk footprint is about 1 MB.

The software is available as open source software under modified versions of the Mozilla Public License or the Eclipse Public License. The modifications change the jurisdiction of the licenses to Switzerland.

Main Features

A subset of the SQL (Structured Query Language) standard is supported. The main programming APIs are SQL and JDBC, however the database also supports using the PostgreSQL ODBC driver by acting like a PostgreSQL server.

It is possible to create both in-memory tables, as well as disk-based tables. Tables can be persistent or temporary. Index types are hash table and tree for in-memory tables, and b-tree for disk-based tables. All data manipulation operations are transactional. Table level locking and multiversion concurrency control are implemented. The 2-phase commit protocol is supported as well, but no standard API for distributed transactions is implemented. The security features of the database are: role based access rights, encryption of the password using SHA-256 and data using the AES or the Tiny Encryption Algorithm, XTEA. The cryptographic features are available as functions inside the database as well. SSL / TLS connections are supported in the client-server mode, as well as when using the console application.

Two full text search implementations are included, a native implementation and one using Lucene.

A simple form of high availability is implemented: when used in the client-server mode, the database engine supports hot failover (this is commonly known as clustering). However, the clustering mode must be enabled manually after a failure.

The database supports protection against SQL injection by [http://www.h2database.com/html/advanced.html#sql_injection enforcing the use of parameterized statements] . In H2, this feature is called 'disabling literals'.

Utilities

An embedded web server and a browser based console application are included.

History

The development of the H2 database engine started in May 2004, but it was first published in December 2005. The database engine is written by Thomas Mueller. He also developed the Java database engine Hypersonic SQL [http://hsql.sourceforge.net] . In 2001, the Hypersonic SQL was stopped, and the HSQLDB Group was formed to continue work on the Hypersonic SQL code.

The name H2 stands for Hypersonic 2, however H2 does not share any code with Hypersonic SQL or HSQLDB. H2 is built from scratch.

ee also

*List of relational database management systems
*Comparison of relational database management systems
*Apache Derby
*HSQLDB

External links

* [http://www.h2database.com H2 Database Engine]
* [http://h2sharp.googlecode.com/ H2Sharp Ado.Net Provider for H2]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать реферат

Look at other dictionaries:

  • DBMS — COMPUTING abbreviation for database management system * * * DBMS UK US /ˌdiːbiːemˈes/ noun [C] IT ► ABBREVIATION for DATABASE MANAGEMENT SYSTEM(Cf. ↑database mana …   Financial and business terms

  • DBMS — n. [acronym from DataBase Management System.] a database management system, a software system that facilitates the creation and maintenance and use of an electronic database. Syn: database management system. [WordNet 1.5] …   The Collaborative International Dictionary of English

  • DBMS —   [Abk. für Database Management System, dt. »Datenbankverwaltungssystem«] das, im englischsprachigen Raum häufig benutzte Bezeichnung für Datenbank …   Universal-Lexikon

  • DBMS — (DataBase Management System) software system that allows users to save retrieve and modify information (Computers) …   English contemporary dictionary

  • DBMS — abbrev. database management system …   English World dictionary

  • DBMS — Ein Datenbanksystem (DBS) ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern und benötigte Teilmengen in unterschiedlichen,… …   Deutsch Wikipedia

  • DBMS — sigla de database management system (sistema de administración de bases de datos). Sistema para la búsqueda y recuperación rápida de información en una base de datos. El DBMS determina cómo se guardan y recuperan los datos. Debe abordar problemas …   Enciclopedia Universal

  • DBMS — noun a software system that facilitates the creation and maintenance and use of an electronic database • Syn: ↑database management system • Hypernyms: ↑software, ↑software program, ↑computer software, ↑software system, ↑software package, ↑ …   Useful english dictionary

  • DBMS — Système de gestion de base de données Un système de gestion de base de données (abrégé SGBD) est un ensemble de logiciels qui sert à la manipulation des bases de données. Il sert à effectuer des opérations ordinaires telles que consulter,… …   Wikipédia en Français

  • DBMS — duomenų bazių valdymo sistema statusas T sritis dirbtinis intelektas apibrėžtis Programinės įrangos rinkinys duomenims, informacijai duomenų bazėje tvarkyti. Paprastai DBVS turi priemones duomenims įvesti, patikrinti, kaupti, išrinkti, derinti ir …   Lithuanian dictionary (lietuvių žodynas)

  • DBMS — database management system …   Military dictionary

Share the article and excerpts

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