Описание того, что было до облака

Завершено

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

Примеры областей применения и приложений

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

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

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

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

Обеспечение масштабирования

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

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

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

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

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

Масштабирование повлияло на все аспекты бизнес-вычислений. Например, масштабирование оказало влияние на системы CRM за счет увеличения количества клиентов или объема хранимой и анализируемой информации о клиентах. Бизнес-вычисления решают задачи масштабирования путем вертикального и горизонтального масштабирования, а также консолидации ИТ-ресурсов в центрах обработки данных и совместного размещения. В научных вычислениях для увеличения масштаба проблем и точности их числового моделирования были применены параллельные и распределенные системы. Одним из определений параллельной обработки является применение нескольких однородных компьютеров, совместно использующих состояние и функционирующих как один большой компьютер для выполнения крупномасштабных или высокоточных вычислений. Распределенные вычисления — это использование нескольких автономных вычислительных систем, подключенных к сети, для разделения большой проблемы на подзадачи, которые выполняются одновременно и передаются по сети через сообщения. Научное сообщество продолжало вводить новшества в этих областях, чтобы решить проблему масштабирования. В персональных вычислениях масштабирование оказало влияние посредством возросших требований пользователей, обусловленных большим объемом содержимого и разнообразием приложений. Таким образом, пользователи могут масштабировать свои собственные персональные вычислительные устройства, чтобы удовлетворить эти требования.

Рост интернет-служб

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

Compare traditional and internet-scale computing.

Рис. 2. Сравнение традиционных и интернет-вычислений

XXI век ознаменовался взрывным ростом объема и пропускной способности беспроводных коммуникаций и Интернета. Эти изменения привели к созданию общества, управляемого сетями и данными, где можно легко создавать, распространять цифровую информацию, а также осуществлять доступ к ней. По некоторым оценкам, Интернет сформировал глобальный рынок из миллиардов пользователей, начиная с 25 000 000 в 1994 году1. Такой рост объема данных и подключений является ценным для предприятий. Данные создают ценность несколькими способами, включая включение экспериментов, сегментирование населения и поддержку принятия решений с помощью автоматизации.2 Путем охвата цифровых технологий, топ-10 экономик в мире, как ожидается, увеличит их добычу на более чем триллион долларов к 2020 году.

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

Increasing number of internet users per year.

Рис. 3. Увеличение числа пользователей Интернета в год

Increasing amount of data stored per year.

Рис. 4. Увеличение объема данных, хранящихся в год5

Ниже приведены некоторые примеры систем, доступных через Интернет:

  • Поисковые системы, которые сканируют, хранят, индексируют и ищут большие (до петабайта) наборы данных. Например, Google начинал как гигантский веб-индекс, который сканировал и анализировал веб-трафик раз в несколько дней и сопоставлял эти индексы с ключевыми словами. Теперь он обновляет свои индексы практически в режиме реального времени и является одним из самых популярных способов доступа к информации в Интернете. Его индекс содержит триллионы страниц размером в тысячи терабайт4.
  • Социальные сети, такие как Facebook и LinkedIn, позволяющие пользователям налаживать личные и профессиональные связи и создавать сообщества на основе схожих интересов. Например, Facebook теперь поддерживает более миллиарда активных пользователей в месяц.
  • Интернет-службы розничной торговли, такие как Amazon, которые осуществляют глобальную инвентаризацию миллионов продуктов, которые продаются более чем 200 000 000 клиентов при суммарном объеме продаж почти 90 млрд долларов США в год.
  • Многофункциональные потоковые мультимедийные приложения, которые позволяют людям просматривать и обмениваться видеороликами и другими видами разнообразного контента. Один из таких примеров, YouTube, в секунду обрабатывает передачу такого объема данных, который соответствует 300 минутам видео.
  • Системы связи в реальном времени для аудио, видео и текстовых чатов, такие как Skype, которые обеспечивают более 50 миллиардов минут разговоров в месяц.
  • Пакеты для повышения производительности и совместной работы, которые обслуживают миллионы документов для многих одновременно работающих пользователей, обеспечивая постоянные обновления в режиме реального времени. Например, Microsoft 365 ежемесячно поддерживает 50 млн активных участников совместной работы.
  • CRM-приложения от таких поставщиков, как Salesforce, развернуты в более чем ста тысячах организаций. Крупные системы CRM теперь предоставляют интуитивно понятные информационные панели мониторинга для отслеживания состояния, аналитику для поиска клиентов, которые генерируют наибольшую прибыль, прогнозирование доходов для предсказания будущего роста.
  • Приложения для интеллектуального анализа данных и бизнес-аналитики, которые анализируют использование других служб (например, указанных выше), чтобы выявить проблемы и возможности для монетизации.

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

Ниже приведены некоторые требования к системам масштабирования в Интернете.

  • Ubiquity: доступно из любого места в любое время из множества устройств. Например, продавец ожидает, что служба CRM будет предоставлять своевременные обновления на мобильном устройстве, чтобы сделать посещения клиентов более короткими, быстрыми и эффективными. Служба должна бесперебойно функционировать при различных сетевых подключениях.
  • Высокий уровень доступности. Служба должна быть всегда доступна. Время доступности измеряется количеством девяток. Три девятки, или 99,9 %, означают, что служба будет недоступна в течение 9 часов в год. Пять девяток (около 6 минут в год) — это типичный порог для службы высокой доступности. Даже несколько минут простоя в онлайн-приложениях для розничной торговли могут негативно повлиять на продажи в миллионы долларов.
  • Низкая задержка: быстрое и быстрое время доступа. Было доказано, что даже незначительное замедление загрузки страницы значительно сокращает использование этой веб-страницы. Например, увеличение задержки поиска со 100 мс до 400 мс сокращает количество запросов на пользователя с 0,8 % до 0,6 %, и это изменение сохраняется даже после восстановления задержки до исходного уровня.
  • Масштабируемость: способность справиться с переменной нагрузкой обычно из-за сезонности и вирусности, которая вызывает пики и тротуры в трафике в течение длительного и короткого периода времени. В такие дни, как "черная пятница" и "киберпонедельник", розничные продавцы, такие как Amazon, сталкиваются с сетевым трафиком, в несколько раз превышающим средний показатель.
  • Экономичность: для службы интернет-масштабирования требуется гораздо больше инфраструктуры, чем традиционное приложение, а также более эффективное управление. Один из способов сократить расходы заключается в том, чтобы упростить управление службами и сократить количество администраторов, обслуживающих службу. Меньшие службы могут иметь низкое соотношение службы к администратору (например, 2:1, что означает, что один администратор должен поддерживать две службы). Для поддержания прибыльности такие службы, как Microsoft Bing, должны иметь высокое соотношение служб и администраторов (например, 2500:1, то есть один администратор поддерживает 2500 служб)6.
  • Взаимодействие. Многие из этих служб часто используются вместе и поэтому должны обеспечить простой интерфейс для повторного использования и должен поддерживать стандартизированные механизмы импорта и экспорта данных. Например, многие другие службы (такие как Uber) могут интегрировать Карты Google в свои продукты, чтобы предоставлять пользователям упрощенную информацию о местоположении и навигации.

Теперь мы рассмотрим некоторые ранние решения для различных проблем, описанных выше7. Первой проблемой, которую необходимо было решить, было значительное время на взаимодействие (в обе стороны) с первыми веб-службами, расположенными в основном в США. Самые ранние механизмы для решения проблем с низкой задержкой (из-за удаленных серверов) и сбоя сервера просто полагались на избыточность. Одним из методов достижения этого было "зеркальное отображение" содержимого, при котором копии популярных веб-страниц хранятся в разных местах по всему миру. Это позволило минимизировать объем нагрузки на центральном сервере, сократить время ожидания конечных пользователей и переключать трафик на другой сервер в случае сбоев. Недостатком такого подхода стало увеличение уровня сложности из-за борьбы с несогласованностями при необходимости изменить даже одну копию данных. Таким образом, этот метод более полезен для статических рабочих нагрузок с интенсивными операциями чтения, таких как показ изображений, видео или музыки. Из-за эффективности этой методики большинство интернет-служб используют сети доставки содержимого (CDN) для хранения распределенных глобальных кэшей популярного контента. Например, Cable News Network (CNN) теперь поддерживает копии своих видео на нескольких "пограничных" серверах в разных местах по всему миру с персонализированной рекламой для каждого расположения.

Конечно, отдельным компаниям не всегда имеет смысл покупать десятки серверов по всему миру. Эффективность затрат часто достигается за счет использования служб общего размещения. В этом случае части одного веб-сервера будут сданы в аренду нескольким клиентам, что приведет к амортизации затрат на обслуживание сервера. Службы общего размещения могут быть высокоэффективными, так как ресурсы могут быть избыточно подготовлены при условии, что не все службы будут одновременно работать на максимальной мощности. (Избыточный физический сервер является одним из тех, где агрегатная емкость всех клиентов больше фактической емкости сервера.) Недостатком было то, что почти невозможно изолировать услуги клиентов от тех, кто их соседей. Таким образом, одна перегруженная или подверженная ошибкам служба может отрицательно повлиять на всех ее соседей. Еще одна проблема возникла потому, что арендаторы часто могут быть злоумышленниками и пытаться использовать свое преимущество совместного размещения для кражи данных или отказа в обслуживании других пользователей.

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

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

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

Другим подходом к совместному использованию ресурсов были распределенные вычисления типа "решетка", которые позволяли совместно использовать автономные вычислительные системы между учреждениями и географическими точками. Несколько академических и научных учреждений могли сотрудничать и объединять свои ресурсы для достижения общей цели. Затем каждое учреждение присоединялось к "виртуальной организации", выделяя ресурсы определенного набора с помощью четко определенных правил совместного использования. Ресурсы часто бывали разнородными и слабо связанными, что требовало сложных программных конструкций для соединения. Сетки были направлены на поддержку некоммерческих исследовательских и академических проектов и опирались на существующие технологии с открытым кодом.

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

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


Ссылки

  1. Real Time Statistics Project (2015). Internet Live Stats (Динамическая статистика в Интернете)
  2. IBM (2017). What is Big Data? (Что такое большие данные?)
  3. Google Inc. (2015 г.). Как выполняется поиск
  4. Hilbert, Martin and Lopez, Priscila (2011). The world's technological capacity to store, communicate, and compute information
  5. Гамильтон, Джеймс Р. и др. (2007). О разработке и развертывании служб интернет-масштабирования
  6. Brewer, Eric and others (2001). Lessons from giant-scale services