- PVSM.RU - https://www.pvsm.ru -
Сегодня очень легко наблюдать стремительный рост данных в интернете. Согласно одной оценке, данные, созданные в 2010, составляют приблизительно 1,200 ЭБ (1018 байт) и вырастут почти к 8,000 ЭБ к 2015 в Интернете, являющимся основным поставщиком данных к потребителю.
Этот рост опережает рост вместимости, приводя к появлению систем управления информацией, где данные хранятся распределенным способом, но получают доступ и анализируют, как будто они находятся на одной машине.
Пока программисты всего мира устраивают глобальные Holywars на тему: «SQL vs NoSQL», крупные компании, такие как Google и Facebook со своей миллиардной аудиторией всеми силами борются с нехваткой мощностей и предельными работами СУБД. Несмотря на появление новой технологии NoSQL, которая позволяла легко масштабировать данные, она так и не решила вопросы связанные с соответствием операций требованиям ACID (atomicity, consistency, isolation, durability — «атомарность, непротиворечивость, изолированность, долговечность») — стандарта, который гарантирует точность выполнения оперативных транзакций средствами СУБД, даже если работа системы прерывалась. На фоне всего этого компания VoltDB при поддержке нескольких других компаний, начали разрабатывать с чистого листа новый opensource проект под название NewSQL, сочетающий в себе лучшие стороны SQL и NoSQL.

В настоящее время, чтобы справиться с нагрузкой, которую создают 1000 миллионов пользователей, Facebook оперирует четырьмя тысячами экземпляров MySQL (используется шардинг, т.е. разнесение данных по серверам, отталкиваясь от определенного признака, например, первой буквы логина) и девятью тысячами установок memcached. Facebook даже ведёт специальную страницу MySQL@Facebook, где отслеживаются работы по поддержанию работы баз данных компании.
Широко известная проблема MySQL состоит в том, что эта СУБД никогда не предназначалась для обработки огромных объёмов данных и большого количества транзакций. Стоунбрейкер добавляет, что MySQL, как и другие основанные на языке SQL БД, потребляет слишком много ресурсов на накладные дополнительные операции БД (например, для поддержки многопоточности и поддержания корректного выполнения запросов в рамках ACID). Данные требования и расходы не мешают работе при небольших объёмах данных, но быстро начинают препятствовать нормальному функционированию при их увеличении.

Становящиеся популярными NoSQL-системы, такие как MongoDB и Cassandra, многие рассматривают как альтернативу, лишенную ограничений, которые присущи обычным реляционным СУБД.
Для решения возникающих проблем большие компании приняли на вооружение парадигму NoSQL, однако NoSQL БД плохо подходят на роль хранения обычных структурированных данных, кроме того, логику ACID с NoSQL приходится встраивать в пользовательский код, тем самым усложняя работу. В дополнение, по мнению Стоунбрейкера, NoSQL обладает не сильно возросшей производительностью относительно традиционных SQL-ориентированных СУБД.

Разработчики проекта утверждают, что системы NewSQL приблизительно в 50 раз быстрее, чем традиционный OLTP RDBMS.
Архитектурный пример одного из решений NewSQL (dbShards).

Классификация основана на различных подходах, принятых сохранить SQL интерфейс, а также решить масштабируемость и производительность, являющиеся проблемами традиционных решений OLTP.
Новое поколение систем управления информацией, которые носит название NewSQL, соответствует этой тенденции и ограничениям. NewSQL склонен для фирм, которые планируют:
По мнению создателей NewSQL традиционный SQL устарел, слишком усложнен и имеет немало проблем, к тому же объектно-ориентированные СУБД уже не будущее, а настоящее. Для упрощения миграции будут разработаны конвертеры SQL в NewSQL и NewSQL в SQL, при этом они смогут транслировать запросы на лету, обеспечивая возможность запуска старых приложений без изменения.
Источники:
Проект NewSQL призван решить проблемы, с которыми столкнулся Facebook, используя MySQL [1]
NewSQL берет все лучшее от мира SQL и NoSQL [2]
http://www.linuxforu.com/2012/01/newsql-handle-big-data/ [3]
NoSQL is Out and NewSQL is In — Says Google (Google Spanner) [4]
Перевод в некоторых местах может быть не корректен.
Мы с нетерпением ждем Ваших комментариев к этой вводной статье,
Автор: alexozon
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/mysql/17076
Ссылки в тексте:
[1] Проект NewSQL призван решить проблемы, с которыми столкнулся Facebook, используя MySQL : http://www.opennet.ru/opennews/art.shtml?num=31142
[2] NewSQL берет все лучшее от мира SQL и NoSQL: http://www.osp.ru/cw/2011/22/13010433/
[3] http://www.linuxforu.com/2012/01/newsql-handle-big-data/: http://www.linuxforu.com/2012/01/newsql-handle-big-data/
[4] NoSQL is Out and NewSQL is In — Says Google (Google Spanner): http://andreasstephan.com/nosql-is-out-and-newsql-isin-says-google-goog
Нажмите здесь для печати.