№ 18 (277), выпуск 12Страницы 112 - 120

Разработка параллельной субд на основе последовательной субд POSTGRESQL с открытым исходным кодом

К.С. Пан, М.Л. Цымблер
Статья посвящена разработке параллельной системы управления базами данных (СУБД) путем внедрения механизмов параллельной обработки запросов на основе концепции фрагментного параллелизма в свободно распространяемую на уровне исходных кодов СУБД PostgreSQL. Описана архитектура и принципы реализации параллельной СУБД PargreSQL для кластерных вычислительных систем, разрабатываемой на основе свободно распространяемой СУБД PostgreSQL. СУБД PostgreSQL является подсистемой в рамках системы PargreSQL. Описаны изменения, которые требуется внести в исходные тексты подсистем СУБД PostgreSQL. В исходные тексты PostgreSQL вносятся минимальные изменения. Изменения в структурах данных и алгоритмах инкапсулируются в новых файлах исходных текстов, подключаемых к исходным текстам PostgreSQL. Использование PargreSQL является прозрачным для пользовательских приложений. Подключение PargreSQL к прикладным программам, которые до этого использовали PostgreSQL, производится с минимальными изменениями в исходных кодах приложения. Параллельная СУБД PargreSQL, запущенная на одном вычислительном узле, работает так же, как последовательная СУБД PostgreSQL.
Полный текст
Ключевые слова
параллельные СУБД, фрагментный параллелизм, PostgreSQL.
Литература
1. Stonebraker, M. The POSTGRES next-generation database management system / M. Stonebraker, G. Kemnitz // Communications of the ACM. - Oct. 1991. - V. 34, № 10. - P. 78 - 92.
2. Sokolinsky, L. Omega: The Highly Parallel Database System Project / L. Sokolinsky, O. Axenov, S. Gutova // Proceedings of the First East-European Symposium on Advances in Database and Information Systems (ADBIS'97), St.-Petersburg, September 2 - 5, 1997. - St.-Petersburg: Nevsky Dialect, 1997. - V. 2. - P. 88 - 90.
3. Соколинский, Л.Б. Организация параллельного выполнения запросов в многопроцессорной машине баз данных с иерархической архитектурой / Л.Б. Соколинский // Программирование. - 2001. - № 6. - С. 13 - 29.
4. Samokhvalov, N. XML Support in PostgreSQL / N. Samokhvalov // SYRCoDIS, CEUR Workshop Proceedings. - 2007. - V. 256. - P. 1 - 6.
5. Havinga, Y. Adding HL7 version 3 data types to PostgreSQL / Y. Havinga, W. Dijkstra, A. de Keijzer // Computing Research Repository. - 2010. - abs/1003.3370.
6. POSTGRESQL-IE: An Image-handling Extension for PostgreSQL / D. Guliato, E.V. de Melo, R.M. Rangayyan, R.C. Soares // J. of Digital Imaging. - 2009 - V. 22, № 2. - P. 149 - 165.
7. Levshin, D.V. Algorithms for integrating PostgreSQL with the semantic web / D.V. Levshin, A.S. Markov // Programming and Computer Software. - 2009. - V. 35, № 3. - P. 136 - 144.
8. Lee, R. Extending PostgreSQL to Support Distributed/Heterogeneous Query Processing / R. Lee, M. Zhou // Database Systems for Advanced Applications. Lecture Notes in Computer Science. - Springer, 2007. - V. 4443. - P. 1086 - 1097.
9. High-Performance Query Processing of a Real-World OLAP Database with ParGRES / M. Paes, A.A.B. Lima, P. Valduriez, M. Mattoso // VECPAR, Lecture Notes in Computer Science. - Springer, 2008. - V. 5336. - P. 188 - 200.
10. Kotowski, N. Parallel query processing for OLAP in grids / N. Kotowski, A.A.B Lima, E. Pacitti, P. Valduriez, M. Mattoso // Concurrency and Computation: Practice and Experience. - 2008. - V. 20, № 17. - P. 2039 - 2048.
11. DeWitt, D.J. Parallel Database Systems: The Future of High Performance Database Systems / D.J. DeWitt, J. Gray // Communications of the ACM. - 1992. - V. 35, № 6. - P. 85 - 98.
12. Sokolinsky, L.B. Organization of Parallel Query Processing in Multiprocessor Database Machines with Hierarchical Architecture / L.B. Sokolinsky // Programming and Computer Software. - 2001. - V. 27, № 6. - P. 297 - 308.
13. Lepikhov, A.V. Query processing in a DBMS for cluster systems / A.V. Lepikhov, L.B. Sokolinsky // Programming and Computer Software. - 2010. - V. 36, № 4. - P. 205 - 215.