Как стать автором
Обновить

Облачные вычисления: основы применения в сфере Интернет-стартапов

Время на прочтение13 мин
Количество просмотров22K
Всем привет :)
Этот мой первый пост на Хабре — доклад на конференцию «Электронный бизнес и управление Интернет-проектами» , которая проходила в ГУ-ВШЭ 19-20 мая.
Буду рад любым Вашим комментариям и замечаниям.
UPD К сожалению, нет возможности перенести в тематический блог :( Пусть висит здесь :)
UPD2 Спасибо за карму, перенес в этот блог (блога Облачных вычислений не нашел, плохо искал?)
UPD3 Я реально попал на главную, или мне снится? о_О
Острожно: много букоф! :)

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

Введение
История знает множество примеров того, как некий продукт постепенно превращался в определенную общественную услугу. Достаточно вспомнить лишь переход от газовых горелок и газовых баллонов к публичной услуге предоставления газа. Такие примеры предоставляют нам понимание того, как уникальность технологии постепенно получает массовость, превращаясь в сервис.
Еще совсем недавно, буквально 20 лет назад, доля использования информационных технологий в бизнесе составляло меньше 5-10 %. Сейчас – практически 100%. Переход от уникальности к масштабности позволяет воспринимать вычислительные мощности уже не как отдельный компьютер-сервер, стоящий в здании организации, а как услугу, которая предоставляется неким далеким датацентром.

Собственно именно поэтому облачные вычисления называют новым трендом в развитии информационных технологий. Именно поэтому многие компании начинают понимать важность и необходимость «ухода в облако». И именно поэтому сейчас необходимо осуществлять научно-исследовательские проекты в этой сфере. Эта работа – первые шаги по анализу облачных вычислений, их применимости в Интернет-бизнесе в текущих реалиях. Что такое «облачные вычисления»? Какие преимущества они представляют по сравнению с другими схожими технологиями? Почему «облака» представляют особенную важность в применении к Интернет-старпам? На эти вопросы я и попытаюсь ответить в данной работе.

1. Основные концепции технологии облачных вычислений

1.1. Что такое «облако»?
Во-первых, как следует понимать термин «облачные вычисления» (“cloud computing”)? Что в нем подразумевается под «облаком»? Правильно понимать «облако» как метафору удаленного вычислительного датацентра, к которому предоставляется доступ на основе оплаты pay-as-you-go (оплата за фактическое использование сервиса вычисления). Таким образом, программное обеспечение фактически предоставляется пользователю как сервис. Пользователю облачных вычислений не нужно заботиться ни об инфраструктуре, ни о фактическом программном обеспечении, «облако» успешно скрывает все технические и программные детали.
Хотелось бы отметить, что в данном докладе облачные технологии рассматриваются только применительно к b2b модели. Анализ возможности применения их применения у конечных пользователей в данной работе не проводится.

1.2. Историческая справка
Первые идеи об использовании вычислений как публичной услуги были предложены еще в 1960-х известным ученым в области информационных технологий, изобретателем языка Lisp, профессором MIT и Стэнфордского университета Джоном Маккарти (John McCarthy). Появление первой технологии, близкой к современному пониманию термина «cloud computing», приписывается компании Salesforce.com, основанной в 1999 году. Именно тогда и появилось первое предложение нового вида b2b продукта «Программное обеспечение как сервис» (“Software as a Service”, “SaaS”). Определенный успех Salesforce в этой области возбудил интерес у гигантов ИТ индустрии, которые спешно сообщили о своих исследованиях в области облачных технологий. И вот уже первое бизнес-решение под названием «Amazon Web Services» было запущено в 2005 году компанией Amazon.com, которая со времен кризиса доткомов активно занималась модернизацией своих датацентров. Следующим свою технологию постепенно ввела Google, начав с 2006 года b2b предложение SaaS сервисов под названием «Google Apps», а затем и модели предоставления платформы как сервиса (PaaS) под названием “Google App Engine”. И, наконец, свое предложение анонсировала компания Microsoft, презентовав ее на конференции PDC 2008 под названием «Azure Services Platform».
Сам факт высокой заинтересованности крупнейших игроков рынка ИТ демонстрирует определенный статус облачных вычислений как тренда 2009-2010 годов. Кроме того, с релизом Microsoft Azure Service Platform множество экспертов связывает новый виток развития веб-технологий и выход всей сферы облачных вычислений на новый уровень.
1.3. Технологические аспекты функционирования «облака»
На данный момент большинство облачных инфраструктур развернуто на серверах датацентров, используя технологии виртуализации, что фактически позволяет любому пользовательскому приложению использовать вычислительные мощности, совершенно не задумываясь о технологических аспектах. Тогда можно понимать «облако» как единый доступ к вычислениям со стороны пользователя.
С понятием облачных вычислений часто связывают такие сервис-предоставляющие (Everything as a service) технологии, как «Программное обеспечение как сервис» (“Software as a Service” или “SaaS”), «Инфраструктура как сервис» (“Infrastructure as a Service” или “IaaS”) и «Платформа как сервис» (“Plaatform as a Service”, “PaaS”). Рассмотрим каждую из этих технологий подробнее.
SaaS – модель развертывания приложения, которая подразумевает предоставление приложения конечному пользователю как услуги по требованию (on demand). Доступ к такому приложению осуществляется посредством сети, а чаще всего посредством Интернет-браузера.
IaaS – модель предоставления компьютерной инфраструктуры как сервиса. Вместо покупки серверов, ПО, специального сетевого оборудования, пользователь может получить эти ресурсы в виде аутсорсинга (outsource). Фактически, как замечают многие эксперты, это всего лишь некоторая эволюция сервисов хостинга.
PaaS – модель сетевого предоставления вычислительной платформы как сервиса, которая предлагает развертывание и поддержку веб-приложений и сервисов без необходимости покупки и управления слоями hardware и software.
Таким образом, эти технологии при совместном использовании позволяют пользователям облачных вычислений воспользоваться вычислительными мощностями и хранилищами данных, которые посредством определенных технологий виртуализации и высокого уровня абстракции предоставляются им как услуги.

2. Преимущества «облака»
Как уже упоминалось выше, множество ИТ экспертов полагают, что в недалеком будущем облачные вычисления войдут в топ-список технологических трендов. Во всяком случае, для такого смелого утверждения должны существовать определенные причины, почему именно cloud computing вскоре выберут множество Интернет-бизнесов. Таким образом, попытаемся проанализировать преимущества облачных технологий.
Во-первых, это высокий уровень виртуализации. Как уже упоминалось выше, пользователь, развернув свое приложение, не задумывается о таких проблемах, как аппаратные средства, их поддержка, конкретный софт, установленный на машине. Он даже не задумывается о том, на какой именно или даже на каких именно машинах исполняется его приложение.
Возможность запуска множество копий приложения на многих виртуальных машинах представляет преимущества масштабируемости: количество экземпляров приложения способно практически мгновенно увеличиваться по требованию, в зависимости от нагрузок.
И, наконец, датацентры управляются профессиональными специалистами, обеспечивающими круглосуточную поддержку функционирования виртуальных машин. И даже если физическая машина «рухнет», благодаря распределению приложения на множество копий оно все равно продолжит свою работу. Это создает определенный высокий уровень надежности и отказоустойчивости функционирования системы.
Однако следует заметить, что в глазах потребителей сервиса основным преимуществом облачных вычислений является, пожалуй, отсутствие необходимости закупать все соответствующее оборудование и ПО, а затем поддерживать их работу. Этот аспект мы рассмотрим чуть позже в связке с анализом применения в области Интернет-стартапов.
Таким образом, все эти преимущества определяют выбор облачных вычислений по сравнению с другими схожими технологиями. Именно они «толкают» на дальнейшие разработки крупнейшие ИТ корпорации, которые так же видят повышенный интерес у пользователей системы. Скорее всего, уже в ближайшем будущем мы увидим если и не всплеск научной и практической активности в сфере cloud computing, то уж точно постепенное увеличение определенной заинтересованности.
3. Проблемы облачных технологий
Казалось бы, преимущества облачных вычислений настолько очевидны, что все компании в скором будущем массово перейдут на использование этого вида технологии. Однако существуют некоторые проблемы, с которыми сталкиваются как вендоры cloud computing, так и бизнес-пользователи.
Во-первых, как упоминается в статье «Встречный план» Дмитрия Петрова [6], практически отсутствует определенная культура потребления аутсорсинговых услуг, бизнес относится к такого рода услугам несколько настороженно. «Причин же недоверчивого отношения малого и среднего бизнеса к дата-центрам может быть несколько. Скорее всего, это боязнь лишиться контроля над ИТ-ресурсами, опасения насчет гарантии сохранности и защиты переданной информации и представление дата-центра лишь как площадки для размещения оборудования».
Таким образом, вендорам сервисов облачных вычислений следует понимать важность создания у клиента осведомленности об услуге, а так же чувства безопасности собственных данных.
Во-вторых, некоторые эксперты, например Г. Маклеод (Hugh Macleod) в статье «Самый хорошо охраняемый секрет Облаков» [8], утверждают, что облачные вычисления ведут к созданию огромной, невиданной ранее монополии. Возможно ли это? Конечно, на рынке облачных вычислений для помещения в облако какой-либо информации, в отношении которой существуют правила информационной безопасности, компании будут скорее использовать таких вендоров, чье имя «на слуху» и кому они доверяют. Таким образом, существует определенная опасность того, что все вычисления и данные будут агрегированы в руках одной сверхмонополии. Однако на данный момент на рынке уже существуют несколько компаний с примерно одинаковым высоким уровнем доверия со стороны клиентов (Microsoft, Google, Amazon), и нет никаких фактов, которые бы указывали на возможность доминирования одной компанией всех остальных. Поэтому в ближайшем будущем появление глобальной сверхкомпании, которая будет координировать и контролировать все вычисления в мире, очень маловероятно, хотя одна лишь возможность такого события отпугивает некоторых клиентов.
В-третьих, государство, на территории которого размещен датацентр, может получить доступ к любой информации, которая в нем хранится. Например, по законам США, где находится самое большое количество датацентров, в этом случае компания-провайдер даже не имеет права разглашать факт передачи конфиденциальной информации кому-либо, кроме своих адвокатов [12].
Эта проблема является, наверное, одной из самых существенных в вопросе вывода конфиденциальной информации в облако. Путей ее решения может быть несколько. Во-первых, можно шифровать всю информацию, помещаемую на облако. Во-вторых, можно просто ее туда не помещать. Однако, во всяком случае, у компаний, пользующихся облачными вычислениями, это должно быть определенным пунктом в списке вопросов информационной безопасности. Кроме того, сами провайдеры должны улучшать свои технологии, предоставляя некоторые услуги по шифрованию.
Таким образом, определенные проблемы существуют, но практически все они сконцентрированы в области неправильного или неадекватного понимания технологии и возможностей ее использования. И лишь проблема неограниченного доступа государства к информации, хранящейся в датацентре, на мой взгляд, является на данный момент самой труднорешаемой и самой ограничивающей круг пользователей технологией cloud computing.

4. Особенности функционирования Интернет-стартапа

4.1. Особенности компании-стартапа
Как это ни странно, в некоторых кругах, иногда даже профессиональных, термин «стартап» воспринимается достаточно неоднозначно. Поэтому для дальнейшего рассмотрения следует определить этот термин. Итак, стартап – это недавно созданная компания, возможно даже официально не зарегистрированная, которая строит свой бизнес на основе инноваций. Такая компания только выходит на рынок и находится на стадии развития и маркетингового исследования.
Стартап-компанию нередко называют гаражной, и вот почему. Традиционно стартапы создавались при достаточно сложных обстоятельствах, в условиях крайне ограниченных ресурсов. Поэтому часто такие компании ограничиваются минимальными инвестициями: примитивными офисами в виде гаражей, по возможности бесплатным программным обеспечением, и так далее.
Существует основное правило существование стартапа, в котором заключается эмпирический итог функционирования таких компаний: “Scale fast or fail fast”. Стартап может либо мгновенно «взмыть» вверх, либо так же быстро «провалиться». Это правило стоит помнить как начинающим стартаперам, так и инвесторам, которые понимают не только высокие риски вложенных инвестиций, но и возможный сверхвысокий возврат. Как мы выясним чуть позже, оно так же полезно для выбора используемой технологической модели.

4.2. Стартапы в условиях экономического кризиса
На мой взгляд, в современном экономическом окружении, во время Мирового экономического и финансового кризиса, роль стартапов велика как никогда. Во-первых, они сильно ориентированы на потребителя, в отличие от «неповоротливых» гигантов отрасли, занятых сокращением издержек и «ужиманием» проектов. В новой экономической ситуации именно стартапы способны найти свою нишу со сверхприбылью.
Во-вторых, удорожание денег привело к достаточно сильному уменьшению инвестиций, которые теперь будут направлены тем, кто сможет их использовать максимально эффективно. Поэтому я считаю, что вскоре после кризиса экономику, в том числе и российскую, ждёт заметный бум стартапов, например, в сфере Интернет – индустрии. Такие компании будут заинтересованы в таких технологиях, которые способны продемонстрировать максимальную отдачу на затраченные инвестиции. Именно поэтому я предсказываю масштабное увеличение роли облачных технологий для Интернет-стартапов.

5. Интернет-стартап в облаке

5.1. Преимущества Интернет-стартапов в облаке
Как уже было упомянуто выше, стартапы заинтересованы в максимальной отдаче от используемых технологий. Именно поэтому Интернет-стартап, выведенный в облако, приобретает совершенно новые конкурентные преимущества. Но какие именно?
Во-первых, оплата использования облачных технология по системе “pay as you go” позволяет стартап-компаниям существенно снизить постоянные, или капитальные издержки.
На рисунке №1 изображены издержки, которые несут стартапы, в случае использования традиционных технологий и в случае «перехода в облако». В первом варианте для запуска компании нужен некоторый объем инвестиций, который пойдет на погашение постоянных издержек (Fixed Costs, FC на графике): закупка серверов и ПО, их поддержка и обслуживание. При увеличении количества пользователей к постоянным издержкам пропорционально прибавляются переменные (Variable Costs, VC на графике).
Совсем иная ситуация наблюдается при использовании cloud computing. При запуске стартапа вам не требуется инвестиций на приобретение hardware и software, просто в дальнейшем при увеличении количества пользователей вы платите чуть больше согласно вашему договору о предоставлении услуг облачных вычислений.
image
Рис. 1
(идея Sam Johnston, en.wikipedia.org/wiki/File:Cloud_computing_economics.svg)

На самом деле этот график выглядит несколько иначе. При покупке собственного сервера и установке на него соответствующего ПО увеличение количества пользователей повышают издержки меньшими темпами, чем при оплате за потребление услуги вычисления (рис. 2). Однако стоит не забывать, что существуют определенные проблемы масштабируемости, которые не позволяют при быстром увеличении нагрузки подстроиться под новые нужды (рис. 3). Тогда при достижении какой-то критической точки пользователей (пунктир на графике) потребуются работы по масштабируемости, которые займут определенное время, в течение которого количество пользователей не будет увеличиваться, а может и уменьшиться.
image
Рис. 2
image
Рис. 3
Таким образом, преимущество облачных технологий в виде отсутствия капитальных затрат имеют особенное значение для Интернет-стартапов, которые остро нуждаются в начальном капитале и в инвестициях. При использовании сервисов cloud computing стартапы начинают свое дело, как правило, с минимального уровня инвестиционных вложений, который обычно легко покрывает низкие барьеры для входа.
Во-вторых, вспомним правило стартапа, fail fast or scale fast. Если стартап не получил известность, не набрал критическую массу пользователей для начала самоокупаемости, при использовании облачных технологий его закрытие не представляет никаких проблем: вы просто прекращаете оплату подписки. В случае традиционных технологий вам пришлось бы продавать сервера и просто выкидывать купленное ПО. Если же стартап найдет свою нишу и начнет быстрый рост, вы как пользователь не столкнетесь с проблемами масштабируемости, тогда как обычно вам требовалось проводить большое количество разнообразных работ.
В-третьих, нет необходимости заботиться о технологической поддержке и обслуживании, все эти проблемы на себя берет компания-провайдер облака. И, как уже упоминалось выше, нет никаких проблем с отказоустойчивостью, вышедший из работы удаленный сервер в датацентре очень быстро подменяется другим.
Таким образом, преимущества при использовании облачных технологий в сфере Интернет-стартапов очевидны. Поэтому, на мой взгляд, именно эта сфера позволит в скором будущем вывести стартапы на новый уровень, захватить новые рынки и открыть прежде неизведанные ниши.

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

azure.com
Azure Services Platform – находящийся в разработке сервис предоставления удаленной облачной платформы, позволяющий хранить данные и выполнять веб-приложения на удаленном облаке. Над платформой находится так называемая «операционная система в облаке» под названием Windows Azure, производящая управление запуском приложений на множестве виртуальных машин датацентра Microsoft. Разработан официальный набор SDK для Visual studio, что представляет для разработчиков достаточно низкие барьеры для входа. Официально поддерживается технология ASP.NET, языки С# и VB.Net, ведутся разработки SDK для Java и Ruby.

aws.amazon.com
Amazon Web Services
– сервисы выполнения высокомасштабируемых приложений, хранения информации на удаленных серверах компании Amazon, предоставляющие все модели SaaS, IaaS и PaaS.
appengine.google.com
Google Apps Engine
– сервис компании Google, пока находящийся в стадии публичного бета-тестирования, предоставляющий платформу для создания и развертывания приложений на инфраструктуре датацентров компании Google. Приложение в облаке выполняется на нескольких виртуальных серверах. На данный момент первоначально бесплатно предоставляются возможности 5 миллионов просмотров в месяц, а затем за каждое превышение взимается соответствующая пропорциональная плата. Официально поддерживаемые языки: Python и Java. Система так же использует нереляционную структуру для хранения баз данных со своим SQL-подобным языком запросов, имеющий название GQL.

Salesforce.com – один из крупнейших провайдеров, предоставляющий преимущественно SaaS и PaaS. Предоставляя ежемесячную подписку, компания позиционирует себя как провайдер новых видов управления взаимоотношений с клиентами (Customer Relationship Management). Переведенный на 16 языков, сервис уже имеет более 1,5 млн. подписчиков, среди которых Siemens, Dell, Starbucks Coffee и другие. Приложения на платформе могут быть созданы при помощи специального Java-подобного языка Apex, а так же языка Visualforce для работы с HTML, AJAX и Flex.

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

Список использованной литературы
1. Tim O'Reilly «Web 2.0 and Cloud Computing» radar.oreilly.com/2008/10/web-20-and-cloud-computing.html
2. cloudcomputingexpo.com
3. «Введение в Windows Azure» www.techdays.ru/videos/1268.html
4. «Введение в Azure Services Platform» www.techdays.ru/videos/1097.html
5. en.wikipedia.org/wiki/Cloud_computing
6. Дмитрий Петров «Встречный план» www.kommersant.ru/doc.aspx?DocsID=1162192
7. Екатерина Баранова, «Концепция Cloud computing» www.itcontent.ru/archives/blog/cloud_computing
8. Г. Маклеод (Hugh Macleod) «Самый хорошо охраняемый секрет Облаков» technorati.com/posts/lv3vwaZ9hbuGSZx_jQseIqaVSlj29LQGjWyRkNoZ4b0%3D?reactions
9. en.wikipedia.org/wiki/Infrastructure_as_a_service
10. en.wikipedia.org/wiki/Platform_as_a_service
11. en.wikipedia.org/wiki/Software_as_a_service
12. Bill Thompson «Storm warning for cloud computing» news.bbc.co.uk/2/hi/technology/7421099.stm
13. «Cloud computing Journal» cloudcomputing.sys-con.com
14. azure.com
15. www.wikinvest.com/concept/Cloud_Computing
16. aws.amazon.com
17. techdays.ru
Теги:
Хабы:
+44
Комментарии32

Публикации

Изменить настройки темы

Истории

Ближайшие события