Cloud computing and Smart - technology

Подводя итог по рассматриваемой в статье теме, необходимо ответить на вопрос: «Зачем нужно умное образование в XXI веке?». Умная система обучения означает гибкое обучение студента в интерактивной образовательной среде, позволяющее ему максимально быстро адаптироваться к окружающей среде, учиться в любое время и в любом месте на базе свободного доступа к контенту по всему миру. При этом Smart education строится на персонифицированном подходе, основанном на учете следующих параметров каждого слушателя:

- текущий познавательный уровень;

- текущее эмоциональное состояние;

- предпочитаемые способы обучения;

- момент способности к обучению.

Главная цель новой модели образования - создание среды, обеспечивающей максимально высокий уровень конкурентоспособного образования за счет развития у слушателя знаний и навыков, на которые предъявляет спрос современное информационное общество:

- сотрудничество;

- коммуникация;

- социальная ответственность;

- способность мыслить критически;

- оперативное и качественное решение проблем.

Такая постановка задачи обусловливает необходимость использования лишь активного контента, построенного на принципе интеграции знаниевых объектов, e-metrics и систем управления учебным процессом.

За счет развития подходов, методов и технологий электронного обучения происходит неминуемая трансформация образования в направлении Smart. В свою очередь, люди, подготовленные в среде Smart education, быстрее адаптируются к условиям умной жизни и страны в целом. Экономика же страны, построенная на основе единых подходов к разработке подобной концепции, позволяет выйти на мировую арену и взаимодействовать в рамках единых стандартов.

УДК 004.4 ВАК 05.13.11 РИНКЦ 50.05.13

ОБЛАЧНЫЕ ВЫЧИСЛЕНИЯ И SMART-ТЕХНОЛОГИИ

А. В. Бойченко, к. т. н., руководитель НИЧ Тел.: (495) 442-82-33, e-mail: ABoichenko@mesi.ru Московский государственный университет экономики, статистики и

информатики (МЭСИ) http://www .mesi. ru

The article considers the current state of cloud computing and smart-technologies, and also the questions of application of these technologies in the information systems supporting process of training. Among the problems of cloud computing it is possible to specify problems of technological character (visualization), problems of standardization of the technology in question, infrastructural problems, problems of safety of cloud services provided to consumers, etc. Smart-technologies in the field of processes of electronic training (Smart-education) are treated as realization by means of the corresponding software of some additional functions greatly expanding applied possibilities of information systems, used in this or that applied area. Smart-technologies in such context can be considered as the class «Software Intensive Systems».

Статья посвящена рассмотрению современного состояния облачных вычислений и smart-технологий, а также вопросам применения этих технологий в информационных системах, поддерживающих процесс обучения. Рассматриваются проблемы облачных вычислений, среди которых можно указать проблемы технологического характера (виртуализация), проблемы стандартизации данной

технологии, инфраструктурные проблемы, проблемы обеспечения безопасности предоставляемых потребителям облачных услуг и др. проблемы. Smart-технологии, в том числе и в области процессов электронного обучения (Smart education), трактуются как реализация с помощью соответствующего программного обеспечения некоторых дополнительных функций, существенно расширяющих прикладные возможности информационных систем, используемых в той или иной прикладной области. Smart-технологии в таком контексте можно рассматривать как класс программно нагруженных систем (Software Intensive Systems).

Ключевые слова: облачные вычисления, облачные сервисы, виртуализация, программно нагруженные системы, умные технологии, умное образование.

Keywords: cloud computing, cloud services, virtualization, Software Intensive Systems, Smart technologies, Smart education.

Информационные технологии глубоко проникли в жизнь современного общества - как отдельных людей, так и большинства предприятий. Движение к информационному обществу признано мировым сообществом стратегическим направлением развития современной цивилизации. Все это означает значительную нагрузку на предприятия в части создания корпоративной информационной инфраструктуры и информационных систем, удовлетворяющих жизненно важные потребности предприятия. Решение проблемы нагрузки, повышения качества информационных услуг предлагает новая парадигма организации предоставления информационных услуг, реализующая технологию т. н. «облачных» вычислений, когда в той или иной мере

информационные потребности удовлетворяются на предприятии внешними провайдерами. При этом потребители облачных услуг, предоставляемых провайдерами, оплачивают только стоимость использования услуги и не оплачивают стоимость владения программно-аппаратными средствами, с помощью которых эти услуги создаются.

Облачные вычисления (англ. cloud computing, также используется термин «облачная обработка данных») - технология обработки данных, в которой программное и/или аппаратное обеспечение предоставляется пользователю как услуга.

Пользователь имеет доступ к собственным данным, но не может управлять операционной системой и собственно ПО, с которым работает (заботиться об инфраструктуре ему также не нужно). Непосредственно «облаком» называют некоторый набор прикладных, платформенных и других сетевых сервисов, предоставляемых провайдером этого облака, как правило, через интернет-транспорт. При этом многие технические детали реализации этих сервисов скрыты от конечного пользователя.

В основе облачных вычислений лежит несколько подходов.

Первый - доступность через Интернет. Конечно, бывают и закрытые системы, но, как правило, все можно использовать через сети (при этом «наружу» облако предоставляет себя как обычный сервер).

Второй - виртуализация. Благодаря виртуализации пользователи получают столько ресурсов, сколько им надо (и, разумеется, сколько могут позволить себе приобрести). Что для этого требуется со стороны сервера и каким образом он может выделить такие ресурсы - все сокрыто за стенами виртуальных машин; они могут работать на сотнях и даже тысячах серверов, а зачастую - еще и в разных дата-центрах.

Третий момент - cloud computing - это услуга. В 60-е годы за машинное время приходилось платить и ждать свободного часа. В cloud computing используется схожий подход. И пусть стоять в очереди не нужно - все услуги также оплачиваются отдельно. Облако для пользователя - это некоторый набор услуг, которые потребляются и оплачиваются, порой без малейшего представления, что же там происходит внутри облака.

Четвертый момент - простота и стандартность. Как правило, здесь нет новых языков, сложных конфигурационных файлов и многочасовых сессий в терминале для настройки всех доменов. Все, что предлагается внутри облака, доступно через простые вызовы API и протоколы. Большую популярность завоевал так называемый протокол REST, с помощью которого все операции над данными можно производить через htp-запросы. Могут применяться и другие решения, более того, доступны готовые библиотеки для разных языков программирования.

С технической точки зрения облако представляет собой набор удаленных серверов, на которых разворачиваются виртуальные среды и программное обеспечение. Прямого доступа к аппаратному обеспечению пользователь не имеет, и обычно для доступа к серверам используется интернет. В облачных вычислениях различают несколько видов сервисов, для удобства в их обозначении используют аббревиатуру aas - as a service, то есть «как сервис», или «в виде услуги».

В качестве услуг рассматривается примерно полтора десятка сервисов, основными из которых являются следующие услуги:

- платформа как сервис (PaaS - Platform as a Service);

- услуги информационной инфраструктуры (IaaS - Infostructure as a Service);

- услуги приложений (SaaS - Software as a Service).

Кроме того, могут предоставляться такие услуги, как «рабочее место как сервис» (WaaS -Workplace as a Service), «аппаратура как сервис» (HaaS - Hardware as s Service), «коммуникация как сервис» (CaaS - Communication as a Service) и др.

PaaS - это предоставление интегрированной платформы для разработки, тестирования, развертывания и поддержки приложений как услуги. В облаке функционирует некоторый набор программ, основных сервисов и библиотек, на основе которых предлагается разрабатывать свои приложения. Помимо этого, под PaaS понимают также и отдельные части сложных систем, например системы базы данных или коммуникаций.

При предоставлении этого вида услуги инфраструктура настроена, операционные системы уже стоят и работают, программная платформа предоставляет удобный API. Основная целевая аудитория - разработчики ПО. При наличии удобных визуальных сред это могут быть пользователи, далекие от программирования.

IaaS - это предоставление программно-аппаратных ресурсов, как правило, объединенных на основе виртуализации, как услуги. IaaS состоит из трех основных компонентов - аппаратное обеспечение (серверы, системы хранения данных, клиентские системы, сетевое оборудование), операционные системы и системное ПО (средства виртуализации, автоматизации, основные средства управления ресурсами) и связующее ПО для управления аппаратным и программным обеспечением. До конечного решения пользователю этой категории услуг придется вложить больше ресурсов, чем при использовании PaaS. Целевая аудитория та же - разработчики ПО.

В модели IaaS предоставляется виртуализированная среда на базе некоторых серверов, объединенных в кластеры. Фактически пользователю предоставляется виртуальная машина, которая работает на системах провайдера и внутри которой есть все возможности для установки сначала ОС, а потом уже настройки необходимого ПО. Предоставляемые аппаратные ресурсы могут быть гибко и почти мгновенно изменены в большую или меньшую сторону. Также возможно взять как услугу несколько таких виртуальных серверов; соответственно, можно создать между ними свою локальную сеть. Пользователю не предоставляется доступ к уровню ниже, чем слой виртуализации.

SaaS или SoD (Software on Demand, программное обеспечение по требованию) - приложение как сервис (оплата по времени использования приложения). Целевая аудитория - конечные потребители. Приложения в виде сервисов - вариант, при котором предлагается использовать какое-то конкретное ПО, например корпоративные системы, в виде сервиса по подписке. Скажем, у предприятия нет возможности или желания содержать внутренний Exchange -сервер для работы почты, календарей и т. п. - и оно может купить его удаленно с учетом всей необходимой специфики.

В модели SaaS пользователь имеет доступ лишь к конкретному приложению. Ни к API, ни к программному коду приложения пользователь доступа не имеет. Все, что ему доступно, - это программная среда, обычно в окне браузера, и файловое хранилище для своих документов. Ярким примером такого сервиса можно назвать Google Docs для работы с офисными документами и Adobe Air для работы с изображениями.

В данной модели продажи программного обеспечения поставщик сам разрабатывает веб-приложение и самостоятельно управляет им, предоставляя заказчикам доступ к программному обеспечению через Интернет.

Фактором, объясняющим экономическую целесообразность SaaS, является «эффект масштаба» - провайдер SaaS обслуживает множество клиентов и потому тратит меньшее количество ресурсов на управление каждой копией программного обеспечения. В конечном счете пе-

риодическая стоимость услуг для конечного заказчика становится ниже издержек, возникающих при использовании классической модели лицензирования.

Другим ключевым фактором является уровень обслуживания SaaS. Провайдер SaaS способен предложить уровень обслуживания и поддержки ПО в работоспособном состоянии, недоступный для внутренних IT-отделов компаний. Это особенно ярко проявляется в случае использования провайдером контракта SLA.

Не останавливаясь на достоинствах технологии облачных вычислений, часть из которых была перечислена выше, рассмотрим некоторые проблемы, присущие данной технологии и ограничивающие ее применение.

Среди очевидных проблем можно перечислить следующие:

- необходимость постоянного соединения с сетью Интернет;

- плохо работает с медленным интернет-доступом;

- программы могут работать медленнее, чем на локальном компьютере;

- не все программы или их свойства доступны удаленно;

- безопасность данных может быть под угрозой;

- если клиентские данные в облаке потеряны, они потеряны навсегда.

Далее укажем некоторые проблемы, требующие дальнейших исследований и работ по их решению.

Проблема привязки облачных технологий к перспективным инфраструктурным решениям (GWD-технологии, технология веб-сервисов). Данная проблема в настоящее время решается, в частности, организацией по стандартизации GRID - Open Grid Forum (OGF) исследованием различных способов доступа к облачным сервисам с использованием инфраструктуры GRID с применением следующих стандартов:

- Web Services Agreement Specification (WS-Agreement);

- GLUE Schema;

- Lightweight Directory Access Protocol (LDAP);

- Storage Resource Manager Interface (SRM);

- Data Movement Interface (DMI);

- GridFTP;

- Open Virtualization Format Specification (OVF);

- Job Submission Description Language (JSDL);

- Basic Execution Service (BES);

- Usage Record (UR).

Проблемы сетевого хранения данных и облачных баз данных. В облачных средах особенно важным качеством является управляемость баз данных. Это вызывает необходимость разработки технологий самоуправления баз данных, которые исследовались в последнее десятилетие.

Отдельной проблемой является абсолютный масштаб облачного компьютинга, т. к. современные SßL-ориентированные системы баз данных не могут масштабироваться на тысячи узлов при размещении в облачном контексте.

Также требует решения проблема обеспечения безопасности и конфиденциальности данных, которые не могут гарантироваться за счет наличия физического разграничения машин или сетей.

Проблемы виртуализации, заключающейся в программной реализации аппаратных ресурсов. Различают виртуализацию платформ и виртуализацию ресурсов. Продуктом виртуализации платформ являются виртуальные машины - некие программные абстракции, которые сами функционируют на платформе реальных аппаратно-программных систем. Целью виртуализации ресурсов является комбинирование или упрощение представления аппаратных ресурсов для пользователя и получение неких пользовательских абстракций оборудования, пространства имен, сетей и т. п.

Создание нескольких виртуальных машин, использующих общие аппаратные ресурсы, позволяет одновременно устанавливать несколько виртуальных систем и выполнять несколько приложений на одном компьютере.

Одновременная работа с несколькими операционными системами на одном компьютере, централизованное управление сотнями виртуальных ПК, разделение одного сервера на несколько рабочих пространств с отдельной операционной системой в каждом - все это примеры

применения технологии виртуализации. Проблема здесь заключается в отсутствии четких спецификаций и методик их применения для различных видов виртуализации.

Проблемы проектирования облачных сервисов - технология облачных вычислений только декларирует различные виды облачных услуг, в настоящее время отсутствуют подходы к четкому специфицированию предоставляемых сервисов.

Проблемы стандартизации. Любая сложная информационная технология считается зрелой, когда ее применение поддержано достаточным количеством стандартов (открытых нормативно-технических документов), комплексно описывающих все аспекты данной технологии. О технологии облачных вычислений этого пока сказать нельзя, несмотря на достаточно большой набор примеров успешной реализации отдельных облачных сервисов.

Проблемой стандартизации облачных сервисов относительно недавно занялись несколько организаций, среди которых можно упомянуть следующие:

The Cloud Computing Interoperablity Forum (CCIF). Создан для разработки инфраструктуры облачных вычислений. В сферу деятельности CCIF входит решение вопросов совместимости облачных технологий, стандартизации API, безопасности виртуальных частных облаков и другие.

The Open Group Cloud Computing. Целью создания The Open Group Cloud является объединение потенциала ведущих в отрасли облачных вычислений поставщиков и конечных пользователей для создания общего понимания, каким образом потребители могут использовать технологии cloud computing как безопасный и надежный компонент их архитектур для значительного снижения затрат и гибкой масштабируемости.

Open Grid Forum занимается в области облачных вычислений вопросами доступа к сетевым данным, интероперабельностью посредством облаков, разработкой облачных API, вопросами безопасности, корреляции облачных вычислений и Grid-инфраструктур, управлением производительностью и стоимостными моделями.

Storage Networking Industry Association представляет собой ассоциацию производителей сетевых средств хранения данных. Эта организация объявила об инициативе Cloud Storage Initiative (CSI), направленной на выработку стандартов и спецификаций хранения данных в облаке для коммерческого и потребительского секторов. CSI дополнит существующие технические наработки ранее созданной рабочей группы SNIA Cloud Storage Technical Working Group, в которую входят 140 членов - представителей более 50 вендоров, сервис-провайдеров и академических учреждений.

Консорциум Open Management Group (OMG) в области облачных вычислений занимается определением «Распределенного недетерминированного компьютинга» на базе облаков и соответствующими перспективами SOA, вопросами разработки SLA для облачных сервисов, а также коммуникацией сервисов между облаками и внутри облаков.

Консорциум The Open Group, разрабатывающий стандарты в области интеграции корпоративных систем, анонсировал стандарты для промышленного внедрения технологий сервис-ориентированной архитектуры и облачных вычислений. Стандарты носят названия Open Group Service Integration Maturity Model и SOA Governance Framework. Как утверждают в The Open Group, оба стандарта в равной степени важны для развертывания SOA в большой организации. Стандарт OSIMM необходим при внедрении SOA и облачных вычислений, чтобы оценить уровень реализации SOA, который будет наилучшим образом соответствовать целям и возможностям предприятия.

Вопросы безопасности облачных вычислений требуют отдельного особого рассмотрения, т. к. они представляют собой необходимость решения не только технических проблем, но и проблем психологического доверия пользователей к использованию облачных услуг.

Smart-технологии, или умные технологии, можно трактовать как расширение функциональности информационных систем (за счет дополнительного программного обеспечения), реализующих ту или иную прикладную технологию.

С точки зрения реализации Smart-технологии можно рассматривать как класс информационных систем, называемый «программно нагруженные системы» (Software Intensive Systems). По определению, приведенному в [11], программно нагруженными системами может являться любой продукт или сервис, функциональность которого существенно зависит от программного обеспечения или даже определяется им. В этой же работе указывается, что для экономических оценок была разработана методология в соответствии с которой программная нагруженность

измеряется в процентах от затрат на исследования и разработку соответствующего программного обеспечения.

Архитектура и принципы построения таких систем рассматриваются в документе IEEE 1471-2000 Recommended Practice for Architecture Description of Software-Intensive Systems [13].

Если говорить об информационных системах, используемых в процессах обучения (LMS/LCMS), то здесь имеется в виду повышение их «интеллектуальности» за счет реализации в них дополнительных функций, повышающих качество, интенсивность и другие атрибуты обучения.

Именно в этом заключается переход от технологий электронного обучения (e-learning) к Smart education.

Этап e-learning можно характеризовать созданием информационных инфраструктур в учебных заведениях и реализации на них относительно небольшой функциональности, в основном организационно-учетной и коммуникационной.

На этапе Smart education функциональность LMS/LCMS значительно расширяется с акцентом на поддержку содержательных аспектов обучения (развития компетенций).

Среди таких аспектов можно отметить:

- поддержку усвоения дисциплин (семантическая разметка дисциплин и индивидуальный мониторинг нахождения студента на семантическом графе дисциплины);

- развитие практических компетенций на базе создания виртуальных лабораторий, моделей реальных предприятий, а также виртуальных сред и сервисов, позволяющих студентам проводить на этой базе научные и опытно-конструкторские работы, создавать виртуальные инновационные предприятия и т. д.

Сочетание технологий облачных вычислений как технологической базы и развитие на этой базе прикладных технологий (Smart-технологии) представляется весьма перспективным.

Решение перечисленных выше проблем технологии облачных вычислений значительно продвинет использование данной технологии, которую многие аналитики ставят на первое место среди основных технологий и тенденций в области информационных технологий и которая будет иметь стратегическое значение для большинства организаций, в том числе и для учебных заведений.

Литература

1. Velte A., Velte T., Elsenpater R. Cloud Computing. A Practical Approach. - McGrowHill, 2010.

2. Rittinghouse J. W., Ransome J. F. Cloud Computing: Implementation, Management and Security. - CRC Press, 2009.

3. Shulz G.The Green and Virtual Data Center. - Minnisota, USA, 2009.

4. Latif Sh., Mather T., Kumaraswamy S. Cloud Security & Privacy: An Enterprise Perspective on Risks and Compliance (Theory in Practice). - O'Reilly Media, 2009.

5. Fingar P. Dot Cloud - The 21st Century Business Platform Built on Cloud Computing. - Meghan-Kiffer Press, 2009.

6. Ville A., Liddle J. The Savvy Guide to HPC, GRID, Data GRID, Virtualization and Cloud Computing. -Thesavvyguideto, 2009.

7. Облачные вычисления для всех. - http://voblaka.ru.

8. Белогрудое В. «Облачные» вычисления - достоинства и недостатки. - http://www.smart-cloud.org/sorted-articles/44-for-all/96-cloud-computing-plus-minus.

9. Облачные вычисления. - http://primat.at.ua/news/2009-05-19-157.

10. Cloud computing. - http://www.itpedia.ru/index.php/Cloud_Computing.

11. Software intensive systems in the future. Final report. - IDATE, 2006. -www.itea2.org/.../ITEA_SIS_in_the_future_Final_Report.pdf.

12. Goldin D., Keil D. Interactive Models for Design of Software-Intensive Systems, Computer Science & Engineering. - Dept. University of Connecticut Storrs, CT USA, 2005.

13. IEEE Std 1471-2000. IEEE Recommended Practice for Architectural Description of Software-Intensive Systems.

*

*

*