H2(DBMS)
H2 es un sistema administrador de bases de datos relacines programados en Java.
Puede ser incorporado en aplicaciones en Java o ejecutarse de modo cliente-servidor.
Una de las caracteristicas mas importante de H2 es que se puede inregrar
complentamente en aplicaciones Java y acceder a la base de datos lanzado SQL
directamente sin tener que pasar por una conexión a traves de sockets.
HISTORIA
El desarrollo de H2 comenzo en el mayo de 2004, pero no fue publicado hasta 2005.
Hay que tener claro desde un principio que esta base de datos No es compatible a
otras bases de datos
como MySQL,SQL Server,Oracle;etc…,se puede decir que realiza las mismas
funciones que las interiores, pero hay que tener en cuenta que estas bases son de otra
liga por lo no seria logico salir a produccion con la base de datos H2. En 2001
empezoa trabajar en la empresa PointBase Inc , donde escribio codigo para PointBase
Micro , una base de datos comercial basad en java SQL.
Caracteristicas mas destacadas de esa herramienta:
Alta integracion : Debido a que como ya se ha dicho esta implementada en Java su
integracion con cualquier aplicación en este lenguaje es total (mediante API JDBC o
ODBC)
Uso en diferentes plataformas : Debido a que es Java se puede utilizar en cualquier
plataforma.
Rapida : Obtiene su gran velocidad gracias a su estrategia de optimizacion basada
en coste , por lo que en muchos casos la hace destacar sobre otras bases de datos mas
conocidas.
Modo embebido: Permite funcionamiento en este modo realizando la gestion de los
datos en archivos haciendo uso de una pequeña parte de memoria.
Modo(en memoria): Permite el funcionamiento en este modo realizando la gestion
de los datos directamente sobre la memoria , lo que acelera enormemente las
operaciones realizadas.
Ventajas de H2:
- Admite el modo incorporado , el modo de servidor y el cluster.
- H2 proporciona una consola web muy conveniente para la operación y administrar
el contenido de la base de datos.
- Solo un archivo de JAR es adecuado como una base de datos incrustada.
- Java esta escrito, no limitado por la plataforma.
- Completo, SQL estandar y JDBC, pequeño pero completo .
Desventajas de H2:
- Dificultades de crecimiento : Cuando estas bases de datos comienzan a crecer en
volumen , el almacenamiento y el coste de mantenimiento se convierte en un
problema de alto costo.
- Cambios en la estructura : El empresarial es altamente dinamico. Esto exige que
se realicen cambios de forma eventual en los registros de datos. Si ejecutamos
cambios la base de datos debe ser modificada en su estructura para admitir las
modificaciones.. Si las modificaciones no se realizan esta se vera afectada y sus
procesos interrumpidos.
- Complejidad en la inctalacion :Algunas bases de datos SQL se ven condicionadas
por el sistema operativo en el cual van a funcionar y los requisitos minimos de
funcionamiento de los servidores u ordenadores.
- Dificultad en la interfaz :La interfaz de una base de datos SQL son mas complejas
que agregar algunas lineas de codigo.
- Mas caracteristicas implementadas de forma patentada: Aunque las bases de
datos SQL se ajustan a los estandares ANSI e ISO , algunas bases de datos
implementan extenciones propietarios al SQL estandar para garantizar el bloqueo del
proveedor.