20 июля 2016

Архивирование как ответ на «пакет Яровой»

Блог компании Dell TechnologiesВысокая производительность


Одна из главных новостных сенсаций последних дней — подписание так называемого «пакета Яровой». Гвоздь программы — требование по хранению трафика до полугода и метаданных в течение трёх лет. Эта законодательная инициатива превратилась в полноценные законы, которые придётся соблюдать. По сути, речь идёт о повсеместном создании постоянно пополняемых архивов, что требует решения всевозможных вопросов, в том числе связанных с выбором подходящих систем хранения данных.

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

В целом архив должен выполнять пять основных функций:

  • Сохранение данных для будущего использования.
  • Обеспечение постоянного доступа пользователей к хранимым данным.
  • Обеспечение конфиденциальности доступа.
  • Снижение нагрузки на рабочие системы за счёт переноса в архив статических данных.
  • Использование политик хранения данных.

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

Архивирование больших данных


Для решения таких задач предназначена платформа EMC InfoArchive, о ней мы писали год назад. Это гибкая и мощная платформа архивирования корпоративного класса, представляющая собой комбинацию из СХД (NAS или SAN) и программной платформы архивирования.

К преимуществам InfoArchive можно отнести:

  • Поддержка международных стандартов, в том числе открытые стандарты XML и OAIS (Open Archival Information System)
  • высокую степени безопасности хранимых данных,
  • удобство управления большими объёмами структурированных и неструктурированных данных,
  • а также широкие возможности по конфигурированию и масштабированию.

InfoArchive состоит из следующих компонентов:

  • Веб-приложение: основное приложение, обеспечивающее простой доступ к большинству настроек и функций системы.
  • Сервер: сервисы архивирования для Web Server.
  • XML-репозиторий (xDB): сервисы хранения данных для InfoArchive Server. База xDB включена в дистрибутив InfoArchive и автоматически устанавливается как часть ядра системы.
  • Оболочка [опционально]: инструмент на основе командной строки для выполнения административных задач, добавления данных, управления и запроса объектов.
  • Фреймворк для добавления данных [опционально].


Высокоуровневая архитектура InfoArchive:



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

Логическая архитектура InfoArchive выглядит следующим образом:



Серверы могут масштабироваться вертикально, либо «специализироваться» на разных функциях REST-сервисов — добавлении данных, поиске, администрировании и т.д. Это позволяет реализовать любую степень масштабируемости, увеличивая архив в соответствии с потребностями. А распределение нагрузки легко выполняется с помощью «классического» HTTP-балансировщика.

xDB


Одним из ключевых компонентов InfoArchive является автоматически развёртываемая СУБД xDB. Её свойства во многом определяют возможности всей системы, поэтому давайте подробнее рассмотрим этот компонент.

В xDB XML-документы и прочие данные хранятся в интегрированной, масштабируемой, высокопроизводительно объектно-ориентированной базе данных. Эта СУБД написана на Java и позволяет с высокой скоростью сохранять и манипулировать очень большими объёмами данных. Транзакционная система xDB удовлетворяет правилам ACID: атомарность, согласованность, изолированность и долговечность.

Физически каждая база данных состоит из одного или нескольких сегментов. Каждый сегмент распределён по одному или нескольким файлам, а каждый файл состоит из одной или нескольких страниц.

Связь между физической и логической структурами xDB:



В качестве бэкенд-сервера приложений в xDB выступает так называемый страничный сервер (page server), передающий страницы данных фронтенд-приложениям (клиентским приложениям). В средах, где доступ к базе данных осуществляется от единственного сервера приложений, производительность обычно выше, если страничный сервер работает внутри одной JVM вместе с сервером приложений.

Если страничный сервер выполняет и другие задачи, то он называется внутренним сервером (internal server). А если на страничный сервер никаких дополнительных задач не возлагается, то он называется выделенным сервером (dedicated server). Выделенный сервер в сочетании с TCP/IP соединением между ним и клиентами обладает лучшей масштабируемостью по сравнению с сервером внутренним. Чем больше размеры архива, чем больше разных фронтенд-приложений обращаются к страничному серверу, тем больше аргументов за то, чтобы сделать его выделенным сервером.

Кластеризация xDB


xDB может быть развёрнута как на одном узле, так и на кластере — с использованием архитектуры без разделения ресурсов (shared-nothing architecture), задействующей Apache Cassandra. Вам не обязательно разбираться в Cassandra, хотя знание её основ облегчит настройку и управление кластером.

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

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

Именно благодаря возможности кластеризации xDB пользователи InfoArchive могут работать с большими данными, поступающими с высокой скоростью. Это особенно актуально для постоянной записи пользовательского трафика крупных веб-сервисов и телеком-провайдеров: одиночный узел может упереться в возможности процессора и/или ёмкость дисковой подсистемы.

Пример кластера:



xDB-кластер состоит из компонентов трёх видов:

  • Узлы данных. Хранилища информации. Каждый узел выступает в роли отдельного бэкенд-сервера, слушающего и способного принять запросы от других членов кластера. Драйвер(ы) клиента позволяет представить кластер так, словно он состоит из единственного узла. При этом драйвер не следует подключать напрямую к узлам данных, только через конфигурационные узлы.
  • Конфигурационные узлы. Хранят метаданные, содержащие информацию обо всех узлах данных: базы данных, сегменты, файлы, пользователи, группы и распределение данных по узлу. Если конфигурационные узлы выходят из строя, кластер умирает. Поэтому содержимое этих узлов должно дублироваться.
  • Драйверы клиентов. Удалённый xDB-драйверы, инициализируемые с помощью bootstrap URL одним из конфигурационных узлов. Приложения взаимодействуют с кластером через драйвер клиента, например, для создания новых баз данных, перемещения информации между узлами, добавления новых XML-документов и т.д. Драйвер клиента автоматически направляет запросы к данным на соответствующие узлы данных, ориентируясь на информацию с конфигурационных узлов.

Партиционирование данных


Распределение данных в xDB осуществляется на уровне отключаемых библиотек (detachable library). Отключаемая библиотека — это перемещаемый в рамках кластера блок данных. Обычно они используются для партиционирования. Каждая библиотека хранится или привязана всегда к какому-то одному узлу данных. При этом узел может хранить библиотеки, привязанные к другим узлам.

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

Возможное применение партиционирования данных в InfoArchive:



Использование EMC Isilon для EMC InfoArchive


В качестве СХД для InfoArchive можно использовать EMC Isilon — горизонтально масштабируемая сетевая система хранения данных, которая обеспечивает функциональность всего предприятия и позволяет эффективно управлять растущими объемами архивных данных. Кластерная архитектура, лежащая в основе EMC Isilon, позволяет, как совместить в одной системе простоту использования и надёжность, так и обеспечить линейный рост объемов и производительность системы.

Изначально система может быть относительно небольшой, но с течением времени её размер может значительно увеличиться. Решение на основе EMC Isilon позволяет начать построение системы от 18 Тб и вырасти до 50 Пб в единой файловой системе. С ростом объёмов растёт лишь количество узлов в кластере. Сохраняется единая точка администрирования и единая файловая система. Таким образом, EMC Isilon можно эффективно использовать как единую консолидированную СХД и использовать её на протяжении всего жизненного цикла хранения информации. Такой подход позволяет избежать использования различных систем хранения, что упрощает внедрение, обслуживание, расширение и модернизацию системы. Как следствие, затраты на работу и обслуживание единого решения EMC Isilon значительно ниже, чем у решения, состоящего из нескольких традиционных систем.

Таким образом, СХД EMC Isilon эффективно дополняет архивную платформу InfoArchive.

Основные преимущества:

  • Интеграция с ПО SmartLock обеспечивает совместимость со схемой «одна запись, многократное чтение» (WORM) на уровнях баз данных и хранения для предотвращения непреднамеренного, преждевременного или злонамеренного изменения, либо удаления данных.
  • Сокращение затрат и оптимизация инфраструктуры. Горизонтально масштабируемая NAS-система Isilon обеспечивает коэффициент использования ресурсов системы хранения более 80%, а ПО Isilon SmartDedupeTM позволяет дополнительно на 35% снизить требования к ресурсам хранения.
  • EMC Isilon, основанная на EMC Federated Business Data Lake, поддерживает протокол HDFS, поэтому все типы данных в InfoArchive можно предоставить для всех видов Hadoop.
  • EMC Isilon позволяет быстро добавлять ресурсы хранения без простоев, ручной миграции данных или перенастройки логики приложений, что позволяет экономить ценные ИТ-ресурсы и сократить операционные издержки.

Примеры из жизни


В завершение статьи приведём пару примеров использования InfoArchive для создания ответственных систем архивирования.

Пример 1. Компания обрабатывает финансовые транзакции, данные поступают в архив в виде сжатых XML, в 12 одновременных потоков, около 20 млн. операций в день (порядка 320 Гб XML), 3,6 млн./56 Гб в час, 1017 операций/16 Мб в секунду.



Нагрузка при добавлении данных и поисковая производительность не зависят от количества уже архивированных объектов. Обработка дискриминантного запроса занимает около 1 секунды (1 результат), не дискриминантного — 4 секунды (200 результатов).

Пример 2. У другого заказчика данные поступают в архив в виде AFP-документов, структурированных и неструктурированных данных.

Средняя/пиковая нагрузка в день:

  • 0,5 / 4 млн документов
  • 20 / 60 млн записей
  • 50 000 / 70 000 операций поиска

Производительность системы при добавлении данных в архив:

  • 1,5 млн. документов в час в 12 одновременных потоков (около 60% времени тратится на конвертацию из AFP в PDF),
  • либо 45 млн. структурированных записей в час в 10 одновременных потоков.

Это составляет менее 0,5% теоретической максимальной производительности СХД EMC Centera, которая используется в проекте.



  • Среднее время поиска документа — 0,5 сек.
  • Среднее время получения документа — 1,5 сек.
  • Среднее время поиска структурированных данных среди 1 млрд. записей — 2,5 сек.
  • До 15 000 операций поиска в час.

Заключение


Подписание «пакета Яровой» — это трудное испытание для всего IT- и телеком-сектора. Тем не менее, непростая задача создания многочисленных высокоскоростных и объёмных архивов может быть решена с помощью EMC InfoArchive — связки из СХД и программной платформы на базе СУБД xDB, имеющей широкие возможности по масштабированию и конфигурированию.
Теги:infoarchiveisilonархивирование
Хабы: Блог компании Dell Technologies Высокая производительность
-5
7,4k 13
Комментарии 25
Похожие публикации
Лучшие публикации за сутки