О применении технологии Oracle Steam для решения задачи интеграции данных

Oracle Streams: репликация и интеграция информацииРассмотрены возможности технологии Oracle Streams в контексте интеграции на уровне данных. Приведены формы интеграции, соответствующие рассматриваемому уровню. Проведено обоснование выбора технологии БД. Описаны ключевые элементы архитектуры Oracle Streams, способные обеспечить реализацию соответствующих форм интеграции.

 


Оглавление статьи[Показать]


ВВЕДЕНИЕ

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

 

1. ИНТЕГРАЦИЯ ДАННЫХ

Интеграция - это процесс сближения, взаимопроникновения и образования взаимосвязей. В зависимости от возможностей ИС и решаемых задач интеграция может производиться на одном или нескольких уровнях [2] (см. таблицу).

В рамках данной статьи нас будет интересовать интеграция на уровне потоков данных, которая может принимать несколько форм: репликация (repli­cation); распространение (propagation); объединенные (federated).

Интеграция данных направлена на интеграцию систем баз данных и их содержимого.

Уровни интеграции

Уровень интеграции Перспектива Пример использования Компетенция специалистов
Данные Функциональная точка зрения Синхронизация каталога, синхронизация данных, скалярные и табличные определяемые пользователем функции Разработчики, администраторы баз данных
Приложения Функциональная точка зрения Создание хранимых процедур и процедур, определяемых пользователем, общая интеграция БД Разработчики
Бизнес-процессы Точка зрения бизнеса Моделирование, анализ, мониторинг и оптимизация бизнес-процессов Бизнес-аналитики, разработчики
Информация Точка зрения - интеллектуальные ресурсы предприятия Работа с различного вида информацией Аналитики информации, разработчики

 

2. ОБОСНОВАНИЕ ВЫБОРА ТЕХНОЛОГИИ БД

БД Oracle является центральной частью в нашем интеграционном решении. Для того чтобы обосновать причину такого выбора, необходимо тщательно рассмотреть ее возможности и функции. Вместо этого, по понятным причинам, в рамках данной статьи рассмотрим лишь основные параметры. Из множества качеств остановимся на тех, которые могут быть использованы как критерии в оценке БД Oracle [2]: индустриальная мощность; взаимосвязь с приложениями; способность к интеграции.

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

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

поставщиков реляционных баз данных. Во всех секторах информационной индустрии есть широко известные поставщики лучшего в отрасли программного обеспечения для управления цепочками поставок (supply chain manage­ment, SCM), планирования ресурсов предприятий (enterprise resource planning, ERP), управления взаимодействия с клиентами (customer relationship manage­ment, CRM), интеллектуальных ресурсов предприятия (business intelligence, BI) и приложений для электронной коммерции (eCommerce). Взаимодействие с пакетами программного обеспечения является основным элементом и ключевой особенностью систем реляционных баз данных.

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

Можно с уверенностью сказать, что БД Oracle обладает всеми перечисленными качествами.

 

3. ТЕХНОЛОГИЯ ORACLE STREAMS

Oracle Streams входит в состав сервера Oracle начиная с версии 9i. Она предлагает гибкую архитектуру, отвечающую широкому перечню требований к предоставлению данных. Oracle Streams включает возможность распространения данных, транзакций и событий внутри БД или из одной БД в другую/другие. Преимущества перед традиционными решениями позволяют пользователям Oracle Streams остановить свой выбор на едином решении и развернуть его, затратив меньшее количество временных и финансовых ресурсов [1]. Oracle Streams решает проблемы, связанные с взаимодействием в гетерогенной среде, объединяя все операции в рамках одного решения.

Гибкая архитектура Оracle Streams основана на трех элементах: захват (Capture); распространение (Propagation) и применение (Apply).

Основой первого элемента является Capture-процесс. Capture-процесс обеспечивает захват изменений БД (результат DML и DDL операций) из оперативных или архивных журналов (Redo logs), используя механизм утилиты LogMiner. Существует возможность гибкой настройки условий захвата (фильтрации). Захватываться могут, например, изменения только из определенных схем или таблиц, можно указывать тип DML-операций (insert, update, delete) или добавлять пользовательские функции фильтрации с более сложной логикой. Захваченные данные преобразуется в формат LCR. LCR (Logical Change Record) - это единица информации потока. В основе LCR лежит тип Oracle AnyData, самоописываемый тип на основе XML.

Для распространения LCR помещаются в поток, доставляющий их до БД- приемника. Для поддержки потоков Oracle Streams использует Oracle Advanced Queuing - систему обмена сообщениями на основе очередей. В один и тот же поток могут помещать свои элементы различные БД. В целевых узлах из этого потока будет извлечены только те элементы, которые необходимы данному узлу. Поток данных может течь как внутри одной БД, так и между различными БД.

Последний элемент представлен Apply-процессом. Он извлекает предназначенные для него LCR из потока и автоматически применяет их к БД как команды SQL. Причем команды SQL могут применяться как к таблицам и объектам локальной БД, так и через Database Link. И хотя Oracle Streams является частью сервера Oracle, существует возможность интеграций типа [1]: Oracle to Non-Oracle; Non-Oracle to Oracle; Non-Oracle to Non-Oracle.

Для этого разработана технология Oracle Transparent Gateway (Шлюз), позволяющая обращаться к объектам БД других производителей.

 

4. ORACLE STREAMS. ИНТЕГРАЦИЯ НА УРОВНЕ ДАННЫХ

Продемонстрируем, что Oracle Streams способна обеспечить интеграцию на уровне данных, в представленных выше формах.

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

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

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

  Формы интеграции данных

Рис.1 Формы интеграции данных

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

Использование таких сущностей, как «публикатор» и «подписчик», реализованных в Oracle Aadvanced Queuing, позволяет создавать гибкие конфигурации распространения данных. С использованием информации о подписчиках все LCR будут правильно маршрутизированы и автоматически растиражированы в необходимом количестве [4].

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

 

ЗАКЛЮЧЕНИЕ

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

  1. Urbano R. Oracle Streams Concepts and Administration, 10g Release 2 (10.2). Redwood Shores, 2005.
  2. Катлип Р., Медик Дж. DB2®: решение по интеграции. - М.: КУДИЦ- ОБРАЗ, 2005.
  3. Urbano R. Oracle® Streams Replication Administrator’s Guide 10g Release 2 (10.2). - Redwood Shores, 2005.
  4. Foch C.B. Oracle® Streams Advanced Queuing User's Guide and Reference 10g Release 2 (10.2). - Redwood Shores, 2005.

 

Авторы: 

Д.В. ПРЫТКОВ - Магистрант кафедры вычислительной техники

Е.В. РАБИНОВИЧ - Профессор кафедры вычислительной техники, д-р техн. наук

СБОРНИК НАУЧНЫХ ТРУДОВ НГТУ. - 2008. - № 4(54). - 83-88

Вас заинтересует / Intresting for you:

Технологии и решения Oracle в ...
Технологии и решения Oracle в ... 3004 просмотров Боба Sun, 07 Oct 2018, 07:26:27
Масштаб применения бизнес-прил...
Масштаб применения бизнес-прил... 4029 просмотров Administrator SU Sun, 07 Oct 2018, 08:53:10
Oracle Wallet - создаем защище...
Oracle Wallet - создаем защище... 5841 просмотров Antoniy Tue, 21 Nov 2017, 13:18:05
Интеграция Oracle Agile PLM c ...
Интеграция Oracle Agile PLM c ... 5957 просмотров Владимир Коханов Tue, 21 Nov 2017, 13:32:50
Печать
Войдите чтобы комментировать