Недостатки облачных вычислений
1) Требуется постоянное соединение с сетью
2) Безопасность (безопасность данных теоретически может быть под угрозой. Не все данные можно доверить стороннему провайдеру в интернете, тем более не только для хранения, но и для обработки)
3) Функциональность "облачных" приложений. Не все программы или их свойства доступны удалённо. Если сравнивать программы для локального использования и их "облачные" аналоги, то "облачные" аналоги пока проигрывают в функциональности.
4) Зависимость от "облачного" провайдера. (всегда остаётся риск, что провайдер онлайновых сервисов однажды не сделает резервную копию данных – как раз перед крушением сервера. Риск этот, впрочем, вряд ли превышает опасность того, что пользователь сам упустит свои данные – потеряв или разбив мобильник или ноутбук, не создав на домашнем ПК резервную копию. Кроме того, привязавшись к той или иной услуге, мы в какой-то степени также ограничиваем свою свободу – свободу перехода на старую версию софта, выбора способов обработки информации и так далее)
Распределённые вычисления (grid computing)
В основе технологий распределённых систем лежат:
1) удалённый доступ
2) высокая степень доступности ресурсов
3) устойчивость к сбоям и отказам
4) удалённое взаимодействие пользователей
Развитие распределённых и параллельных систем происходит под воздействием таких задач как: 1) информационный поиск и создание механизмов индексирования для поисковых машин
2) обеспечение мобильного мультимедиа
3) построение мультиагентных интеллектуальных систем
4) хранение терабайтных и петабайтных массивов данных
5) обработка естественных языков
6) исследования в биоинформатике
Традиционные задачи моделирования в науке и технике, как и раньше, требуют всё больших мощностей.
Данный круг задач накладывает следующие требования и ограничения:
1) Пространственная распределённость компонент приложения и ресурсов системы, их динамическая природа (компоненты приложения и ресурсы могут динамически создаваться, перемещаться, становиться недоступными, уничтожаться)
2) Увеличивающаяся важность соединения в одно логическое целое (при сохранении физической разделённости) структурированных и неструктурированных ресурсов распределённых данных
3) Мультидисциплинарные приложения требуют обеспечения взаимодействия отдельных моделей в рамках объединённой модели, требуют совместной работы исследователей, находящихся в разных научных центрах
4) Высокая степень взаимодействия пользователей требует значительной гибкости при проектировании, реализации, сопровождении и модификации компонент программного обеспечения
5) Преобладание "нерегулярных" вычислений, не укладывающихся в циклы простой структуры с элементами массивов простого строения (что было бы так удобно для реализации на параллельном суперкомпьютере)
6) Применение методов, первоначально появившихся в исследованиях по искусственному интеллекту, для решения задач управления программными приложениями на различных этапах их жизненного цикла
В основе Грида лежат (в дополнение к распределённому компьютингу) федеративное объединение сообществ пользователей (без жёсткой централизации), виртуализация ресурсов, стандартизация, маскирование неоднородности условий работы.
Под сообществом (виртуальной организацией) понимается множество распределённых в сети ресурсов, управляемых по одним и тем же правилам; можно понимать также некоторую область администрирования. Виртуализация означает, что ресурсы в сообществе представлены так, что скрыто их местонахождение и принадлежность (правило не без исключений).
Стандартизация означает, что федерация построена на открытых стандартах, протоколах и интерфейсах. Маскирование неоднородностей означает, что программное обеспечение промежуточного уровня в Грид должно обеспечить "стирание различий" между программными обеспечениями промежуточного уровня виртуальных организаций.
Можно написать условную "формулу":
Грид компьютинг = распределённый компьютинг + {федеративное объединение сообществ пользователей (без жёсткой централизации), виртуализация ресурсов, стандартизация, маскирование неоднородности условий работы}
Грид отличается от Интернета (точнее, его службы WWW) тем, что поддерживает работу не только с распределённой информацией, но и использование распределённых вычислительных мощностей для выполнения приложений пользователей.
Распределённые системы и Грид используют несколько уровней децентрализации данных и управления для того, чтобы адаптироваться к требованиям приложения.
Архитектура Грид
Грид состоит из четырёх слоёв:
1) Пользовательские интерфейсы, приложения и среда решения задач (problem-solving envieronment)
2) Средства разработки, программные модели, языки программирования
3)Промежуточное программное обеспечение (middleware) Грид: 1) управление ресурсами 2) фиксация информации и её обнаружение 3) программное обеспечение безопасности 4) доступ к памяти 5) различные службы (вычислительные и коммуникационные)
4) Неоднородные ресурсы и инфраструктура сетей
Грид вычисления должны решать такие задачи, как:
1) запуск и выполнение заданий
2) управление данными
3) формирование потоков работ (workflow)
4) работа в режиме on-line в совместных проектах
Типы приложений в Грид и пользовательские профили:
1) Грид как большой компьютер, то есть доступ одного пользователя к большой суперкомпьютерной мощности для решения его задачи
2) Грид как коллекция научных данных (требуется обеспечение доступа к большим объёмам научных данных (результатов экспериментов, астрономических наблюдений и т.д.), рассредоточенных по различным научным центрам, оптимизация при передаче этих данных и их обработке)
3) Единое информационное пространство и виртуальные организации (обеспечение одновременной работы большого количества пользователей в некоторой предметной области и/или организации с доступом к общим данным, с разделением ресурсов и взаимодействием пользователей через Грид)
4) Семантический Грид – Грид как всемирное хранилище знаний (географически распределенная база знаний, поддерживающая интеллектуальный информационный поиск, извлечение знаний из "сырых" данных (data mining), принятие решений)
Эти приложения требуют большей, чем имеется сегодня, вычислительных мощностей, а также стандартизации и унификации интерфейсов для достижения интеграции отдельных служб и обеспечения координации в работе.
Грид вычисления выполняют эффективный поиск в больших массивах данных (как текстовых, так и мультимедийных), требующий распараллеливания и процессов вычислений и операций ввода/вывода.
Развитие инфраструктуры Грид включает технологии создания приложений для:
1) проблемных областей, являющихся распределёнными, мобильными и изменяющимися. Такие приложения требуют создания соответствующих абстракций (системы понятий), позволяющих их структурировать и описывать взаимодействие и координацию в достижении целей.
2) области интеграции распределённых разнородных компонент, поддержка реконфигурациикомпонент и их исполнения в системах различного масштаба.
3) систем, поддерживающих совместную работу, где динамические изменения могут происходить в составе рабочей группы, а отдельные пользователи могут включаться в неё или покидать группу.
Грид позволяет внедрить такую перспективную технологию, как компонентное программирование, которое позволяет строить приложения различной степени сложности и "гранулярности", упрощает доступ к пакетам прикладных программ. Компонентная модель позволяет провести чёткое разделение между вычислениями и взаимодействием, что очень важно с учетом неоднородности программных компонент Грид. Неоднородность обусловливает трудности взаимодействия, динамической модификации и реконфигурации.
Данная технология поддерживает все этапы жизненного цикла приложения (от спецификации и проектирования, генерации кода до конфигурирования и сопровождения).
Она должна обеспечивать:
1)Спецификацию приложения в терминах множества компонент
2) Чёткое разделение описаний структуры и поведения приложения, вычислительной части и взаимодействий
3) Иерархическое представление приложения с отображением вышележащих слоёв на нижележащие слои. Возможность изменения этого отображения, в том числе в процессе обработки данных
4) Возможность отображать уровень приложения на уровень оборудования, тем самым решая задачу распределения нагрузки в системе
5) Поддерживать координацию распределённых сущностей, их адаптацию к окружению, динамическую реконфигурацию
6) Поддерживать сервисы инфраструктуры распределённых систем (управление событиями, именами, транзакциями, создание "мостов" между разными распределёнными системами (между Грид-системами))
Важными понятиями являются паттерны, шаблоны (формы) и каркасы (skeleton). Они позволяют использовать как ранее описанные структуры, так и поведение. Таким образом, постепенно формируется "виртуальная библиотека" общих компонент вычислительного характера и типовых взаимодействий, доступная различным разработчикам.
Паттерны применяются в распределённых системах и хранятся в репозиториях (базах) программных шаблонов, с указанием необходимых атрибутов, что позволяет создавать их и управлять ими в течение всего жизненного цикла – от проектирования до выполнения. Паттерны допускают различные реализации и различную степень автоматизации их использования.
Отображение программных моделей на нижележащие слои компонент и компьютерных платформ требует использования гибких средств конфигурирования и сопровождения, динамической реконфигурации. Это должно обеспечиваться хорошим взаимодействием со слоем промежуточного программного обеспечения, с механизмами описания ресурсов и отыскания сервисов, с управлением в процессе выполнения программ и мониторингом служб.
Дата добавления: 2015-12-29; просмотров: 1089;