Si usted está interesado en escuchar experiencias de usuario con db4o, le sugiero que también pidan en our db4o user forums.
Mientras que db4o se desarrolló originalmente para uso integrado en aplicaciones con recursos limitados (y ahora funciona muy bien en plataformas limitadas como Android, CompactFramework y Silverlight) sé que tenemos muchos usuarios que están felizmente usando db4o para aplicaciones web.
De hecho, hay cierta corrección en la publicación db4o-bashing-post de leatrop: el núcleo del servidor db4o actualmente solo permite la entrada de un subproceso para almacenar y consultar tareas en una base de datos particular.
Sin embargo, hay un par de maneras de hacer que las aplicaciones db4o escala muy bien:
Dado que los costos de instalación de las bases de datos db4o es muy baja (una sola llamada a la API) es posible trabajar con múltiples bases de datos. Puede usar el sistema de replicación db4o (dRS) para distribuir objetos entre múltiples bases de datos. También es posible crear copias de seguridad de las bases de datos db4o mientras se ejecutan y replicar estas copias de seguridad en varias máquinas. El enfoque de utilizar múltiples bases de datos (para timeslices de datos o para diferentes usos en su aplicación) puede ser muy útil para fines de copia de seguridad y depuración. No necesita copiar toda la base de datos si desea probar solo algunos aspectos de su aplicación en vivo.
Si todavía encuentra que db4o no escala lo suficientemente bueno para los usuarios o los tamaños de bases de datos concurrentes, posteriormente se pueden cambiar a nuestra base de datos de objetos de alto nivel Versant VOD. Fue creado para ejecutarse en la nube y tiene un historial comprobado de trabajo para miles de usuarios concurrentes con bases de datos de varios terabytes. VOD para .NET también viene con un proveedor de LINQ, por lo que las interfaces de db4o y VOD son compatibles.
Mi recomendación: Comience con db4o. Es la base de datos de objetos más fácil de empezar y desarrollar. Simplemente almacene cualquier objeto con una línea de código, sin configurar esquemas ni mapear archivos. Use LINQ para realizar consultas (o consultas nativas, si trabaja con Java).
db4o es de código abierto y it's free (bajo la GPL).
Estoy totalmente de acuerdo con usted con respecto al primer motivo. Incluso le dije a db4O que lanzaría un sendero gratis al público y esperaba que no tuviera que pagar por las copias ilimitadas. No me dieron un comentario positivo. No he comenzado a usar Eloquera, pero lo intentaré pronto. Gracias. – Ying
+1 para "características de la API que obviamente se transportan desde Java" – Mark
+1 a @Robert! Estoy exactamente en la misma posición. Empecé a usar db4o en un proyecto y ahora estoy cambiando a Eloquera. Ahora (en 4.1) admite el cambio de modelo (lo detecta muy bien, todo es automático). El servidor viene con la instalación, en cuanto a db4o, tienes que crear tu propio servicio de Windows ... También encuentro que Eloquera es más rápida. Apoyo el uso de atributos de índice e identificación en su modelo. Los atributos de ID permiten usar su uid para mapear objetos desconectados, lo que es realmente grandioso: http://bit.ly/nlk2rk ... – billy