Можете ли вы использовать объектную базу данных в производственной системе?
Объектные базы данных используются очень редко, хотя они предлагают способ жить без SQL, что, я думаю, является его собственной выгодой.
Тем не менее, я видел их никогда не в производственных системах. Что-то принципиально не так с объектными базами данных? Могу ли я использовать объектную базу данных в производственной системе?
Изменить: Итак, может быть, я должен признаться, что я люблю объектные базы данных. Я не могу понять, почему они не используются намного чаще.
6 ответов
Конечно, вы могли бы, пока это было стабильно. Проблема заключается в относительном отсутствии высококачественных систем объектно-ориентированных БД, а также в том, что большинство людей даже не знают, что это такое.
Существуют производственные системы, написанные с использованием GemStone OODB. Это распределенная, постоянная система Smalltalk.
db4o часто используется многими компаниями из списка Fortune 500 (особенно для встраиваемых приложений), поэтому я бы не сказал, что OODB не используются в реальных производственных системах
Слышал о кеше? Используется EpicSystems для их продукта Enterprise Health Record(EHR). Множество производственных цехов, использующих его.
Реальный вопрос здесь заключается в том, требуется ли вам инструмент для поддержки вашей базы данных или нет. Под инструментами я имею в виду отчетность, миграцию данных, интеллектуальный анализ данных и т. Д. Вам нужно предоставлять отчеты самообслуживания? Черт, даже отчеты с быстрым временем выполнения, которое не требует развертывания нового кода? (Обеспечение функциональности отчетов в приложении - это настоящее занятие.)
Существует множество инструментов для выполнения этих операций с традиционными RDBM. Против ООД? Я не знаком с какими-либо основными продуктами. Хотя, по общему признанию, я не любопытный парень.
Если вам не нужны эти инструменты, они идут на это. В противном случае придерживайтесь традиционных RDBM. С современной технологией ORM боль при отображении объектов в записи намного меньше, чем раньше.
Я считаю, что проблема в том, что SQL по сути не плохая вещь. Это очень хорошо при выполнении операций на основе множества. Из того, что я видел, объектные базы данных работают хорошо при работе с отдельными объектами, но терпят неудачу при попытке выполнить операции на основе множеств. Кроме того, люди очень хорошо работают с базами данных SQL. Легко найти людей для работы с ними. Объектные базы данных - другая история.