SQL и NoSQL: пути сотрудничества
Андрей Посконин,
аспирант кафедры Системного программирования факультета ВМК МГУ,
aposk@yandex.ru
На сегодняшний день для управления данными существует множество решений, позволяющих эффективно хранить, обрабатывать и анализировать информацию разной природы и объёма. Традиционные системы на основе SQL широко применялись и применяются сегодня, однако всё чаще возникают задачи, где использование этих систем затруднительно или неоправданно. Отражением этой тенденции стало появление и развитие NoSQL-движения, стремящегося не столько заменить собой SQL, сколько расширить возможности управления данными, привнося новые модели данных, распределённые технологии и хорошую масштабируемость.
Современные приложения (особенно Web-приложения), как правило, вынуждены работать со множеством источников данных, и часто природа этих данных требует применения различных моделей для их представления и обработки. Кроме того, каждая задача предъявляет свои требования относительно гарантий согласованности данных, надежности хранения, времени отклика системы и т.д. Таким образом, в рамках одного приложения всё чаще применяются несколько различных систем управления данными вместо одной универсальной СУБД. Задача интеграции и совместного использования разнородных систем является достаточно сложной и может быть решена многими способами. В рамках доклада рассматриваются возможности интеграции и совместного применения SQL-ориентированных СУБД и NoSQL-решений, приводятся примеры задач, которые могут быть эффективно решены теми или иными системами, а также предлагается подход для интеграции различных систем управления данными на уровне объектного отображения в приложениях.
Презентация в формате PDF: poskonin20140327.pdf.
Видеозапись доклада: http://www.youtube.com/watch?v=DOwZf9wlpeE.
Литература:
- M. Stonebraker, U. Çetintemel. One Size Fits All: An Idea Whose Time Has Come and Gone. ICDE ’05: Proceedings of the 21st International Conference on Data Engineering, Washington, 2005.
- R. Cattell. Scalable SQL and NoSQL Data Stores», 2011. http://www.cattell.net/datastores/Datastores.pdf
- С. Д. Кузнецов, А. В. Посконин. Возможно ли сотрудничество SQL и NoSQL?
// Открытые системы. СУБД. 2013. № 9. С. 38-41.
- С. Д. Кузнецов, А. В. Посконин. Распределенные горизонтально масштабируемые решения для управления данными. Труды Института системного программирования РАН. 2013. Т. 24. С. 327-358.
- А. В. Посконин. Web-приложения и данные: проблемы абстракции и масштабируемости. Труды Института системного программирования РАН. 2012. Т. 23. С. 159-171.
- 451 Research. NoSQL, NewSQL and Beyond: The drivers and use cases for database alternatives, 2011. http://www.eiseverywhere.com/file_uploads/83a507f234c6200f7c25b2581be08388_OSBC2011_Big_Data_M300_Matt_Aslett.pdf
- D. Merriman. On Distributed Consistency, 2010. http://blog.mongodb.org/post/475279604/on-distributed-consistency-part-1
- M. Fowler. Polyglot Persistence, 2011. http://www.martinfowler.com/bliki/PolyglotPersistence.html
- J. Miller. Design Patterns for Data Persistence, 2009. http://msdn.microsoft.com/en-us/magazine/dd569757.aspx
- S. Francia, J. Hileman. Augmenting RDBMS with MongoDB for eCommerce. http://www.nosqldatabases.com/main/2011/4/11/augmenting-rdbms-with-mongodb-for-ecommerce.html
|