3. 1999: STROZZI NOSQL
Реляционная СУБД
NoSQL – без
поддержки SQL
Постоянно упоминается
как «первое NoSQL-
решение»
• Разработана Карлом Строцци в
1998–1999 годы
• реляционная алгебра реализована
через хитроумные сценарии
оболочки, соединяемые через
стандартные Unix-конвейеры
• Однако общность с NoSQL в
современном понимании только
лингвистическая
4. 2001: ТЕОРЕМА CAP
Одновременно выполнимы только два из трёх свойств:
onsistency
vailability
artition tolerance
Устойчивость к
распаду на сегменты
Доступность
Согласованность
данных
5. 2006: СТАТЬЯ О BIGTABLE
Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A.
Wallach, Mike Burrows, Tushar Chandra, Andrew Fikes, and Robert E.
Gruber.
Bigtable: A Distributed Storage System for Structured Data
// Proceedings of 7th USENIX Symposium on Operating Systems Design
and Implementation, Seattle, WA, 2006
Работы начаты в 2004 году
Утверждалось об использовании в продуктах Google
Google Analytics Google Earth Google Finance
7. 2008 – 2009: ВСПЛЕСК
«АНАЛОГОВ BIGTABLE»
• AmazonS i m p l e D B
• Powerset
• потом – Apache
H B a s e
• FacebookC a s s a n d r a
• Zvents
• потом – Baidu
H y p e r t a b l e
8. 2009: РОЖДЕНИЕ NOSQL
На первом семинаре освещены:
Voldemort Cassandra Dynomite Hbase Hypertable CouchDB MongoDB
Возник вопрос о «хэштеге» для семинара, в irc-чате на Freenode #cassandra
Эрик Эванс (Rackspace) предложил #NoSQL
Семинар Йохана Оскарссона по «распределённым нереляционным СУБД с
открытым исходным кодом»
Hadoop-конференция в Сан-Франциско
9. 2010: ПРИЗНАНИЕ КАК
КЛЮЧЕВОЙ ТЕХНОЛОГИИ
«БОЛЬШИХ ДАННЫХ»
O’Reilly Media The Economist
Pricewaterhouse
Coopers
McKinsey
… как технологии, обеспечивающую горизонтальную масштабируемость,
наряду с Hadoop, отмечена в отчётах:
C 2012 года NoSQL входит в академические программы
по «большим данным» и «науке о данных»
10. 2010: “NOT ONLY SQL”
Возник в районе 2010 года
По-видимому, автором является Джон Расин, в ответ на публикацию
Стоунбрейкера в Blogs@ACM написавший:
“…To me, NoSQL means Not-Only-SQL, more than No SQL at all. In
Pick, we have SQL phrases which allow access and handling of
associative array data, so it isn’t necessarily a one-or-the-other
situation…”
11. 2011: NEWSQL
Объединяет два типа решений
NoSQL-системы, понимающие SQL или SQL-
подобный язык (UnQL, Hive)
Построение средствами реляционных
движков систем, обладающих свойствами
NoSQL (горизонтальная масштабируемость,
MapReduce API)
Как “new school” против “old school”
Джеймс Аслетт (451 Research)
12. 2012: «МНОГОВАРИАНТНАЯ
ПЕРСИСТЕНТНОСТЬ»
Hibernate OGM: библиотека,
обеспечивающая Java Persistence API для
унифицированного доступа к
различного класса NoSQL-системам
I n i f n i s p a n
E h c a c h e
M o n g o D B
N e o 4 j
Marin Fowler, Pramod Sadalage. NoSQL
Distilled: A Brief Guide to the Emerging
World of Polyglot Persistence
N. J.: Addison-Wesley, 2012
Переведена на русский язык
(2013, Вильямс, перевод Дм. Клюшин )
В 2015 году готовится второе издание
на русском
21. ПРОЧИЕ
«ПРЕТЕНДЕНТЫ НА NOSQL»
Многозначные
(multivalue) и
иерархические
Mumps
Pick D3
Cachè
Объектно-
ориентиро-
ванные
Objectivity
db4o
Jasmine
XML DB,
RDF-DB
(часто включены в
сегмент «документо-
ориентированных»)
Sedna
xDB
MarkLogic
Системы
полно-
текстового
поиска
Lucene
Solr
…
Распреде-
лённые
файловые
системы
Hadoop
+
Hive
+
Pig
22. ОПРЕДЕЛЕНИЕ-
ПРЕТЕНДЕНТ
и иногда (в широком смысле)
другие нереляционные СУБД
а также
графовые СУБД
NoSQL – класс горизонтально масштабируемых СУБД с агрегатной
моделью хранения и ограниченной транзакционностью, появившихся в
конце 2000-х – начале 2010-х годов
«ключ – значение» документоориентированные «семейство столбцов»
24. ОБЪЁМ РЫНКА
IDC: рынок СУБД к
2016 году – $30 млрд
451 Research: к 2016 году
объём рынка NoSQL
превзойдёт $1 млрд
IDC: рынок больших
данных к 2016 году
– $16 млрд
30. ПОСТАВЩИКИ
O r a c l e
Владелец BerkeleyDB (после
поглощения Sleepycat в 2006)
Владелец Coherence (после поглощения
Tangasol в 2007)
Сконцентрировала более 50% рынка
СУБД (Oracle Database, MySQL)
D a t a S t a x
Коммерциализатор Apache Cassandra от
выходцев из Rackspace
В списке «20 кандидатов на IPO» (IDG) Инвестиции – $190 млн
B a s h o
Разработчик Riak и Riak CS Инвестиции – $57,5 млн
A e r o s p i k e
Фокусируется на рынке RTB
Осенью 2014 года опубликовали СУБД
под свободной лицензией
Инвестиции – $22 млн
C o u c h B a s e
Основной разработчик Couchbase Инвестиции – $60 млн
1 0 g e n
Основной разработчик MongoDB
(переименована в MongoDB Inc.)
«No. 9 The Next Big Thing –2012» // The
Wall Street Journal
Инвестиции – $311 млн
31. ПРОВАЙДЕРЫ
O b j e c t R o c k e t
MongoDB Redis Поглощена Rackspace
C l o u d a n t
BigCouch (на основе CouchDB) Поглощена IBM
G o o g l e
BigQuery Cloud Datastore
A m a z o n
SimpleDB DynamoDB ElastiCache Elastic MapReduce
42. ПЕРВАЯ РЕАКЦИЯ
Майкл Стоунбрейкер
(blogs@ACM):
• разделил NoSQL-системы
на «ключ – значение» и
«документоориентированные»
• провёл критический анализ
(постепенно смягчая позицию к
движению в целом)
• породил полемику и интерес со
стороны видных деятелей
научного сообщества
Русскоязычное пространство
(Сергей Дмитриевич Кузнецов):
• Серия переводов (в том числе
записей Стоунбрейкера)
• Серия критических обзоров
(Citforum, «Открытые системы.
СУБД»)
• Скепсис на базе историй неуспеха
альтернатив реляционной
технологии в 1990-е (прежде всего,
объектных СУБД)
43. КОЛЛЕКЦИЯ
Nosql-database.org
Ведётся профессором
Берлинского университета
Штефаном Эдлихом c 2009 года
Содержит 150 NoSQL-СУБД
«Семейство столбцов»
Документоориентированные
«Ключ-значение» и кортежные
Графовые
Мультимодельные
«Для грида и облачных вычислений»
Объектные
Многомерные
XML-СУБД
Многозначные (multivalue)
Сетевые
«Event-sourcing»
44. COSQL
Erik Meijer and Gavin Bierman
A co-relational model of data for large shared data banks
// Communications of the ACM, vol. 54 (2011), No. 4
SQL coSQL
Дочерние записи ссылаются на
родительские
Родительские записи содержат
дочерние
Элементы обязательно строго
типизированы
(Потенциально) динамически
типизированы
Синхронные обновления (ACID) для
нескольких записей
Асинхронные обновления (BASE)
для одной записи
Набросок теоретико-категорной модели, объединяющей реляционную
алгебру и «двойственную ей» алгебру для агрегатных моделей
46. NOSQL: ПРОБЛЕМЫ
«Зонтичность»
• широкий класс решений, объединённых под одним [дискуссионным] заголовком
• отсутствует концептуальный взгляд на движение в целом, каждое решение «пробивается»
самостоятельно, нет единой идеологической базы
• понятийные и терминологические разночтения внутри движения, отсутствие внутренней
поддержки
Нестандартизованность
• отсутствуют стандарты в сегментах, даже в тех случаях, где они могли бы быть сформулированы
• слабая сочетаемость и взаимозаменяемость решений (риски уникальности)
Молодость, новизна
• неприятие и непонимание со стороны части опытных экспертов
• критика со стороны конкурентных технологий
47. NOSQL: ДОСТИЖЕНИЯ
Становление как важной технологии в интернет-гигантах
• Google (BigTable)
• Amazon (DynamoDB)
• Facebook (Cassandra)
Признание как ключевой технологии «больших данных»
Оформление как дополняющей технологии
• сближение с возможностями реляционных систем (транзакции, целостность, …)
• «многовариантная персистентность» (polyglot persistence); ORM-средства с поддержкой
NoSQL; программные каркасы, объединяющие реляционные системы и NoSQL
Молодость, новизна!
• несмотря на «зонтичность», за счёт новизны удалось создать привлекательную атмосферу и
разогреть интерес как академический, так и коммерческий
48. NOSQL: ТЕКУЩЕЕ
СОСТОЯНИЕ
Появление в «корпоративном секторе»
банки
операторы
электросвязи
Розничная торговля энергосбыт госсектор
Относительно небольшой, быстрорастущий рынок
NoSQL растёт не взамен рынку реляционных СУБД, а в
дополнение
инвестиции в NoSQL-разработчиков превысили $1 млрд
Изначальные фокусные пользователи – интернет-гиганты, – по-прежнему
используют РСУБД в качестве основной технологии слоя хранения
Facebook Yahoo Ebay Twitter Wikipedia Apple (store)
Более сотни СУБД, более десятка – развитых и зрелых
49. NOSQL: ПЕРСПЕКТИВЫ
•Становление нескольких лидеров движения, деградация отстающих
•Концентрация на стороне ИТ-гигантов
К о н с о л и д а ц и я
•формирования достаточно чётких рамок, определений
•… как с облачными вычислениями
К о н ц е п т у а л и з а ц и я
•универсальные языки
•универсальные программные каркасы
•универсальные сервисы, интероперабельность
С т а н д а р т и з а ц и я
•появление референтных отраслевых решений
•формирование рынка услуг профессиональных услуг
К о м м е р ц и а л и з а ц и я
•оперативная память
•твердотельные накопители
•применение ПЛВМ…
Ф о к у с н а а п п а р а т н о й с п е ц и ф и к е