Tvůrce | Thomas Mueller ( d ) |
---|---|
První verze | Prosinec 2005 |
Poslední verze | 1.4.200 (14. října 2019) |
Vklad | github.com/h2database/h2database |
Napsáno | Jáva |
Operační systém | Multiplatformní |
životní prostředí | Virtuální stroj Java |
Typ | Systém pro správu databází |
Licence | Veřejná licence Eclipse 1.0 ( d ) a MPL-2.0 ( d ) |
webová stránka | www.h2database.com |
H2 je systém správy relačních databází napsaný v Javě . Může být integrován do aplikace Java nebo pracovat v režimu klient-server . Jeho soubor jar je malý: přibližně 1 MB.
Jedná se o software s otevřeným zdrojovým kódem distribuovaný pod licencí Mozilla Public License (upravená verze) nebo Eclipse Public License .
H2 podporuje podmnožinu standardu SQL . Nabízí programovací rozhraní (API) SQL a JDBC ; Může však také použít ovladač ODBC PostgreSQL a chovat se jako server PostgreSQL.
Tyto tabulky mohou být vytvořeny v paměti nebo na disku . Mohou být trvalé nebo dočasné. Tyto indexy jsou hashovací tabulky a stromy pro tabulky do paměti a stromy B pro tabulky na disku. Veškerá manipulace s daty je transakční . Je implementováno zamykání na úrovni tabulky i multiverzní souběžnost . Podporován je také dvoufázový protokol potvrzení , ale standardní rozhraní API pro distribuované transakce nejsou implementována. Zabezpečení zajišťuje: řízení přístupu na základě rolí , hašování hesel SHA-256 , šifrování dat pomocí AES nebo XTEA . Připojení SSL / TLS jsou podporována v režimu klient-server i prostřednictvím aplikace (konzoly) příkazového řádku.
Zahrnuty jsou dva fulltextové vyhledávací systémy : nativní implementace a další pomocí Apache Lucene .
Databáze se chrání před injekcemi SQL pomocí výrazů s formálními parametry. Tato funkce se nazývá zakázání literálů ( doslovné hodnoty deaktivace ).
Od verze 1.1.111 může být H2 databáze v paměti spuštěna v Google App Engine .
Jsou zahrnuty :
Vývoj H2 začal v roceKvěten 2004, a byla publikována v prosince 2005. Autorem motoru je Thomas Mueller. Před zastavením vývoje, který převzala skupina HSQLDB, vyvinul také hypersonický SQL Java DBMS. Název H2 znamená Hypersonic 2 ; H2 však bylo napsáno od nuly a nemá žádný společný kód s Hypersonic nebo HSQLDB .