- 1 сентября 2007 г.
Хранилище данных в реальном времени. Инструменты интеграции с OLTP-системами
В статье рассказывается об актуальности задачи обмена данными между
Хранилищем и оперативной системой в реальном времени. Описываются основные
инструменты интеграции данных, их возможности и преимущества.
Современные задачи Хранилищ данных
Разделение данных с конкретными целями
Развитие технологии Хранилищ данных началось с необходимости разделить данные, используемые для операций, и данные, применяемые в аналитических целях. Хранилище обеспечивает возможности, наиболее приспособленные для отчетности. Кроме того, разделение пользователей, выполняющих транзакции, и пользователей отчетности, чьи нерегламентируемые запросы могут негативно сказаться на эффективности оперативных систем, гарантируют оптимальное использование ресурсов инфраструктуры данных.
Временная ценность данных
И хотя Хранилища дают организации отличную платформу отчетности и анализа, в реальном времени они, как правило, не работают, если судить по возрасту доступных данных. Из-за технологических ограничений Хранилища обычно пополняются по ночам с помощью пакетной передачи данных. Для этого используется пакетная программа, которая выполняет вертикальное чтение всей базы в поисках изменений. Данные, поступающие в Хранилище с помощью такого ETL-подхода, - всегда устаревшие (как правило, на сутки).
По мере роста объема обрабатываемых данных, а также количества и разнообразия систем обработки данных, увеличивается время и сложность процесса наполнения Хранилища. Вместе с тем, глобализация, растущая продолжительность эксплуатации систем, ограниченность договоров о сервисном обслуживании приводят к необходимости сокращения пакетных операций. Сочетание большего количества данных и конкурентного давления создает серьезные проблемы для IT-организации.
Решения, принятые на основе вчерашних данных, перестают удовлетворять большинство организаций. Принятие решений в реальном времени требует данных в реальном времени, что это накладывает особые требования на интеграцию данных для Хранилища.
Кроме того, аналитические операции, выполняемые в Хранилище, необходимо вновь передавать в OLTP-систему, откуда поступили данные. Таким образом происходит централизация аналитической обработки и гарантируется передача решений, принятых на агрегированных данных в Хранилище, в соответствующие OLTP-системы.
Эти тенденции реализуются следующим образом:
- Интеграция данных в реальном времени для Хранилища данных. Получение и передача данных в реальном времени из операционных систем в Хранилище, что делает данные доступными для анализа.
- Активное Хранилище данных. ХД в реальном времени, дополняемое инструментами Business Intelligence для обработки и выполнения бизнес-решений. Решения автоматически передаются в OLTP-системы. В результате формируется замкнутый цикл обработки.
В стремлении добиться функционирования Хранилища в режиме реального времени, успех часто зависит от грамотного выбора инструмента интеграции и подхода к получению данных, что обеспечивает возможность повышения качества и своевременности информации.
Интеграция данных для Хранилища в реальном времени
Для поддержки интеграции в реальном времени пакетный подход к извлечению операционных данных должен быть заменен на процессы, которые постоянно отслеживают состояние исходных систем, захватывают и преобразуют изменения в данных по мере их возникновения, затем загружают их в Хранилище в режиме, максимально приближенном к реальному времени. Постоянный сбор данных позволяет анализировать прибыль и ценовые элементы в любых временных рамках. Тенденции можно анализировать с любой выбранной периодичностью и без задержки.
ETL является идеальным решением задачи сходной загрузки больших объемов данных в Хранилище, а также дает широкие возможности преобразования данных. Однако ETL-операции обычно выполняются в момент приостановки обновления исходной системы, чтобы гарантировать, что в момент получения данных источник не изменяется. Это, в свою очередь, приводит к несоответствиям между OLTP-системами и Хранилищем. В итоге данные и приложения не всегда доступны бизнес-пользователям.
EAI[1]-решения, ранее предназначенные для интеграции приложений, сегодня часто конкурируют или сосуществуют с ETL-технологиями, представляя собой средства интеграции и получения данных в реальном времени. EAI-решения передают информацию между исходной и целевой системами, гарантируют поставку данных, обеспечивают развитую поддержку потока и упрощают основные элементы преобразования.
Однако EAI-технология накладывает ограничения на объемы, так как исходным посылом этого метода была интеграция именно приложений (а не данных), и суть его в запуске приложений и передаче инструкций и сообщений. Тем не менее, возможность перемещать информации в реальном времени и поддерживать ее целостность в процессе интеграции в ряде случаев делает технологию EAI пригодной для взаимообмена между операционными системами и активным Хранилищем.
Другим подходом к интеграции данных в реальном времени является технология управления транзакционными данными (transactional data management - TDM), предназначенная для получения, передачи, преобразования, поставки и верификации транзакционных данных в гетерогенной среде в реальном времен.TDM функционирует на выполненных транзакциях: выбирает их из OLTP-системы, применяет основные методы преобразования и передает их в Хранилище. По своей архитектуре технология асинхронна, однако обеспечивает синхронное поведение, работает с задержкой в долю секунды, поддерживая целостность данных в транзакции.
EAI и TDM предназначены для передачи изменений и обновлений данных, а не целостных выборок данных. Ни то, ни другое не требует приостановки исходных систем, так как эти технологии поддерживают целостность операций языка манипулирования данными (data manipulation language - DML). За счет этого существенно сокращается объем необходимых перемещений данных. И если ETL-средства в основном предназначены для исходной загрузки и преобразования данных, то EAI и TDM больше подходят для постоянного сбора данных.
Все большее количество компаний используют TDM-технологию с целью сбора данных для Хранилища. TDM-средства захватывают, направляют, доставляют и проверяют операции с данными в среде гетерогенных баз данных с задержкой в доли секунды.
Передача измененных данных на уровне транзакции позволяет системе работать в активном режиме и обрабатывать операции одновременно с наполнением Хранилища. В этом случае полностью устраняется зависимость интервала пакетной обработки и сохраняется целостность каждой из транзакций.
Интеграция Хранилища и OLTP-системы подразумевает получение и передачу транзакционных данных в Хранилище одновременно с передачей данных о принятых решениях на основе данных ХД в одну или нескольких оперативных систем. Такой замкнутый цикл работы также обеспечивается средствами TDM.
Основные характеристики и возможности средств интеграции
Инструменты интеграции TDM обладают рядом важных функциональных особенностей.
Сбор данных
Модули сбора данных устанавливаются на исходной базе и постоянно отслеживают все вновь поступающие транзакции. Это достигается за счет чтений больших объемов данных из журналов операций в тот момент, когда транзакции еще выполняются и, как правило, находятся в памяти. Данные обрабатываются на уровне транзакции, и только выполненные операции отсылаются в Хранилище.
Доставка данных
Все новые данные передаются в промежуточную область хранения ХД, при этом временная задержка составляет доли секунды. А значит, наиболее актуальные данные всегда доступны для самых передовых методов Business Intelligence, а также для отчетности и принятия решений. Поскольку в течение заданного промежутка времени передаются меньшие выборки данных (чем в случае пакетной передачи), то дополнительная нагрузка на OLTP-систему оказывается очень незначительной.
Гетерогенность
Хранилище данных не обязательно работает в рамках той же операционной системы или базы данных, что и OLTP-система. Кроме того, часто возникают ситуации, когда нужно собрать данные из нескольких операционных систем и баз. Следовательно, инструменты интеграции должны поддерживать широкий диапазон СУБД, а также платформ, что упрощает требования даже для наиболее гетерогенных IT-инфраструктур. Так организация может делать выбор платформы исходя из корпоративных стандартов и предпочтений, а также развиваться с минимальным влиянием на свое готовое ХД-решение.
Собранные инструментом интеграции данные преобразуются в платформо- и СУБД-независимый формат. Таким образом поддерживается гетерогенность и устраняется риск потери или повреждения данных в случае перебоя в работе исходной или целевой системы.
Выборочность данных
Инструменты интеграции передают только те данные, которые требуются в Хранилище. В обычной OLTP-системе существуют поля, относящиеся только к тому приложению, которое обслуживает база данных. Далеко не все эти параметры нужны в Хранилище. Инструмент интеграции должен обеспечивать идентификацию столбцов, которые нужно извлечь из баз и передать в Хранилище.
Также, в зависимости от критериев пользователя, могут выбираться те или иные строки из базы исходной системы. Например, для разделения данных по географическому признаку или для выбора продуктов, относящихся только к целевому Хранилищу.
Преобразование данных
Выборочность в передаче данных важна, однако остается задача преобразования, нормализации или денормализации данных, в зависимости от целевой системы. В связи с различными моделями данных и структурами объектов между OLTP-базой и Хранилищем, столбцы и исходной системе можно преобразовать так, чтобы они соответствовали столбцам в целевой системе. В некоторых случаях возникает необходимость в слиянии нескольких столбцов из различных исходных строк в единую строку и наоборот. Для сложных преобразований данных предлагаются точки выхода к программе пользователя, чтобы внедрить любые специфические для данной организации правила наполнения ХД.
Гибкость
Возможность быстро и легко включать новые источники БД, либо целевые системы, включая процессы захвата и доставки данных, играет важную роль.
Динамическое определение таблиц
Чтобы не прерывать работу Хранилища оно проектируется с возможностью быстрой адаптации к возможным изменениям в базе данных. Определения исходной и целевой таблиц изменяются либо с появлением новых версий ПО, либо с изменением требований к емкости Хранилища. Динамическое задание схем таблиц возможно с помощью параметрических файлов. Таким образом можно вносить изменения в исходные или целевые таблицы для быстрого внесения изменений без модернизации ПО или устаревания систем.
Обратная связь
Активное Хранилище передает данные, если выполнены определенные условия или правила. Сложная операция может включать в себя обновление записей в OLTP. Например, система обнаружения мошенничеств может выделить подозрительные операции и изменить статус счета пользователя в Хранилище. Такое изменение статуса может отслеживаться инструментом интеграции и передаваться в соответствующую систему оперативной обработки транзакций. Обратная передача информации в OLTP-систему очень значительна для любых приложений замкнутого цикла, а также для одновременной посылки информации в среду отчетности, склады данных, резервные копии или другие целевые системы.
Комбинирование технологий
В задаче интеграции DW и OLTP возможно комбинирование TDM и ETL-процессов. В том числе для обработки данных в реальном времени, постоянном захвате и извлечении данных на транзакционном уровне. Средства TDM могут передавать данные в реальном времени в промежуточный уровень хранения целевой БД, где ETL-сервер будет перехватывать данные и, применив к ним преобразования, загружать в Хранилище. У такого подхода есть недостатки (в частности, дополнительная задержка и необходимость поддерживать ETL-сервер), однако они обоснованы, в случае если требования к преобразованию данных слишком сложны.
Преимущества в том, что новые транзакционные данные немедленно захватываются с очень малым эффектом по производительности на OLTP-систему (по сравнению с обычным ETL-процессом).
Преимущества
Ключевые преимущества инструментов интеграции:
- данные поступают в реальном времени, обеспечивая наиболее развитые возможности анализа;
- работа инструментов практически не сказываются на производительности среды,;
- устраняется пакетная обработка;
- поддерживаются большие объемы данных и гетерогенность;
- возможно совместное использование с уже внедренными ETL-инструментами, устраняется необходимость использования сервера промежуточного уровня;
- достигается исключительная гибкость, легко выполняется внедрение и поддержка;
- обеспечиваются широкие возможности восстановления и поддержки целостности данных.
За счет селективности инструментов, можно вернуться на шаг назад в любую точку, так как двунаправленные возможности синхронизации позволяют сохранять обе системы в активном и работоспособном состоянии.
Заключение
Прошли те времена, когда Хранилища предназначались только для отчетности, анализа и прогнозирования. Сегодня все больше компаний стремится к активным операционным Хранилищам, а поэтому важным требованием становится обмен данными между ХД и OLTP-средством - в реальном времени и с минимальной задержкой. Инструменты интеграции данных, в том числе TDM, дают возможность решения этой задачи.
Публикации
- Интеграция данных в реальном времени для Хранилища данных. Проектирование ХД не только для отчетности (Real-Time Data Integration for Data Warehousing: Designing a Data Warehouse for More Than Reporting), Апрель 2005, GoldenGate Software, http://jobfunctions.bnet.com/whitepaper.aspx?docid=165385.
- Хранилище данных в реальном времени. Обеспечение операционных и активных Хранилищ для развития возможностей Business Intelligence (Real-Time Data Warehousing Enabling Operational and Active Data Warehouses for Improved Business Intelligence), Август 2007, GoldenGate Software, http://viewer.bitpipe.com/viewer/viewDocument.do?accessId=6606014.
[1] Enterprise Application Integration - интеграция корпоративных приложений
Автор: По материалам зарубежных сайтов