Зачем вам использовать базу данных Oracle? [закрыто]

97

Мне любопытно по техническим причинам, почему вы выбираете базу данных Oracle по сравнению с последними версиями:
1) Microsoft SQL Server
2) MySQL
3) PostgreSQL

Какие функции или функции оправдывают дополнительную стоимость. Меня интересуют технические аргументы, а не религиозная война. Один друг спросил меня об этом, и я всегда использовал один из трех перечисленных. Я недостаточно знал о базах данных Oracle, чтобы высказать свое мнение.

Спасибо.

BuddyJoe
источник

Ответы:

49

Похоже, никто не говорит о стоимости времени разработчиков, работающих с Oracle. Большинство разработчиков, которые знают какие-либо другие БД, ненавидят Oracle, те, кто не считает, что весь код БД и / или инструменты ORM сложны в использовании.

Если бы я начал бизнес, который, как мне казалось, будет масштабироваться до масштабов Amazon, я мог бы рассмотреть решения NoSQL, в противном случае я бы каждый раз выбирал PostgreSQL, SQL Server (или даже Sybase сейчас) вместо Oracle. Я говорю это, проработав (как разработчик) с Oracle в течение 2 лет - с ним ужасно работать!

user1016765
источник
3
я не согласен! Oracle, безусловно, одна из лучших реализаций СУБД. Он очень эффективно управляет памятью и может обрабатывать сложные операции JOIN, которые легко наносят ущерб MySQL и MsSQL. Oracle имеет отличную архитектуру, она делает ее надежной, потому что очень легко организовать данные различных приложений. Я думаю, что лучшим плюсом для меня является SQL Engine, которым обладает Oracle, он очень продвинутый, что делает его единственной базой данных для управления хранилищем данных! Запускать сложные запросы в Oracle очень просто. Другие функции, такие как материализованные представления, PL / SQL и т. Д., Делают Oracle выгодным.
Музаая Джошуа
8
Я тоже согласен - работая как с Oracle 11gR2, так и с SQL Server 2008 R2 в течение последних нескольких лет, совершенно смешно, сколько раз я сталкивался с неработающей моделью безопасности Oracle, неинтуитивными инструментами настройки производительности и привередливым оптимизатором. Любая экономия, которую вы получите, отказавшись от лицензии MS Win Server, будет немедленно съедена потерянной производительностью.
engil
4
Как основной пользователь SQL Server и разработчик базы данных с использованием Oracle: Oracle - это головная боль. Как упомянул @Jasmine, это настолько ограничено тем, что вы можете делать. Я особенно ненавижу то, как работают переменные, и тот факт, что вам нужно создавать триггеры и последовательности для автоматического увеличения идентификаторов. SQL Server - это определение того, как должна работать база данных. Черт возьми, даже MySQL лучше Oracle. Конечно, обе базы данных имеют свои ограничения, но ничто по сравнению с тем, что есть у Oracle.
RoyalSwish,
4
Кроме того, PLSQL неуклюж и раздражает.
RoyalSwish
1
Oracle имеет ограниченную поддержку сегментирования, ограниченную поддержку масштабирования, ограниченные функции администрирования, ограниченную помощь по поддержке, несколько ограниченную поддержку кластеризации (без доставки журнала master-master) и множество привязок к поставщику. Сейчас они пытаются наверстать упущенное, но я никогда не видел столько ошибок. Я работал с рядом альфа-версий, бета-версий и систем, признанных непригодными и нестабильными. Я до сих пор никогда не видел так много явных ошибок, которые должны были быть очевидны перед выпуском, а иногда даже перед компиляцией.
jbo5112
33

Только Oracle и SQLServer от Microsoft являются закрытым исходным кодом, и когда что-то пойдет не так, и у вас возникнет проблема, ответ - просто телефонный звонок (и наличные, если конечно). В любом случае у MySQL и PostGre есть несколько корпоративных консалтинговых услуг, но, в конце концов, эти консультанты не отвечают за продукт, потому что продукт принадлежит всем. Это здорово, потому что вы можете пойти и исправить код, если вы хорошо владеете C и относительно низкоуровневым программированием, но если вы не найдете решение, это может стать настоящей погоней за гусем.

Поскольку не все достаточно квалифицированы, а те предприятия с деньгами предпочитают безопасность (в деловом смысле) баз данных с закрытым исходным кодом, это причина того, что эти решения не прекратили свое существование, помимо того факта, что их реализации надежны. и стоит денег, если она у вас есть.

Хорошо, теперь, наконец, самое важное различие между SQLServer и Oracle, и эта разница заключается в ОС, большинство людей, использующих Windows, будут придерживаться, как вы уже догадались, SQLServer, но если вы работаете на разновидностях Unix, Oracle - ваше решение с закрытым исходным кодом. В любом случае я использую Oracle на Solaris, но если бы нашей целью была Windows, я бы, вероятно, использовал SQLServer, потому что оба продукта надежны, но я верю, что у Microsoft есть некоторые специальные уловки под капотом, чтобы получить лучшую производительность в Windows.

Роберт Гулд
источник
6
+1. Хороший ответ. Я всегда работал с девизом «Я люблю лучших представителей породы, но бесплатно - это очень круто». Я всегда стараюсь найти баланс при выборе решения. В повседневной работе я использую SQL Server. На моем собственном MySQL прямо сейчас.
BuddyJoe
3

Реальный вопрос заключается в том, какое приложение будет использоваться для использования RDMS. Вам определенно не нужен oracle для вашего блога wordpress или твиттер-клона. Но если вы хотите провести серьезную бизнес-аналитику, у Oracle могут быть некоторые функции, которые помогут сделать это более эффективно, чем другие.

Сервер ms sql тоже очень хорош, у него масса функций. Если вы столкнулись с Linux и вам нужна база данных с функциями, предлагаемыми ms sql, то oracle будет хорошим выбором.

Том Хастьярджанто
источник
3

Просто назвать несколько:

  • Oracle Real Application Cluster - предоставляет расширенные функции кластеризации
  • Oracle Data Guard - вкратце, предоставляет физические и логические резервные функции.
  • Oracle Exadata - реализует хранилище с учетом базы данных (которое может выполнять фильтрацию предикатов, фильтрацию проекций столбцов, обработку соединений, ускоряет создание табличного пространства). Решение поставляется с серверами HP, полной гарантией 24/7 и другими приятными вещами. Это неплохо для приложений с очень интенсивной загрузкой данных (например, благодаря независимому созданию табличного пространства).
  • Виртуализация Oracle

И конечно же магия бренда;)

А когда дело доходит до выбора СУБД? Обычно выбор очевиден - Oracle или остальной мир. После этого вы можете сузить выбор:

  • платформа (только для Windows или без)
  • вес (sqlite, MySQL, PostgreSQL, ...)
  • бюджет (начальная стоимость лицензии, обслуживание + стоимость поддержки)
  • перспективы эволюции, например:
    • Oracle Express -> Oracle
    • SQL Server Express -> MSSQL
  • с точки зрения бизнеса - «безопасный, хорошо известный продукт» или продукт с открытым исходным кодом (помните цитату вокруг первой фразы). В другом посте этот аспект рассматривается глубже.
Анонимный
источник
14
Было бы неплохо, если бы вы могли добавить немного о том, что делают эти функции ... для тех из нас, кто не в курсе, это просто звучит как модное бинго. ;)
Ник Рейман
6
Более того, многие из этих вещей не нужны малому и среднему бизнесу и, конечно, не оправдывают (для них) очень больших затрат.
Дэйв Маркл,
1
Вы платите за то, что используете ... Приведенные мной примеры интересны для довольно крупных организаций. И, как я уже сказал, первым делом обычно нужно решить, использовать ли Oracle или что-то еще.
Аноним
Oracle RAC - это не расширенная кластеризация (и не было в 2009 году), это кластеризация под ключ. Поскольку для этого требуется общее хранилище, он не масштабирует операции ввода-вывода. В 2009 году он не будет масштабироваться до облачных уровней, а за последнее десятилетие дела Oracle только ухудшились.
jbo5112
3

Я думаю, это потому, что Oracle была первой RDMS, которая поддерживала « сегментирование ».

iChaib
источник
2
-1 Что это вообще значит? * Нужна цитата. * Существует несколько методов реализации сегментирования, включая, помимо прочего, реализацию сегментирования на уровне приложения.
Jeeyoung Kim
В Oracle не было нативного шардинга до 12.2 (2016/2017). IIRC, MySQL превзошли их более чем на десять лет (разные механизмы хранения).
jbo5112
1

Вы знаете, что стоимость SQL Server и Oracle не так уж и велика.

Фактически, для небольших систем стоимость Oracle vs Your Favorite Free Database находится между нулем (Oracle Express Edition) и не очень большой (5 800 долларов на бессрочный процессор для Standard Edition One).

Вот ссылка на возможности различных выпусков в 11g: http://www.oracle.com/database/product_editions.html .

Прейскурантные цены доступны для всех территорий на http://store.oracle.com - обычно крупные компании, конечно, не платят в розницу;)

Дэвид Олдридж
источник
2
Затраты на Postgres / MySQL и Oracle, тем не менее ... (не то чтобы я поддерживаю кого-либо из них в особенности)
annakata
+1 Дэвид, не могли бы вы расширить свой ответ, включив, возможно, некоторые ограничения Express Edition?
BuddyJoe
@ annakata - XE бесплатен. SE1 очень дешевый.
Дэвид Олдридж,
2
Основные ограничения для Express (XE): 4 ГБ данных, 1 ГБ ОЗУ, 1 ЦП.
Гэри Майерс,
4
Это не учитывает гораздо более высокую стоимость обслуживания установки Oracle DB по сравнению с MSSQL или другими его конкурентами.
Monty Wild