Imagen Header Un Blog Mas Jordi Abad

db4o, base de objetos de código abierto

Ayer un compañero de trabajo me comentó que había descubierto db4o. Se trata de una base de datos de objetos de código abierto nativa en Java y .NET. Es decir, no es una base de datos relacional como podría ser Oracle o MySQL, por poner algún ejemplo. Olvídate del lenguaje SQL. Nada de INSERTS, UPDATES,…. Directamente, trabajas con los objetos y punto. ¿Me he explicado? Espero que sí…

Actualmente ya existen en el mercado soluciones para solucionar el problema de pasar la acción que quieres realizar sobre un objeto (guardar, leer, consultar,…) a su correspondiente secuencia SQL. Son los denominados ORM (Object-Relational Mapping). Hibernate es uno de los más conocidos y utilizados en el mercado. Lo que se consigue con una base de datos de objetos, como db4o, es evitar precisamente este paso de convertir la acción sobre el objeto a una sentencia SQL.

Pues bien, parece ser que recientemente ha salido la versión 6 de db4o. En cuanto a las mejoras con respecto a la versión 5 tenemos que es hasta 10 veces más rápido y un 90% más liviano (con menor consumo de memoria). Con respecto a Hibernate, aseguran que es hasta 55 veces más rápido. Además, destacar que detrás de este motor de base de datos hay más de 15.000 desarrolladores registrados (y sigue creciendo) y que empresas como Boeing, Intel y Siemens ya lo están utilizando en sus desarrollo.

Todavía no he tenido tiempo de probarlo aunque, por la pinta que tiene, creo que debería hacerlo en breve. ¿Qué opináis al respecto? ¿Cuántos de esos 15.000 desarrolladores han puesto db4o en producción? ¿Puede tener éxito este tipo de base de datos?


10 Comentarios por lo menos ...

1. sword

Las 2 librerías mencionadas de Java y .NET mencionadas son unas excelentes herramientas que ahorran tiempo en la codificación en las bases de datos. De hecho he trabajado con las 2. El db4o es una librería que trabaja directamente con los objetos, mientras que Hibernate es un intermediario en el mundo objetual y el mundo relacional.

Comentario publicado el 7 diciembre 2006 03:35 am

Sword, aprovechando que has trabajado con ambas librerías me surge una pregunta:

¿Es viable migrar una aplicación que trabaja con Hibernate a db4o?

Comentario publicado el 7 diciembre 2006 12:44 pm
3. marrullas

Jordi si es viable migrar aunque hay trabajo por hacer en una migracion pero hay ayudas por ejemplo
http://developer.db4o.com/ProjectSpaces/view.aspx/Espanol/FAQ#15)%20%C2%BFQue%20es%20y%20como%20se%20usa%20el%20sistema%20de%20replicaci%C3%B3n%20dRS?
saludos

Comentario publicado el 15 diciembre 2006 06:43 pm
4. marrullas

bueno no esta completo el link pero ve ala pregunta numero 15

Comentario publicado el 15 diciembre 2006 06:44 pm

Vaya, es bastante interesante esto de la replicación dRS. Otra cosa será ver si no da ningún problema y hace la migración 100% correcta.

De todas maneras, la idea es fantástica. Gracias por el enlace marrullas.

Comentario publicado el 17 diciembre 2006 04:03 pm
6. Luis

Yo lo estoy utilizando, realmente te simplifica la tarea de programación, ahorro en miles de línes de código, y la gran ventaja es mucho más liviano

Comentario publicado el 20 enero 2007 04:16 pm

Hola Luis,

Gracias por dejar tu comentario. Un día me tengo que poner a probarlo y compararlo con otras soluciones. De todas maneras, por lo que he leído en los comentarios todos son críticas positivas hacia db4o.

Un saludo!

Comentario publicado el 20 enero 2007 04:36 pm
8. Joselo

Hola a toss!! hace poco me dejaron un trabajo en la Universidad referido a DB4O y me parecio muy interesante por lo mismo que puedes trabajarlo en java y .net … pero tengo una duda puedo trabajarlo con SQL y si se puede como me conecto…
^^

Comentario publicado el 26 junio 2007 06:35 pm

Joselo, te recomiendo que te pases por los foros oficiales de db4o:

Un saludo!

Comentario publicado el 27 junio 2007 05:50 pm
10. sword

Joselo, no hay que confundir el mundo objetual con el mundo relacional, db4o no se conecta con SQL, ya que SQL es del mundo relacional y no hay que confundir, db4o trabaja con objetos puros. Si quieres programar objetos puros pero almacenarlos en tablas del mundo relacional , deberías leer acerca de Hibernate, este te permite programar Orientado a Objetos pero almacenar éstos en bases de datos relacionales, es decir, los objetos que programes, Hibernate te los mapea con las tablas del mundo relacional.

En cambio db4o, cuando programas objetos, éste te los almacena tal como los programaste, no tiene que hacer conversiones.

Comentario publicado el 7 agosto 2007 12:30 am
(required)
(will not be published) (required)
(opitional)

Suscripción

Categorías

Cifras

  • 725 artículos
  • 2,569 comentarios
  • 1,070 usuarios
  • 67 enlaces