УДК 004.056.3
ПРОГРАММНОЕ СРЕДСТВО СОЗДАНИЯ РЕЗЕРВНЫХ КОПИЙ ДАННЫХ
Е.В. Бычкова, В.С. Нестеренко
Донецкий национальный технический университет, г. Донецк
кафедра искусственного интеллекта и системного анализа
elena.bichkova@gmail.com, nes.vadim.s@gmail.com
Аннотация
Бычкова Е.В., Нестеренко В.С. Программное средство создания резервных копий данных. Описаны современные проблемы сохранения данных. Проанализированы характеристики существующих популярных программных средств для создания резервных копий данных. Приведена авторская идея реализации программного средства: проблемы создания и их решения.
Ключевые слова: система резервного копирования данных, хранилище данных, защита и шифрование данных.
Постановка проблемы. В настоящее время большинство данных хранятся на компьютерных накопителях, содержащих жёсткие магнитные диски, считывающие головки и прочие компоненты. Ввиду присутствия таких факторов как перепады напряжения, износ рабочих частей техники, внешние физические факторы, приводящие к деформации, стало необходимым создавать копии важных данных и хранение их на других накопителях.
Цель статьи – исследование существующих проблем и способов создания резервных копий данных, а также анализ разрабатываемого авторского программного средства для создания резервных копий данных.
Резервная копия данных. Резервная копия – это копия данных на носителе, предназначенная для последующего восстановления данных в случае их повреждения или уничтожения.
Довольно часто возникают ситуации, когда необходимые данные становятся невозвратно потерянными без возможности их восстановления. Например, деформация накопителя данных, его потеря, повреждения, вызванные износом внутренних частей накопителя и пр.
С целью предотвращения потери данных создаётся резервная копия, т.е. копирование данных на другой накопитель с использованием различных технологий, например, создание нескольких резервных копий. Если данные постоянно изменяются (например, в базах данных), то необходимо хранить не одну копию, а несколько, возможно даже с разными версиями (т.е. не несколько одинаковых копий, а несколько копий, созданных в разное время, чтобы иметь возможность восстановить данные, сохраненные в конкретное время). Всё зависит от поставленной цели и варьируется от случая к случаю, что и является основной проблемой – наличие различных задач выполнения резервного копирования.
Характеристики существующих программных средств для создания резервных копий данных. Существование различных специфических задач положило начало созданию различных систем резервного копирования, отличающихся функционалом. Например: создание копии всего накопителя информации, баз данных на различных носителях, отдельных файлов по расписанию (с указанием количества копий, с шифрованием, с управлением системой резервных копий на разных носителях через систему на сервере, с автоматической возможностью восстановления данных и пр.).
Одной из популярных систем создания резервных копий баз данных для предприятий является SqlBak[1]. Сама система резервного копирования представляет собой программный комплекс, разделенный на две части, одна из которых является серверной, а другая, соответственно, клиентской.
Клиентская часть имеет такие функции как возможность архивирования, подключения к серверной части программного комплекса и отправки данных на сервер.
Серверная часть имеет такой функционал как подключение к аккаунту на сервере нескольких компьютеров с целью централизации создания задач по управлению резервными копиями через меню на сервере. Задачи включают следующие функции:
- настройка гибкого расписания выполнения действий над данными;
- создание резервных копий данных в произвольном количестве и загрузка их на различные накопители или сервера;
- восстановление данных, а также восстановление, просмотр последнего и следующего времени выполнения задачи;
- просмотр выполненных действий над данными;
- поиск конкретной задачи и отправка уведомлений на email о статусе задач;
- просмотр состояния активности пользовательских ЭВМ;
- просмотр количества свободного пространства на серверных и клиентских накопителях.
Следует указать на недостатки данной системы:
- все операции по управлению резервными копиями происходят через сервис SqlBak, что делает невозможным создание резервных копий в локальной сети при отсутствии подключения к сети Интернет;
- отсутствие кроссплатформенности; возможность работы данного сервиса только в операционной системе Windows;
- ориентированность на SQL-базы данных, что приводит к определенным трудностям при настройках создания задач резервного копирования сторонних баз данных и файлов;
- платная ежемесячная подписка за использование данного сервиса в размере 9$ за один сервер.
Другой популярной системой резервного копирования является Acronis Backup[2]. В отличие от SqlBak, данная система - кроссплатформенная, не ориентирована на один тип базы данных, что позволяет создавать резервные копии различных файлов и операционной системы пользователя. Также присутствуют различные методы шифрования данных.
Как и в любых системах, в данной также присутствуют «минусы»:
- платная подписка за 25$ в месяц;
- все операции по управлению резервными копиями происходят через сервис Acronis backup, что делает невозможным создание резервных копий в локальной сети при отсутствии подключения к сети Интернет.
При наличии данных недостатков в сервисах SqlBak и Acronis Backup, а также видимого нереализованного потенциала данных сервисов, была начата авторская разработка по созданию новой системы резервного копирования, повторяющей и расширяющей функционал программных продуктов, описанных выше.
Авторская реализации программного средства для создания резервных копий. Так как в настоящее время нет доступного программного средства по управлению резервными копиями с помощью собственного централизованного сервиса, то проблема создания данного программного комплекса является актуальной. Идея заключается не только в повторении функционала популярных систем резервного копирования, но также в расширении функционала и пересмотре ценовой политики, которая будет бесплатной, но с возможностью добровольной поддержки и присутствия так называемых «вех» – этапов сборов сумм, необходимых для реализации дополнительного функционала в будущем. Данная ценовая политика программного продукта, повторяющего и расширяющего функционал других популярных продуктов, станет преимуществом перед другими сервисами резервного копирования данных.
Следующим главным отличием разрабатываемого программного комплекса станет возможность установки серверной части программного комплекса на собственный сервер, т.е. появится централизованная возможность управления созданием резервных копий на различных ЭВМ в локальной сети без подключения к сети Интернет.
Однако данная разработка требует существенных временных затрат.
Проблемы создания и улучшения авторского программного средства. Разработка программного средства на данном этапе разработки будет представлена в виде одиночного приложения, устанавливаемого на ЭВМ пользователя без возможности централизованного управления созданием резервных копий на различных ЭВМ с помощью сервера.
Разрабатываемое программное средство будет иметь следующий функционал:
- наличие расписания задач создания резервных копий;
- управление задачами;
- возможность загрузки резервных копий на ftp-сервер;
- просмотр статуса задач;
- логирование действий выполнения задач;
- возможность хранения опционального количества резервных копий;
- уведомления о статусе задач.
Программный комплекс разрабатывается на языке программирования Java, вследствие чего и появляется кроссплатформенность. Также использование данного языка программирования позволит перенести функционал из программного комплекса данного этапа разработки в программный комплекс следующего этапа.
При разработке серверной части программного средства можно выделить следующие основные проблемы:
- реализация приёма-передачи сообщения о задаче между клиентской и серверной частями программного средства;
- восстановление выполняемых задач и просьба повтора передачи данных при перезапуске сервера;
- обработка множественной передачи данных в одно и то же время;
- обработка проблемы отсутствия свободного места на накопителе;
- установка защищенного соединения при передаче данных;
- шифрование передаваемых данных;
- шифрование пользовательских данных.
Несмотря на сложность и объёмность вышеперечисленных проблем, разрабатываемый программный продукт будет уникальным на сегодняшний день, благодаря пересмотру ценовой политики и добавлению большего функционала по сравнению с конкурентными решениями.
Выводы. Описаны современные проблемы сохранения данных. Проанализированы характеристики существующих популярных программных средств создания резервных копий данных. Описаны проблемы создания и улучшения авторского программного средства, а также методы их решения.
Список литературы
1. SqlBak [электронный ресурс] // SqlBak - SqlBak: [сайт]. [2017]. URL: https://sqlbak.com/
2. Acronis [электронный ресурс] // Acronis | Решения для резервного копирования, восстановления и защиты данных: [сайт]. [2002-2017]. URL: http://www.acronis.com