Информационное письмо
Образец оформления статьи
Анкета автора
04.03.2016

Перенос реляционных и неструктурированных данных в облачную среду

Дубинин Даниил Романович
студент направления прикладной информатики Института Магистратуры Санкт-Петербургский Государственный Экономический Университет Санкт-Петербург, Россия
Аннотация: Облачные вычисления – это хороший способ повысить производительность предлагаемого сервиса без инвестиций в новую инфраструктуру, обучение персонала или приобретения программного обеспечения. Эта технология расширяет потенциальные возможности существующих информационных систем. В последние годы облачные вычисления выросли из хорошего бизнес концепта до одной из самых запрашиваемых индустрий информационных технологий. В статье присутствует краткий обзор функциональности Microsoft Azure и проблемы принятия определенных решений в процессе переноса. Рассматриваются технические нюансы, потенциальные проблемы и риски, связанные с миграцией существующих баз данных MySQL на новую платформу, с использованием метода анализа иерархий. Так же отмечается возможность применения данного сервиса в образовательных целях в вузах и других схожих учебных заведениях.
Ключевые слова: база данных, облака, облачные технологии, реляционные базы данных, принятие решений
Электронная версия
Скачать (801 Kb)

Современные облачные среды существуют, как правило, в виде изолированных систем, состоящих из несовместимых структур данных с разными моделями хранения. Чтобы перенести данные из одной облачной системы в другую, необходимо разработать специальное приложение. Различные облачные системы используют разные службы приложений, и зачастую приложения требуется переписывать под конкретное облако. Кроме того, необходимо признать, что облачное хранение данных в корне отличается от облачных вычислений. У них разные показатели производительности; также следует учитывать такие аспекты, как «суверенитет» и безопасность данных, и то, что перенос данных совсем не бесплатная и быстрая процедура.

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

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

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

Многие клиенты путаются в вариантах, предлагаемых в облаке, особенно когда дело доходит до хостинга реляционных данных. В этой статье мы хотим прояснить варианты, касающиеся SQL Server и хранилища данных на платформе Windows Azure.

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

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

Таблица 1 – Парные сравнения и их результаты

Скорость

Надежность

Простота

Сумма ряда

Скорость

1/1

1/5

2/1

Надежность

5/1

1/1

2/1

Простота

1/2

1/2

1/1

Скорость

Надежность

Простота

Скорость

1,00

0,2

2,0

3,2

Надежность

5,0

1,00

2,0

7,0

Простота

0,5

0,5

1,00

2,0

Сумма

12,2

Скорость

Надежность

Простота

Скорость

1,00

0,2

2,0

0.262

Надежность

5,0

1,00

2,0

0.573

Простота

0,5

0,5

1,00

0.163

Сумма

1,00


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

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

Некоторые варианты представлены на рисунке 1. Вы можете использовать SQL Server минимум четырьмя способами, как указывают пронумерованные блоки. Заметьте: обозначены решения как на основе облака, так и с использованием локальных ресурсов предприятия. Верхняя половина относится к общедоступному облаку. Если вы глубже проанализируете общедоступное облако, то поймете, что оно покоится на двух основных столпах: Infrastructure as a Service (IaaS) и Platform as a Service (PaaS). Нижняя половина схемы иллюстрирует варианты с использованием SQL Server на предприятии. Вы можете либо осуществлять хостинг собственного частного облака или последовать традиционному методу и выполнять SQL Server на физическом оборудовании безо всяких технологий виртуализации. Microsoft Azure включает также набор служб управления, которые позволяют контролировать все эти ресурсы с помощью пользовательского веб-интерфейса (веб-портала) либо программными средствами. В большинстве случаев имеется программный интерфейс на основе REST, с помощью которого можно определить то, как будут работать службы. Большинство задач управления, которые могут быть выполнены на веб-портале, также реализуются с помощью API.

Рисунок 1 – Веб-серверы предприятия

Рисунок 1 – Веб-серверы предприятия

Существует многочисленный набор средств и пакетов средств разработки программного обеспечения для разработки, тестирования и развертывания приложений. Например, разрабатывать и тестировать приложение вы можете в эмулированной локальной среде, созданной с помощью эмулятора вычислений и эмулятора хранилища. Большинство средств также интегрированы в такие среды разработки, как Microsoft Visual Studio. Кроме того, имеются средства управления сторонних поставщиков.

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

Списоклитературы:

1. Identification of a company’s suitability for the adoption of cloud computing and modeling its corresponding Return on Investment. Subhas Chandra Misra, Arka Mondal. Mathematical and Computer Modeling, ScienceDirect.

2. Google Inc., Google App Engine — Google Developers. https://developers.google.com/appengine/(дата обращения: 22.02.2016).

3. Google Inc., Google Cloud SQL — Google Developers. https://developers.google.com/cloud-sql/ (дата обращения: 22.02.2016).

4. Oracle Corporation, Accessing a Database Cloud Service - Technetwork. http://www.oracle.com/webfolder/technetwork/tutorials/obe/cloud/paas/accessdbinstance/accessdbinstance.html (дата обращения: 22.02.2016).

5. Булиньш З.А., Лавенделс Ю.О., Шитиков В.С., «Безопасность в облачных вычислениях», В: Труды Международной научно-методической конференции «Информатизация Инженерного Образования», Москва, Россия, 10-11 апреля 2012, Издательский дом МЭИ, 2012. – c. 149-152.

6. Зайцева Л.В. Технология разработки адаптивных электронных учебных курсов для компьютерных систем обучения // Образовательные технологии и общество (Educational Technologies & Society). – 2008. - V.11. - №1. - C.400-413.

7. Булиньш З.А., Миграция баз данных MySQL в облачную среду Google Cloud SQL // "Образовательные технологии и общество" (Educational Technologies & Society) – 2012. - V.15. - №3. - C.554-560.