Принципы построения грида с использованием RESTful-веб-сервисов тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат физико-математических наук Шамардин, Лев Витальевич
- Специальность ВАК РФ05.13.11
- Количество страниц 133
Оглавление диссертации кандидат физико-математических наук Шамардин, Лев Витальевич
Введение
1 Грид и веб-сервисные технологии
1.1 Концепция грид
1.2 Первое поколение гридов.
1.3 Открытая архитектура грид-сервисов.
1.4 Веб-сервисы.
1.5 Инфраструктура ресурсов веб-сервисов.
1.6 Современные гриды.
1.7 Постановка задачи.
2 Использование REST для построения грид-сервисов.
2.1 Архитектурный стиль REST.
2.1.1 Ресурсно-ориентированная архитектура.
2.1.2 RESTful-грид-сервисы.
2.2 Простые манипуляций с ресурсами.
2.2.1 Создание ресурсов.
2.2.2 Свойства ресурсов.
2.3 Индикация ошибок.
2.4 Цикл существования ресурсов
2.5 Безопасность и идемпотентность.
2.6 Аутентификация запросов.
2.7 Принципы построения RESTful-грид-сервисов
3 Разработка грид-сервиса запуска композитных заданий
3.1 Композитные задания.
3.1.1 Синтаксис описания заданий и задач.
3.1.2 Требования к ресурсам
3.2 Интерфейс прикладного программирования сервиса Pilot
3.2.1 Задания и задачи.
3.2.2 Выполнение сложных операций.
3.2.3 Учетная информация
4 Реализация грид-сервиса Pilot
4.1 База данных сервиса.
4.2 Программа внешнего интерфейса.
4.2.1 Контейнер WSGI-приложений и модуль аутентификации запросов.
4.2.2 Модуль интерфейса прикладного программирования
4.3 Программа обработки задач.
5 Использование грид-сервиса Pilot
5.1 Интеграция в ГридННС.
5.2 Анализ функциональных характеристик Pilot
5.3 Сравнительное тестирование производительности сервиса
Рекомендованный список диссертаций по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Инструментальная оболочка проектирования и разработки высокопроизводительных приложений в среде Грид2008 год, кандидат технических наук Ларченко, Алексей Викторович
Информационные геофизические модели и потоки данных в среде Грид2009 год, кандидат технических наук Мишин, Дмитрий Юрьевич
Интеллектуальная платформа управления композитными приложениями в распределённых вычислительных средах2010 год, кандидат технических наук Марьин, Сергей Владимирович
Приобретение знаний в интеллектуальных системах поддержки принятия решений разработчика вычислительных приложений в среде Грид2008 год, кандидат технических наук Дунаев, Антон Валентинович
Разработка программного обеспечения распределенных систем для решения задач оптимизации2012 год, кандидат технических наук Смирнов, Сергей Андреевич
Введение диссертации (часть автореферата) на тему «Принципы построения грида с использованием RESTful-веб-сервисов»
Актуальность темы
В настоящее время все большее распространение приобретает использование суперкомпьютеров и вычислительных кластеров для расчетов, связанных с решением задач моделирования в различных научных областях: исследование свойств новых материалов, моделирование погодных явлений, исследования процессов термоядерного синтеза и формирования галактик, моделирование в областях биофизики и биохимии, поиск новых лекарств, анализ экспериментальных данных в физике элементарных частиц. Массовое использование технологий высокопроизводительной обработки данных радикально сокращает затраты на реализацию самых передовых и самых сложных проектов. Суперкомпьютеры позволяют ускорить расчеты, делая практически возможным использование более точных и всесторонних математических моделей. Развитие суперкомпьютерных технологий и организация их эффективного использования является одним из приоритетных научных направлений Российской Федерации.
Проведение расчетов на. суперкомпьютерах связано с решением большого количества технических и организационных задач, связанных с обеспечением доступа к ресурсам и повышением эффективности их использования. Представляется перспективным использование технологии грид для обеспечения удаленного доступа к суперкомпьютерам, поскольку грид направлен на решение задач, связанных с организацией такого доступа к географически распределенным вычислительным ресурсам и услугам. С помощью грида скрываются подробности внутренней реализации вычислительных ресурсов от конечного пользователя, предоставляя ему унифицированный способ использования этих ресурсов. Однако, существующие в настоящее время стандарты и методы в области грид-вычислений используют достаточно сложные в реализации программные интерфейсы веб-сервисов, требующие, как правило, специальных библиотек, или средств автоматической генерации программного кода. В последнее время получили развитие альтернативные подходы к созданию веб-сервисов, основанные на архитектурном стиле REST («RESTful-веб-сервисов»). Разработка методов создания грид-сервисов на основе этого архитектурного стиля позволяет упростить интерфейсы грид-сервисов, тем самым расширяя возможности их прямого использования из прикладных программ.
Важной задачей, связанной с использованием гридов, является распределение выполняемых задач между узлами сети, а так же автоматизация сложных вычислений, состоящих из отдельных независимых шагов, являющихся, обычно, самостоятельными вычислительными задачами. Для их выполнения используются специальные грид-сервисы, обеспечивающие «оркестровку», то есть последовательный или одновременный запуск отдельных шагов композитных заданий в соответствии с заданной логикой и отслеживание процесса их выполнения. Такие грид-сервисы выполняют центральную роль во многих существующих грид-проектах. Разработка грид-сервиса, обеспечивающего запуск задач, и имеющего простой и надежный программный интерфейс, построенный на основе новых методов, базирующихся на архитектурном стиле REST является важной прикладной задачей и хорошей проверкой практической ценности и эффективности предложенных методов.
Цель и задачи исследования
Основными целями данной диссертационной работы являются: разработать подход к созданию грид-сервисов, позволяющий создавать простые для проектирования, удобные для реализации и надежные в использовании интерфейсы прикладного программирования, не требующие специальных средств для разработки клиентских программ; реализовать грид-сервис запуска композитных заданий, имеющий удобный интерфейс прикладного программирования, построенный на разработанном подходе, обеспечивающий эффективное управление потоками заданий в гриде Национальной Нанотехнологической Сети (ГридННС); провести практические испытания разработанных программных средств на полигоне грид-инфраструктуры.
Научная новизна
В диссертации впервые сформулированы методы разработки грид-сервисов с использованием архитектурного стиля REST, в том числе универсальные методы управления временем жизни ресурсов RESTful-веб-сервисов. Обобщены существующие лучшие методики и на их основе даны строгие формулировки принципов построения грид-сервисов с использованием RESTful-веб-сервисов. Предложенный подход позволяет обеспечить универсальность форматов представлений ресурсов, упрощенную модель восстановления при сбоях и концептуальную простоту реализации. Таким образом, становится возможным создание удобных и надежных интерфейсов прикладного программирования, не требующих использования специальных средств или библиотек как для разработки клиентских программ так и самих грид-сервисов.
Теоретическая и практическая ценность
Теоретическая ценность работы заключается в том, что в ней показана принципиальная возможность построения грид-сервисов на основе архитектурного стиля REST, предложены методы реализации основных операций с грид-ресурсами. Сформулированные в работе методы могут быть использованы при разработке других грид-сервисов, обеспечивая концептуальную простоту их интерфейсов прикладного программирования.
Практическая ценность работы заключается в том, что впервые разработан грид-сервис запуска композитных заданий, названный «Pilot», который может быть использован' в существующих гридах для организации запуска композитных заданий и управления их выполнением. Разработанный грид-сервис является модульным решением, которое может применяться не только в инфраструктуре ГридННС, но и в других гридах, поддерживающих совместимые интерфейсы грид-шлюзов суперкомпьютеров. Кроме того, имеющаяся реализация может быть легко расширена для использования альтернативных интерфейсов грид-шлюзов, что обеспечивает простоту ее интеграции в другие гриды. Данная работа выполнена в связи с потребностью в грид-сервисе запуска композитных заданий, который имел бы достаточно простой для использования интерфейс прикладного программирования. Работоспособность предложенных решений проверялась на практике на полигоне проекта ГридННС. Реализованный в рамках работы грид-сервис прошел испытания и используется в инфраструктуре проекта ГридННС.
Структура и объем работы
Диссертация состоит из введения, четырех основных глав, заключения, библиографии и трех приложений. Объем диссертации составляет 132 страницы включая приложения, объем библиографии — 70 ссылок, работа содержит 14 рисунков и 6 таблиц.
Похожие диссертационные работы по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Технология разработки композитных приложений с использованием предметно-ориентированных программных модулей2012 год, кандидат технических наук Князьков, Константин Валерьевич
Поиск сценариев событий на гриде источников данных об окружающей среде2008 год, кандидат физико-математических наук Пойда, Алексей Анатольевич
Проектирование и разработка предметно-ориентированных композитных приложений в распределенных облачных средах на основе виртуальных моделирующих объектов2014 год, кандидат наук Смирнов, Павел Андреевич
Методология развития научного информационно-вычислительного комплекса в составе глобальной грид-инфраструктуры2012 год, доктор технических наук Кореньков, Владимир Васильевич
Сервисно ориентированный подход к использованию систем инженерного проектирования и анализа в распределенных вычислительных средах2009 год, кандидат физико-математических наук Радченко, Глеб Игоревич
Заключение диссертации по теме «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», Шамардин, Лев Витальевич
Основные результаты работы, разработанный подход к построению грид-сервисов, описание реализации грид-сервиса Pilot были доложены автором на следующих международных научных конференциях:
- на Четвертой международной конференции «Распределенные вычисления и Грид-технологии в науке и образовании» (GRID'2010) (28 июня-3 июля 2010 г., Дубна);
- на симпозиуме летней школы XtreemOS 2010 (XtreemOS Summer School 2010, doctoral symposium) (5-9 июля 2010 г., Гюнзбург), доклад был отмечен дипломом «best presentation award»;
- на 18-й Международной конференции по вычислениям в физике высоких энергий и ядерной физике (18th International Conference on Computing in High Energy and Nuclear Physics, CHEP 2010) (18-22 октября 2010 г., Тайпей).
Заключение
Список литературы диссертационного исследования кандидат физико-математических наук Шамардин, Лев Витальевич, 2011 год
1. 1.n Foster. What is the Grid? A Three Point Checklist. GRID today, 1(6):22—25, 2002.
2. Ian Foster and C. Kesselman, editors. The Grid: Blueprint for a New Computing Infrastructure. Morgan Kaufmann Publishers, Inc., San-Francisco, CA, 1999.
3. Lee Momtahan (ed.). DataGRID Software Architecture Models. Technical report, EU DataGrid Project, 2004. https: / / edms.cern.ch / document/439938.
4. Paul Avery and Ian Foster. The GriPhyN project: Towards petascale virtual-data grids. The 2000 NSF Information and Technology Research Program, 2000. ITR-0086044.
5. Paul Avery, Ian Foster, Rob Gardner, Harvey Newman, and Alexander Szalay. An International Virtual-Data Grid Laboratory for Data Intensive Science, 2001. NSF Proposal 0107441.
6. S. Tuecke, V. Welch, D. Engert, L. Pearlman, and M. Thompson. Internet X.509 Public Key Infrastructure (PKI) Proxy Certificate Profile. Technical report, IETF Network Working Group, June 2004. RFC3820.
7. I. Foster, C. Kesselman, J. Nick, and S. Tuecke. The physiology of the grid: An open grid services architecture for distributed systems integration. In Open Grid Service Infrastructure WG, Global Grid Forum, volume 22, page 2002. Citeseer, 2002.
8. S.S. Laurent, J. Johnston, and E. Dumbill. Programming web services with XML-RPC. O'Reilly Media, 2001.
9. Martin Gudgin, Marc Hadley, Noah Mendelsohn, Jean-Jacques Moreau, Henrik Frystyk Nielsen, Anish Karmarkar, and Yves Lafon. SOAP version 1.2 part 1: messaging framework (second edition). Technical report, W3C Recommendation, April 2007.
10. R.T. Fielding. Architectural styles and the design of network-based software architectures, doctoral dissertation, University of California, Irvine, 2000.
11. R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach, and T. Berners-Lee. Hypertext Transfer Protocol HTTP/1.1. Technical report, IETF Network Working Group, June 1999. RFC2616.
12. Steve Graham, Anish Karmarkar, Jeff Mischkinsky, Ian Robinson, and Igor Sedukhin. Web Services Resource 1.2 (WS-Resource). Technical report, OASIS Standard, April 2006.
13. John Cowan and Richard Tobin. XML Information Set (Second Edition). Technical report, W3C Recommendation, February 2004.
14. Don Box and Francisco Curbera. Web Services Addressing (WS-Addressing). Technical report, W3C Member Submission, August 2004.
15. I Foster. Globus Toolkit Version 4: Software for Service-Oriented Systems, volume LNCS 3779 of IFIP International Conference on Network and Parallel Computing, pages 2-13. Springer-Verlag, 2006.
16. Achim Streit, Piotr Bala, Alexander Beck-Ratzka, et al. UNICOR.E 6 — Recent and Future Advancements. Technical report, Forschungszentrum Jülich Zentralbibliothek, Verlag, 2010. Jül-4319, http://hdl.handle.net/2128/3695.
17. С. Bethke, М. Calvetti, Н. F. Hoffmann, D. Jacobs, M. Kasemann, and D. Linglin. Report of the steering group of the LHC computing review2001c. Technical Report CERN/LHCC/2001-004, CERN, February2001. CERN/RRB-D 2001-3.
18. А.П. Демичев, В.А. Ильин, А.П. Крюков, and JI.В. Шамардин. Грид-технологии на службе компьютинга для большого адронного коллай-дера. Информатизация образования и науки, (4), 2009.
19. Ari Turunen et al., editors. DEIS A digest 2010. Extreme Computing in Europe. Wellprint Ltd., 2010.
20. Проект ГридННС. http://www.ngrid.ru/.
21. Ian Foster. Help shape Globus' future: A call for use cases. Globus community announcements mailing list, March 2009. http: //lists.globus.org/pipermail / announce/2009-March/000054.html.
22. Leonard Richardson and Sam Ruby. RESTful Web Services. O'Reilly . Media, Inc., May 2007.
23. Jim Webber, Savas Parastatidis, and Ian Robinson. REST in Practice. O'Reilly Media, Inc., September 2010.
24. T. Berners-Lee, R. Fielding, and L. Masinter. Uniform Resource Identifier (URI): Generic Syntax. Technical report, IETF Network Working Group, January 2005. RFC3986.
25. R. Moats. URN syntax. Technical report, IETF Network Working Group, May 1997. RFC2141.
26. Tim Banks. Web Services Resource Framework (WSRF) — Primer vl.2. Technical report, OASIS Open, May 2006.
27. Lily Liu and Sam Meder. Web Services Base Faults 1.2. Technical report, OASIS Standard, April 2006.
28. D. Crocker and P. Overell. Augmented BNF for Syntax Specifications: ABNF. Technical Report 5234, Internet Engineering Task Force, January 2008.
29. M. Nottingham. POST Once Exactly (РОЕ). Technical report, IETF Network Working Group Internet-Draft, March 2005. http://tools.ietf.org/html/draft-nottingham-http-poe-00.
30. Ричард Э. Смит. Аутентификация: от паролей до открытых ключей Издательский дом "Вильяме", Москва, 2002.
31. J. Franks, P. Hallam-Baker, J. Hostetler, S. Lawrence, P. Leach, A. Luotonen, and L. Stewart. HTTP Authentication: Basic and Digest Access Authentication. Technical report, IETF Network Working Group, June 1999. RFC2617.
32. The Basel6, Base32, and Base64 Data Encodings. Technical report, IETF Network Working Group, July 2003. RFC3548.
33. Mark Pilgrim. Atom Authentication. http://www.xml.eom/pub/a/2003/12/17/dive.html, December 2003.
34. Anthony Nadalin, Chris Kaler, Ronald Monzillo, and Phillip Hallam-Baker. Web Services Security UsernameToken Profile 1.1. Technical report, OASIS Standard, February 2006.
35. J. Astalos, R. Cecchini, B. Coghlan, R. Cowles, U. Epting, T. Genovese, J. Gomes, D. Groep, M. Gug, A. Hanushevsky, M. Helm, J. Jensen,
36. C. Kanellopoulos, D. Kelsey, R. Marco, I. Neilson, S. Nicoud,
37. D. O'Callaghan, D. Quesnel, I. Schaeffner, L. Shamardin, D. Skow, M. Sova, A. Waananen, P. Wolniewicz, and W Xing. Advances in
38. T. Dierks and E. Rescorla. The Transport Layer Security (TLS) Protocol Version 1.2. Technical report, IETF Network Working Group, August 2008. RFC5246.
39. E. Rescorla. HTTP over TLS. Technical report, IETF Network Working Group, May 2000. RFC2818. '
40. D. Crockford. The application/json Media Type for JavaScript Object Notation (JSON). Technical report, IETF Network Working Group, July 2006. RFC4627.
41. Y. Shafranovich. Common Format and MIME Type for Comma-Separated Values (CSV) Files. Technical Report 4180, Internet Engineering Task Force, October 2005. RFC4180.
42. Vlad Trifa, Dominique Guinard, Vlatko Davidovski, Andreas Kámilaris, • and Ivan Delchev. Web Messaging for Open and Scalable Distributed
43. Sensing Applications. In Boualem Benatallah, Fabio Casati, Gerti Kappel, and Gustavo Rossi, editors, Web Engineering, volume 6189 of Lecture Notes in Computer Science, pages 129-143. Springer Berlin / Heidelberg, 2010.
44. А.П. Демичев, А.П. Крюков, and JI.В. Шамардин. Принципы построения грид с использованием restful-веб-сервисов. Программные продукты и системы, (4): 172-176, 2009.
45. К. Zyp. A JSON Media Type for Describing the Structure and Meaning of JSON Documents. Technical report, IETF Network Working Group, March 2010. draft-zyp-json-schema-02.
46. А.П. Демичев, В.А. Ильин, А.П. Крюков, and JI.В. Шамардин. Реализация программного интерфейса грид-сервиса Pilot на основе архитектурного стиля REST. Вычислительные методы и программирование, 11:62-65, 2010.
47. P. Leach, М. Mealling, and R. Salz. A Universally Unique IDentifier (UUID) URN Namespace. Technical report, IETF Network Working Group, July 2005. RFC4122.
48. Rick Copeland. Essential SQL Alchemy. O'Reilly Media, Inc., first edition, 2008.
49. Mike Owens. The definitive guide to SQLite. Apress, 2006.
50. Дж. Уорсли and Дж. Дрейк. PostgreSQL. Для професиионалов. Питер,2003.
51. Поль Дюбуа. MySQL. Вильяме, 2007.
52. Phillip J. Eby. Python Web Server Gateway Interface vl.0. PEP 333,2004.
53. Python WSGI adapter module for Apache (modwsgi). http://code.google.com/p / modwsgi /.54. uWSGI fast WSGI server, http://projects.unbit.it/uwsgi/.
54. Python Paste, http://pythonpaste.org/.
55. Twisted event-driven network engine, http://twistedmatrix.com/.
56. Andrew McNab. The gridsite web/grid security system. In Grid Security Workshop, Oxford, July 2004. Citeseer.
57. Э. Гамма, Р. Хелм, Р. Джонсон, and Дж. Влиссидес. Приемы объектно-ориентированного проектирования. Паттерны проектирования Питер, 2007.
58. Steve Graham, David Hull, and Bryan Murray. Web Services Base Notification 1.3 (WS-BaseNotification). Technical report, OASIS Standard, October 2006.
59. M2Crypto — a python crypto and SSL toolkit. http://chandlerpro.ject.org/Projects/MeTooCrypto.
60. Virtual Organization Membership Service, http://glite.web.cern.ch/glite/.
61. J. Frey, T. Tannenbaum, M. Livny, I. Foster, and S. Tuecke. Condor-G: A computation management agent for multi-institutional grids. Cluster Computing, 5(3):237-246, 2002.
62. E. Huedo, R.S. Montero, and I.M. Llorente. The GridWay framework for adaptive scheduling and execution on grids. SCPE, 6(8), 2005.
63. D. Hull, K. Wolstencroft, R. Stevens, C. Goble, M.R. Pocock, P. Li, and T. Oinn. Taverna: a tool for building and running workflows of services. Nucleic acids research, 34(suppl 2):W729, 2006.
64. G. Staples. TORQUE resource manager. In Proceedings of the 2006 ACM/IEEE conference on Supercomputing, page 8. ACM, 2006.
65. David Groep. The VOMS Attribute Certificate Format. OGF Draft, artf6312, April 2010.
66. J. Jonsson and B. Kaliski. Public-Key Cryptography Standards (PKCS) #1: RS A Cryptography Specifications Version 2.1. Technical report, IETF Network Working Group, February 2003. RFC3447.
67. M. Nystrom and B. Kaliski. PKCS #10: Certification Request Syntax Specification Version 1.7. Technical report, IETF Network Working Group, November 2000. RFC2986.
Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.