Спецкурс посвящен принципам разработки приложений хранения и обработки больших объемов данных. Классифицируются основные задачи, возникающих при работе с данными. Производится обзор методов решения этих задач с использованием существующего инструментария (коммерческих продуктов и продуктов с открытым кодом). На идейном уровне обсуждаются основные принципы реализации инструментария, понимание которых необходимо для реализации эффективных приложений.
В частности, в курсе рассматриваются:
основные подходы к разработке и оптимизации приложений реляционных и XML баз данных;
методы и инструменты для массивной распределенной обработки больших объемов разнородных данных на примере инфраструктуры Google: Google File System, MapReduce, BigTable;
методы и языки трансформации слабоструктурированных данных (текстов, XML, SGML) на примере языков XSLT и OmniMark.
Основная литература:
Б. А. Новиков, Г. Р. Домбровская. Настройка приложений баз данных. БХВ-Петербург, 2006
Dennis Shasha (Author), Philippe Bonnet (Author). Database Tuning: Principles, Experiments, and Troubleshooting Techniques. 1st edition Morgan Kaufmann, 2002.
Дополнительная литература:
Документация PostgreSQL (http://www.postgresql.org/docs/8.1/static/index.html)
Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung. The Google File System
Jeffrey Dean and Sanjay Ghemawat. MapReduce: Simplified Data Processing on Large Clusters
Chaitanya Baru, Gilles Fecteau, Ambuj Goyal, Hui-I Hsiao, Anant Jhingran, Sriram Padmanabhan, Walter Wilson. DB2 Parallel Edition, IBM Systems Journal, 1995
Sashikanth Chandrasekaran, Roger Bamford: Shared Cache - The Future of Parallel Databases. ICDE 2003
|