Рейтинг: 5.0/5. на основе 1 оценки.
Пожалуйста, подождите...

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

Под понятием «тестирование ETL» следует понимать совокупность проверок, направленных на тщательное изучение особенностей функционирования программного обеспечения при потенциальных сбоях, взломах и нагрузках.

Зачем компаниям технические хранилища данных?

Любая организация с налаженной IT-структурой постоянно стремиться к совершенствованию своей технической трансформации под текущие запросы веб-рынка. В настоящее время ведется деятельность по организации комфортного и удобного взаимодействия с большими пластами технической информации (так называемой Big Data).

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

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

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

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

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

Этапы тестирования хранилища данных

Процесс тестирования хранилища данных можно поделить на 4 составляющие части:

  1. Тестирование нового хранилища данных – создание новой базы и прогон всех необходимых тестов «с нуля». Ввод данных происходит исключительно на основе требований клиента и на основе предоставленных инструментов ETL. Создается новое хранилище, а также всевозможные типы и источники информации, поступающей в него.
  2. Тестирование миграции – выполнение проверки базы при ее миграции с одно хранилища в другое.
  3. Запрос на изменение – при данном типе тестирования выполняется проверка работоспособности хранилища при добавлении новой информации в уже существующее хранилище. Также встречаются проверки того, что клиент хочет изменить текущее бизнес-правило или внедрить новое в логику хранилища.
  4. Тестирование отчета – проверка на основе специальных валидаторов, информации в нем и предоставленных клиентом расчетов.

Базовые методы тестирования ETL

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

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

Тестирование ETL/Хранилища данных

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

  • Тестирование требований;
  • Валидация;
  • Оценка сложности добавления информации в хранилище на основе ряда таблиц, правил и номинального показателя производительности цифрового хранилища;
  • Планирование тестирования на основе исходных данных, полученных в результате оценки тестирования и деловых потребностей;
  • Создание тестовых сценариев на базе имеющихся исходных данных (работа с SQL-скриптами);
  • После того, как все тестовые случаи готовы и одобрены, команда тестирования приступает к предварительной проверке и подготовке тестовых данных для тестирования;
  • В конце тестирования формируется краткий доклад на основе выполненных работ.
К слову, первые две фазы из предоставленного выше перечня можно воспринимать как предварительные этапы стадии тестирования ETL.

То есть, сам процесс тестирования выглядит следующим образом:

Процесс тестирования

Процесс тестирования

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

Основная разница между тестированием базы данных и хранилища данных

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

Процедура тестирования баз данных выполняется, как правило, с меньшим количеством данных, в базах вида OLTP (возможность обрабатывать операции онлайн), а тестирование хранилищ данных – с очень большим объемом данных на основе баз данных OLAP (онлайн аналитическая обработка).

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

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

Актуальные проблемы тестирования ETL

Это тестирование сильно отличается от обычных проверок. При проведении тестирования хранилища данных, можно столкнутся со многими трудностями:

  • Дублирующая информация;
  • Потеря части данных при тестировании;
  • Невозможность выполнения тестирования ETL самостоятельно;
  • Нестабильность тестовой среды;
  • Отсутствие тестовой площадки для тестирования по принципу «включено».

В заключение

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

Оставить комментарий