Учитывая обработку лицензий Oracle [a] (и, в меньшей степени, стоимость), я всегда задавался вопросом, какими будут решающие факторы при выборе Oracle вместо PostgreSQL или MySQL.
Моя компания почти всегда выбирает Oracle (где это возможно, XE), даже для небольших проектов, где есть только один простой серверный сервер Windows, на котором работает база данных без какого-либо выделенного администрирования БД. (Обратите внимание , что маленький вовсе не означает , данные всегда будут соответствовать относительно небольшие ограничения по размеру из Oracle XE.)
Я всегда сомневался в этом выборе, но он имеет то преимущество, что мы, по крайней мере, работаем только с одним продуктом базы данных.
Тем не менее, учитывая новый проект, где вам нужна СУБД, но проект и объем базы данных довольно малы, в зависимости от того, какие уникальные возможности Oracle, работающие на простых серверах Windows (без слишком большого выделенного администрирования), вы бы выбрали Oracle вместо другая РСУБД?
Дополнительный контекст : Многие наши базы данных развертываются на сайтах клиентов в, скажем так, режиме «низкого уровня администрирования». То есть база данных настраивается один раз. На сайте проводится предварительное тестирование правильного поведения и производительности. После этого база данных просто включается. Нет регулярной администрации сделано. Только если что-то сломано, техник (не выделенный администратор базы данных) проверит базу данных, пытаясь выяснить, в чем дело. Резервное копирование в основном делается в автономном режиме. В некоторых проектах клиенты даже не заботятся о вовлечении СУБД. Они просто видят свое приложение как черный ящик, который работает (или нет).
[a]: Там, где я работаю, нескольким менеджерам проектов неоднократно требовалось несколько месяцев, чтобы получить надлежащее лицензирование для небольших проектов, поскольку местные представители Oracle просто не очень заинтересованы в продаже своего продукта, если доход невелик.
Ответы:
Я могу попытаться ответить только за Oracle и postgres. После использования Oracle исключительно в течение многих лет, и postgres только в течение последних двух лет, я люблю postgres. Существует так много небольших способов, которыми его удобнее использовать, чем Oracle, и он обладает многими важными преимуществами (такими как MVCC). Он проще в управлении, надежен, имеет отличную документацию и, конечно, он бесплатный.
Однако postgres не подходит для Oracle в некоторых областях, таких как:
Интересно, что почти все эти функции отсутствуют или повреждены в XE. Я думаю, что я бы выбрал postgres вместо XE, при прочих равных условиях, но ...
... ничего из этого не решает две основные причины выбора Oracle:
РЕДАКТИРОВАТЬ:
Единственная ситуация, когда я каждый раз выбираю postgres, а не XE, - это проблема безопасности. Если ваша база данных или какое-либо из ее приложений доступны общедоступному Интернету, я не уверен, что XE - это вообще хорошая идея.
источник
Oracle Apex . Удобная и простая в использовании среда веб-приложений, встроенная прямо в базу данных. Проще говоря, это позволяет очень просто развертывать «единичные» приложения с веб-интерфейсом / логикой / базой данных приложения в одном интегрированном пакете.
PS. 11g XE (в настоящее время в бета-версии) расширяет объем хранилища до более 10 ГБ.
источник
Несмотря на то, что в Express Edition нет других опций возврата в Oracle, Flashback Query есть. Согласно этому вопросу , ни в одной другой базе данных нет такой функции, которая позволяет оператору select запрашивать данные на определенный момент времени в прошлом. Данные флэшбека могут быть объединены с текущими данными и вставлены в текущие таблицы, что делает их полезными для операций отмены типа, временных изменений и сравнения изменений, внесенных методом в одном месте.
Некоторые другие вещи, которых нет в других базах данных, которые есть у Oracle Express Edition.
источник
Прежде всего, я думаю, что вы не должны недооценивать тот факт, что уже есть ноу-хау Oracle, но не для других RDBMS. Создание знаний для других требует времени и денег и может также сопровождаться некоторыми ошибками в начале.
Кроме того, вы никогда не знаете, будет ли когда-нибудь расти маленький проект. Затем вы можете очень легко и быстро выполнить обновление с XE до Standard Edition One и Standard Edition до Enterprise Edition. Переход с другой СУБД снова займет гораздо больше времени и денег. Итог: я думаю, что ваша компания делает это правильно - хорошо, я могу быть немного предвзятым :-)
источник
count()
ахиллесову пяту Постгреса). Я должен был спросить на стеке потока, как повлиять на планировщикОдной из приятных особенностей Oracle являются такие, как Oracle Resource Manager, которые значительно упрощают консолидацию приложений в одной базе данных, чем наличие отдельной базы данных для каждого приложения. Похоже, это не используется в вашей организации. В прошлом я создавал консолидированные базы данных для проектов, как вы упомянули.
Это привело к тому, что даже самым простым из всех проектов потребовались месяцы, чтобы начать работу, и в то время, когда время выхода на рынок чрезвычайно важно, это убивает. По некоторым причинам это упускается многими, часто даже игнорируется по политическим причинам.
Решение для этого довольно просто. Создайте одну серьезную базу данных, дайте каждому проекту / приложению свою собственную схему [ы] и получите доступ к пользователям [и] и начните работать за часы, а не месяцы. Если вы собираетесь сделать что-то подобное, может оказаться полезным объединить приложения, которые имеют схожие требования к времени безотказной работы. Oracle получает все больше и больше вариантов обслуживания в режиме онлайн, но иногда простои на несколько часов проще. Наличие временных рамок для этого, определенного заранее, может предотвратить множество проблем. Вам понадобится некоторое время простоя.
Не позволяйте приложениям подключаться к базе данных, заставляйте их подключаться к сервисам, выделенным для приложения, используя их собственные tns-алиасы. Это позволяет вам переместить приложение в другую базу данных без необходимости перенастраивать приложение.
Кстати, компании, которые использовали этот способ консолидации, ежегодно экономили много денег, больше, чем лицензии, необходимые для начала работы.
источник