Подобные проблемы рекомендовано решать с помощью cloud-инфраструктур и NoSQL-систем доступа к данным.
[spoiler]продолжаем путешествие по секциям международной конференции разработчиков GOTO Aarhus 2010
SQL или NoSQL?
Но про аббревиатуру NoSQL не слышало 44% ИТ-спецов, грустит Emil Eifrem, директор NEO4J. Впрочем, эта концепция -- отнюдь не отрицание реляционных систем, правильнее расшифровать ее как Not Only SQL. Объемы типовой корпоративной БД, согласно IDC, с 2007 по 2010 гг. выросли в 25 раз, и возможности реляционные СУБД, особенно в крупных веб-проектах, уже предельны. В дополнение к текстовым блогам и вики-ресурсам в Сеть сегодня активно приходит нагенерированный пользователями мультимедийный контент, а через 10 лет с появлением Web 3.0 и множества подключенных к вебу мобильных аппаратов WWW превратится в GGG (гигантский глобальный граф), и ggg-системам для эффективного функционирования потребуются NoSQL-решения. Будут они развиваться по четырем способам организации и доступа к данным (с активным использованием эвристик): ключ-значение, большие таблицы, документы и графы (миллиарды узлов и связей). Познакомимся с несколькими свободными решениями, доступными уже сегодня.
NoSQL-СУБД CouchDB на самом деле более чем СУБД, пояснил Mathias Meyer, шеф-"визионер" из Peritor. Она сочетает функционал веб-сервера, сервера приложений и хранилища данных, что, например, делает возможным прямое взаимодействие между ядром базы и браузером. Написана она на функциональном языке Erlang, который, собственно, и задумывался именно для подобных систем.
Mike Malone из SimpleGeo отметил отличные характеристики свободной распределенной СУБД Cassandra (в 2008-м фейсбук сделал ее общедоступной) для задач сложной геопространственной обработки данных. Она была выбрана после анализа множества систем.
Найдут себе подходящее NoSQL-решение и поклонники платформы .NET. СУБД Raven DB создана с прицелом именно на последние версии Windows и поддерживает читабельные людьми JSON-документы в формате JavaScript, пояснил Oren Eini из OpenSource.net. Система не привязана к конкретным схемам БД, и реализует язык запросов Linq.
Недоволен названием NoSQL и Andy Gross из Basho. Оно отнюдь не новое (файловые системы тоже нереляционны), а будущие NoSQL-СУБД станут гибридными, и не заменят, а расширят действующие РСУБД, стоимость эксплуатации которых при масштабировании растет очень резко.
Гросс презентовал Riak -- опенсорсное распределенное хранилище "ключ-значение", созданное, конечно, на Erlang. Масштабировать его можно, например, на весь Интернет.
Erjang и Jazz
На фоне таких серьезных erlang-проектов хорошо смотрелось выступление Kresten Krab Thorup из Trifork, который рассказал об Erjang -- открытой реализации Erlang на виртуальной Java-машине, что потребовало 50 тыс. строк кода на Java. Он полагает, что в мире программирования происходит переход от объектного программирования к процессному и антропоморфическому, где объекты-актеры исполняют конкретные роли и обмениваются сообщениями в иерархически смоделированном мире.
Erich Gamma из IBM Rational поведал об эволюции системы разработки Eclipse к новой интеграционной платформе Jazz. Производителей долгоживущего инструментального софта хорошо известна проблема сохранения программных интерфейсов, которые с одной стороны надо периодически менять, так как продукт развивается, но тогда у пользователей развалятся их прикладные системы, построенные с помощью инструментария прежней версии. Им на помощь приходят:
-- opensocial.org -- открытый API для социальных приложений, разворачиваемых на разных веб-системах;
-- open-services.net -- общедоступные описания ресурсов и интерфейсов OSLC для групповой разработки (проектные требования, девелопинг, тестирование, сопровождение, ...);
-- jazz.net -- свободная реализация OSLC.
HTML5
Новый W3C-стандарт HTML5 быстро стал одной из самых популярных технологий 2010 года, считает Jonas Jacobi, CEO Kaazing. А одной из важнейших фич этого стандарта становятся веб-сокеты (websocket.org -- JavaScript-интерфейс), способные простимулировать развитие новых форм коммуникаций. Сегодня веб строится в основном из ПК, ноутбуков и смартфонов, но уже завтра к Сети подключатся телевизоры, плееры, холодильники, автобусные остановки, автомобили и многое-многое другое. Полноценная реализация веб-сокетов обещана в новых версиях браузеров firefox 4 и chrome 7 -- способностью сокетов умещать килобайтный трафик в единичные байты заинтересовался Гугль. Так, сервер на 100 тыс. HTML-клиентов требует канала 700 Мбит/с, а веб-сокеты расходуют в 70 раз меньше.
Довольно оптимистичен в отношении HTML5 и Ben Galbraith из HP/Palm. Этот стандарт хорошо подойдет для мобильных приложений, да и Windows-программистам не потребуются сторонние библиотеки разработки, все можно будет сделать на HTML5. Однако по-прежнему нет полной определенности в отношении развития веб-стандартов и браузеров, а самой Сети нужен хороший профайлер.
окончание следует
Блин уже пол года руки не доходят попробовать NoSQL в действии =\