Реальный мировой опыт работы с базами данных db4o и / или Eloquera - PullRequest
11 голосов
/ 03 июня 2010

Я оцениваю две объектные базы данных: db4o (http://www.db4o.com) и Eloquera Database (http://eloquera.com)) для предстоящего проекта. Мне нужно выбрать одну. Моим основным требованием является масштабируемость, многопользовательская поддержка и простота эволюция типа для RAD.

  1. Пожалуйста, поделитесь своим реальным опытом.

  2. Если у вас есть оба, вы можете сравнить эти два? Что вы предпочитаете?

Ответы [ 4 ]

16 голосов
/ 10 июля 2010

Последние 2 года я использую DB4O и сейчас перехожу на Eloquera. Мои соображения по порядку:

  1. Я создаю коммерческий продукт, и лицензирование на основе DB4O на основе лицензионных платежей является ПУТЬ к высокой; DB4O сказал, что мы могли бы «поговорить об этом», но я очень маленький магазин разработки, и раздавать огромный кусок каждой продажи, которую я делаю, просто не имеет никакого смысла, когда есть совершенно хорошая альтернатива.

  2. Я использую Db4oTool.exe для изменения моих сборок на этапе после сборки, и это действительно замедляет процесс сборки. Eloquera не нужно изменять мои сборки.

  3. Я обнаружил ошибку в коде DB4O, и прошло много много месяцев, прежде чем он был интегрирован в их кодовую базу. Я нашел ошибки в Eloquera, и они исправили их за день или два

  4. DB4O еще не на .NET 4 (хотя у них наконец-то есть ранняя бета-версия). DB4O - ЕДИНСТВЕННАЯ вещь, удерживающая меня от использования VS2010 (и .NET 4). Я попытался перейти на VS2010, но VS2010 автоматически преобразует все модульные тесты в .NET 4, поэтому все мои юнит-тесты, связанные с постоянством, сразу не прошли.

  5. DB4O не предназначен для работы с потоками.

  6. DB4O имеет функции и множество функций API, которые явно перенесены с Java.

Роберт

9 голосов
/ 07 июня 2010

Eloquera ( www.eloquera.com ) изначально была разработана и разработана для использования в веб-среде и разработана как собственное приложение .NET в C #.

Eloquera не была портирована с Java, как многие другие базы данных.

Eloquera изначально как часть архитектуры поддерживает:

  • Одновременный доступ пользователя
  • Настройки безопасности
  • Имеет подлинную архитектуру C / S, доступен режим рабочего стола.
  • Максимальный размер базы данных 1 ТБ +, в большом масштабе данных Eloquera поддерживает быстрый ответ на запрос; у него есть запатентованные технологии, включая виртуальную файловую систему, индексацию и адаптивный кеш. Eloquera имеет современное отражение, написанное на MSIL, которое позволяет Eloquera превзойти многие базы данных, использующие стандартное отражение Microsoft.
  • Поддерживает базу данных в памяти для быстрой обработки данных
  • Так как большинство пользователей в Интернете происходят из мира реляционных баз данных, для Eloquera было естественным поддерживать SQL и LINQ
  • Поддержка EF ожидается в следующем месяце
  • В отличие от некоторых баз данных, Eloquera не помещает вслепую объекты в базу данных, если вы измените поля с int; int; долго; он не будет продолжать запрашивать неправильные результаты, потому что он все еще видит два int; int; - он уведомит пользователя об обновлении определения
  • Eloquera предоставляет собственную индексацию свойств и полей. Большинство баз данных не обеспечивают индексацию свойств.

Я мог бы поспорить с Карлом о том, что DB4O - самая простая база данных на рынке, поскольку Eloquera может делать то же самое с точки зрения API.

Eloquera моложе, чем Versant, и все еще имеет некоторые корпоративные функции.

В прошлом месяце отдел исследований и разработок Eloquera начал использовать Eloquera Parallel Server для обеспечения горизонтального масштабирования, которое, вероятно, будет на порядок дешевле VOD Versant.

Некоторые из отмеченных точек

  • Eloquera БЕСПЛАТНО для коммерческого использования. Вы не обязаны платить любые гонорары. Все вышеперечисленные функции у вас есть бесплатно.
  • Eloquera имеет коммерческую поддержку.
  • Eloquera предназначена для современного мира с современной архитектурой. Время от времени он не адаптировался к потребностям рынка. Это естественная часть архитектуры Eloquera.
0 голосов
/ 18 мая 2013

Я создаю платформу для социальных сетей второго поколения, полностью основанную на Javafx и Db4o. С db4o мы можем делать то, что было бы невозможно с любой другой базой данных. Семантические OWL-онтологии и сложные отношения с объектами и нашим определяемым пользователем холстом делают Db4o идеальным для нас Мы также не беспокоимся о масштабировании и нашли несколько решений. Карл - один из самых умных людей в области программного обеспечения. Этот факт очевиден, когда вы узнаете о его продукте.

Майк Таллент Генеральный директор Objectwheel

0 голосов
/ 04 июня 2010

Если вам интересно узнать о впечатлениях пользователей от db4o, я предлагаю вам также спросить на наших форумах пользователей db4o .

Хотя db4o изначально разрабатывался для встраиваемого использования в приложениях с ограниченными ресурсами (и теперь очень хорошо работает на ограниченных платформах, таких как Android, CompactFramework и Silverlight), я знаю, что у нас есть много пользователей, которые с удовольствием используют db4o для веб-приложений. 1005 *

На самом деле, существует некоторая корректность в db4o-bashing-post от leatrop: ядро ​​сервера db4o в настоящее время позволяет входить только одному потоку для хранения и запроса задач в конкретной базе данных.

Однако есть несколько способов очень хорошо масштабировать приложения db4o:
Поскольку стоимость установки для баз данных db4o очень низкая (один вызов API), возможно работать с несколькими базами данных. Вы можете использовать систему репликации db4o (dRS) для распределения объектов между несколькими базами данных. Также возможно создавать резервные копии баз данных db4o во время их работы и реплицировать эти резервные копии на несколько компьютеров. Подход с использованием нескольких баз данных (для временных интервалов данных или для разных случаев использования в вашем приложении) может быть очень хорошим для целей резервного копирования и отладки. Вам не нужно копировать всю базу данных, если вы хотите протестировать только некоторые аспекты вашего живого приложения.

Если вы все равно обнаружите, что db4o недостаточно хорошо масштабируется для одновременных пользователей или размеров базы данных, вы можете позже переключиться на нашу базу данных объектов высокого класса Versant VOD . Он был создан для работы в облаке и имеет проверенный опыт работы с тысячами одновременно работающих пользователей с многотерабайтными базами данных. VOD для .NET также поставляется с поставщиком LINQ, поэтому интерфейсы db4o и VOD совместимы.

Моя рекомендация: начать с db4o. Это самая простая объектная база данных для начала и разработки. Просто сохраните любой объект с одной строкой кода, не устанавливая схемы или файлы сопоставления. Для запроса используйте LINQ (или собственные запросы, если вы работаете с Java).

db4o с открытым исходным кодом и бесплатно (под лицензией GPL).

...