Oracle (RAC) против NoSQL - PullRequest
       21

Oracle (RAC) против NoSQL

2 голосов
/ 10 февраля 2011

Мне любопытно, кто-нибудь делал тесты для доступа к данным в базах данных NoSQL против Oracle (особенно я говорю об Oracle RAC)?Проект требует работы не менее чем с 10 миллионами + записей, поиск среди них (но не обязательно должен быть в режиме реального времени), чтение очень важно для скорости, а также очень важно гарантировать HA и надежность(не могу потерять записи !!!) Я могу лично убедиться, что Cassandra / MongoDB может лучше подходить (потому что хранилище значений ключей обеспечит более быстрое чтение, чем SQL, когда вы просматриваете записи более 10 миллионов раз), но мне сложно все сформулироватьиз них красиво.Есть ссылки?Предложения?Отверстия от пуль?Спасибо!

Ответы [ 2 ]

5 голосов
/ 10 февраля 2011

10 миллионов записей.Предположим, 250 байтов на запись.Это около 2,5 ГБ данных, что вполне соответствует производительности обычного настольного компьютера или ноутбука.Объемы данных незначительны (если только каждая запись не имеет размера в Мб, например, изображения или аудио).

Вам нужно поговорить о том, какие объемы транзакций (разделены на чтение и запись) и что вы считаете HA.HA только для чтения - это легко по сравнению с HA для чтения и записи.Может быть тривиально реплицировать данные, доступные только для чтения, на несколько серверов в разных географических точках и распределять рабочую нагрузку по ним.

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

В аспекте HA RAC - это технология общего хранения, которая обычно означает, что ваши узлы RAC находятся близкоблизость.Это может сделать их уязвимыми для локальных событий, таких как пожар здания или поломка телекоммуникаций.Data Guard - это технология Oracle, которая относится к удаленной репликации и отработке отказа.

0 голосов
/ 18 февраля 2013

В большинстве случаев, когда вы сравниваете NoSQL с SQL, вы должны понимать очень важную разницу между ними.Данные в NoSQL могут быть непоследовательными в стоимости для достижения HA .

Что я имею в виду под непоследовательным?Это зависит, но обычно около 3-5 секунд, для распространения данных вокруг узлов.База данных NoSQL предоставляет механизм для управления и устранения этого, но если вы хотите, чтобы все ваши данные были согласованы в реальном времени, тогда вы просто используете классический SQL, такой как Oracle RAC.

Возвращаясь к сравнению скорости: просто несопоставимо то, что быстрее, потому что оно зависит от таких факторов, как сетевая инфраструктура, вычислительная мощность, модель базы данных и т. Д. Но важно то, что в какой-то момент вы можете достичь того момента, когдаSQL экономически неэффективен для поддержки , и вам нужно переключиться на NoSQL.

...