Ответ 1
Я бы сказал, что база данных следующего поколения, а не SQL следующего поколения.
SQL - это язык для запросов и обработки реляционных баз данных. SQL продиктован международным стандартом. Хотя стандарт пересматривается, он, как представляется, всегда работает в рамках парадигмы реляционных баз данных.
Вот несколько новых технологий хранения данных, которые сейчас привлекают внимание:
- CouchDB - это нереляционная база данных. Они называют это документированной базой данных.
- Amazon SimpleDB также является нереляционной базой данных, доступной распределенным образом через веб-службу. Amazon также имеет распределенное хранилище ключей с именем Dynamo, которое предоставляет некоторые из своих услуг S3.
- Dynomite и Кай являются решениями с открытым исходным кодом, вдохновленными Amazon Dynamo.
- BigTable - это запатентованное решение для хранения данных, используемое Google, и реализовано с использованием технологии Google File System. Рамка Google MapReduce использует BigTable.
- Hadoop - это технология с открытым исходным кодом, основанная на Google MapReduce и служащая аналогичной потребностью для распространения работа с крупномасштабными хранилищами данных.
- Scalaris - это распределенный транзакционный ключ/хранилище значений. Также не является реляционным и не использует SQL. Это исследовательский проект Института Zuse в Берлине, Германия.
- RDF является стандартом для хранения семантических данных, в которых данные и метаданные взаимозаменяемы. Он имеет свой собственный язык запросов SPARQL, который внешне внешне напоминает SQL, но на самом деле совершенно другой.
- Vertica - это высоко масштабируемая аналитическая база данных, ориентированная на столбцы, предназначенная для распределенной (сетки) архитектуры. Он утверждает, что он реляционный и SQL-совместимый. Он может использоваться через Amazon Elastic Compute Cloud.
- Greenplum - это высокопроизводительная СУБД для хранения данных, которая реализует как MapReduce, так и SQL.
- XML не является СУБД вообще, это обменный формат. Но некоторые продукты СУБД работают с данными в формате XML.
- ODBMS или базы данных объектов предназначены для управления сложными данными. Похоже, что в основной деятельности нет доминирующих продуктов ODBMS, возможно, из-за отсутствия стандартизации. Стандартный SQL постепенно получает некоторые функции OO (например, расширяемые типы данных и таблицы).
- Drizzle - это реляционная база данных, в которой содержится много кода из MySQL. Он включает в себя различные архитектурные изменения, предназначенные для управления данными в масштабируемой системной архитектуре "облачных вычислений". Предположительно, он будет продолжать использовать стандартный SQL с некоторыми улучшениями MySQL.
- Cassandra - это высоко масштабируемое, в конечном итоге последовательное, распределенное структурированное хранилище ключей, разработанное в Facebook один из авторов динамовцев Amazon, и внес свой вклад в проект Apache.
- Проект Voldemort - это нереляционная, распределенная система хранения ключей. Он используется в LinkedIn.com
- Berkeley DB также заслуживает упоминания. Это не "следующий ген", потому что это относится к началу 1990-х годов. Это популярное хранилище ключей, которое легко встраивается в различные приложения. В настоящее время эта технология принадлежит корпорации Oracle.
Также см. эту замечательную статью Ричарда Джонса: "Anti-RDBMS: список распределенных хранилищ для ключей. " Он более подробно описывает некоторые из этих технологий.
У реляционных баз данных есть свои недостатки. Люди утверждают, что они не справляются со всеми требованиями к моделированию данных со дня его появления.
Из года в год исследователи придумывают новые способы управления данными для удовлетворения особых требований: либо требования к отношениям данных, которые не вписываются в реляционную модель, либо требования к высокому объему или скорости, которые требуют данных обработка выполняется на распределенных коллекциях серверов, а не на центральных серверах баз данных.
Несмотря на то, что эти передовые технологии делают все возможное для решения специализированной проблемы, для которой они были разработаны, реляционные базы данных по-прежнему являются хорошим универсальным решением для большинства бизнес-потребностей. SQL не уходит.
Я написал статью в журнале php | Architect о нововведении нереляционных баз данных и моделировании данных в реляционных или нереляционных базах данных. http://www.phparch.com/magazine/2010-2/september/