2010-06-03 70 views
11

Estoy evaluando dos bases de datos de objetos, db4o (http://www.db4o.com) y la base de datos Eloquera (http://eloquera.com) para un próximo proyecto. Tengo que elegir uno. Mi requisito básico es la escalabilidad, la compatibilidad con múltiples usuarios y la evolución de tipo fácil para RAD.Experiencia del mundo real de db4o y/o la base de datos Eloquera

  1. Por favor, comparta su experiencia en el mundo real.

  2. Si tiene ambas, ¿puede comparar estas dos? ¿Cual prefieres?

Respuesta

16

Durante los últimos 2 años he estado usando DB4O, y ahora estoy cambiando a Eloquera. Mis razones, en orden:

  1. Estoy construyendo un producto comercial, y la concesión de licencias basado regalía sobre DB4O es demasiado alto; DB4O dijo que podíamos "hablar de ello", pero soy una tienda de desarrollo muy pequeña y regalar una gran parte de cada venta que hago simplemente no tiene sentido cuando hay una alternativa perfectamente buena.

  2. Estoy usando el Db4oTool.exe para modificar mis assmeblies en un paso posterior a la compilación, y realmente ralentiza el proceso de compilación. Eloquera no necesita modificar mis ensamblajes.

  3. Encontré un error en el código DB4O, y pasaron muchos meses antes de que se integrara en su código base. He encontrado errores en Eloquera y los corrigieron en uno o dos días

  4. DB4O aún no está en .NET 4 (aunque finalmente tienen una versión beta inicial). DB4O es lo ÚNICO que me impide utilizar VS2010 (y .NET 4). Traté de migrar a VS2010 pero VS2010 convierte automáticamente todas las pruebas de unidad a .NET 4, por lo que todas mis pruebas de unidad relacionadas con la persistencia fallaron inmediatamente.

  5. DB4O realmente no está diseñado para ser seguro para subprocesos.

  6. DB4O tiene funciones y muchas características de API que obviamente se han portado desde Java.

Robert

+1

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

+0

+1 para "características de la API que obviamente se transportan desde Java" – Mark

+0

+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

0

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).

+0

En los foros de usuarios db4o, I Fondo de un tema relacionado: Embedded DB4O (LINQ) vs Web Eloquera (SQL) http://developer.db4o.com/Forums/tabid/98 /aft/5081/Default.aspx#15619 – Ying

+0

Una curiosa coincidencia: este chico "Dmytro" que preguntó por una opinión en nuestros foros, parece estar trabajando para Eloquera, como es claramente visible en los foros de Eloquera: http: // groups. google.com.au/group/eloquera –

+0

Sí, como se puede ver incluso en su perfil aquí ("Soy cofundador de la base de datos Eloquera"). La publicación en tu foro no fue realmente honesta, parece ... – Fabrice

9

Eloquera (www.eloquera.com) originalmente diseñado y desarrollado para su uso en el entorno web y diseñado como aplicación .NET nativa en C#.

Eloquera no se transporta desde Java como muchas otras bases de datos.

Eloquera forma nativa como parte de la arquitectura soporta:

  • acceso
  • configuración de seguridad de usuarios simultáneos
  • Tiene genuina arquitectura C/S, tiene el modo de escritorio disponibles.
  • Tamaño máximo de la base de datos 1TB +, en una escala de datos grande Eloquera mantiene la respuesta de consulta rápida; tiene tecnologías pendientes de patente que incluyen sistema de archivos virtual, indexación y caché adaptativa. Eloquera cuenta con un sistema de reflexión de vanguardia escrito en MSIL que permite a Eloquera superar a muchas bases de datos que usan la reflexión estándar de Microsoft.
  • Soporta base de datos en memoria para el rápido procesamiento de datos
  • Dado que la mayoría de los usuarios en la Web vienen de mundo base de datos relacional que era natural para Eloquera para apoyar SQL y LINQ
  • apoyo EF es el próximo mes
  • A diferencia de algunas bases de datos Eloquera no pone objetos a ciegas en la base de datos, si cambia los campos de int; int; a largo; no seguirá consultando con resultados incorrectos porque todavía ve dos int; int; - notificará al usuario que actualice la definición
  • Eloquera proporciona una indexación nativa para propiedades y campos. La mayoría de las bases de datos no proporcionan indexación de propiedades.

Podría discutir con Carl sobre DB4O la base de datos más fácil del mercado, ya que Eloquera puede hacer las mismas cosas desde la perspectiva de API.

Eloquera es más joven que Versant y todavía tiene algunas características empresariales por venir.

El mes pasado, Eloquera R & El departamento D se comprometió con Eloquera Parallel Server para proporcionar una escala horizontal que podría decirse que sería mucho más económica que el VOD de Versant.

Algunos de los puntos destacados

  • Eloquera es gratuito para uso comercial. No está obligado a pagar ninguna regalía. Todas las características anteriores tienen GRATIS.
  • Eloquera tiene un soporte comercial disponible.
  • Eloquera está diseñado para el mundo moderno con una arquitectura moderna. No se adaptaba de vez en cuando a las necesidades del mercado. Es parte natural de la arquitectura de Eloquera.
+0

Eloquera parece ser un proyecto muerto, ¿es correcto? – Ted

+0

@Ted parece muerto. el sitio del proyecto requiere iniciar sesión para descargar, el inicio de sesión requiere verificación por correo electrónico, el servidor web no puede enviar un correo electrónico al –

0

estoy creando una segunda generación de plataforma de medios sociales completamente basado en JavaFX y Db4o. Podemos hacer cosas con db4o que serían imposibles con cualquier otra base de datos. Ontologías OWL semánticas y relaciones complejas con objetos y nuestro lienzo definible por el usuario hacen que Db4o sea increíble para nosotros. Tampoco nos preocupa el escalado y hemos encontrado varias soluciones. Carl es una de las personas más inteligentes en software. Este hecho es obvio cuando aprendes sobre su producto.

Mike Tallent CEO Objectwheel

Cuestiones relacionadas