5 проблем проектирования хранилищ данных

Поделиться постом

Содержание

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

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

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

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

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

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

Определение требований к хранилищу данных

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

Требования к ХД определяются в нескольких аспектах: архитектура, технологии, задачи конечных пользователей и владельца хранилища. При составлении каталога учитывается специфика рынка, сферы деятельности компании и особенности ее работы. Для владельца актуальна предметно-ориентированная направленность продукта, соответствие целям предпринимательства и требованиям клиентов.

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

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

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

При недостаточной проработке определений требований возникнут проблемы хранилищ данных:

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

Разработчики подбирают комплект различных моделей применения хранилища, методики просмотра данных, загрузки, модификации. Среди актуальных средств качественной бизнес-аналитики используются Data Mining, деление элементов по разным аспектам исследований, экспозиция и развертывание в иерархической структуре, просмотры непредусмотренным образом и другие решения.

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

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

Трудности с масштабированием и производительностью

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

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

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

Одно из эффективных решений проблем — использование горизонтального и вертикального масштабирования.

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

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

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

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

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

Обеспечение безопасности данных

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

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

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

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

Если данные являются конфиденциальными, целесообразно использовать шифрование. Этот метод предотвращает атаки и доступ злоумышленников к информации. Даже при похищении жесткого диска преступнику будет сложно взломать шифры и воспользоваться хранимой на носителе информацией. При помощи шифрования пользователь обеспечивает расширенную защиту данных, надежность управления данными и соблюдение нормативов РСI, HIPAA и других стандартов.

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

Недостаточная гибкость и адаптация хранилища данных

При отсутствии гибкости в хранилище данных возникают следующие проблемы:

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

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

Чтобы создать гибкое хранилище, которое легко адаптируется к изменениям, необходимо использовать оптимальные подходы и технологии. Среди эффективных инструментов разработки адаптивных хранилищ — использование модульной и сервисно-ориентированной архитектуры (SOA), гиперконвергентной архитектуры (HCI), организация сервисно-ориентированной инфраструктуры (SOI), виртуализация и консолидация, механизмы управления изменениями. Тестирование продукта начинается не после проектирования, а после определения требований и структуры. Процесс тестирования рационально проводить при участии владельцев бизнеса и с опорой на документацию, сопровождающую ожидаемые изменения и сопоставляющую данные.

Недостаточное управление качеством данных

Низкое качество данных в ХД вызывает серьезные проблемы:

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

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

Бизнес-анализ некачественных данных не может дать надежных и безупречных результатов, поэтому для разработчиков и пользователей крайне важно внедрение эффективных средств очистки данных, проверки и улучшение качества. Программные сервисы типа First Logic или Trillium Software служат для выявления и автоматической коррекции важных данных. Загрязненная информация классифицируется по многим типам, и не все виды можно выявить и автоматически очистить. Поэтому качеству данных требуется уделять усиленное внимание, выбирать оптимальные методы предотвращения грязных данных, проводить регулярные тестирования и проверки.

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

Заключение

Мы проанализировали основные проблемы проектирования хранилищ данных: масштабирование и производительность, недостаточное управление качеством данных, гибкость и адаптация, обеспечение безопасности, определение требований. Помимо этих трудностей, в процессе создания ХД возникают и другие: недостаток финансирования и специалистов, ненадежные источники исходных данных (например, поток с пропусками информации или «сырая» БД в стадии разработки, в которой не согласованы интеграционные интерфейсы), физически устаревшее оборудование и т. д..

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

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

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

Активный переход компаний к полноценным СХД связан с развитием рынка ПО и появлением инновационных сервисов, позволяющих решить проблемы хранилищ данных.

 

Поделиться постом

Похожие статьи

Наши контакты

Мы ответим на вашу заявку в течение 1-2 рабочих дней

Москва, Зеленоград, Георгиевский проспект, дом 5, стр. 1, офис 70

    персональных данных