Объединение гетерогенных данных

Изменения: 14 апреля 2006 г.

Во многих предприятиях и организациях в базах данных хранятся данные от многих поставщиков. Объединение этих данных часто является ключевым компонентом для обеспечения совместной работы систем в организации. Репликация позволяет объединять гетерогенные данные двумя способами:

  • Использовать Oracle в качестве источника данных, которые можно реплицировать в базы данных Microsoft SQL Server, IBM и Oracle.
  • Использовать SQL Server в качестве источника данных, которые можно реплицировать в базы данных IBM и Oracle.

Тип настройки репликации, используемой для объединения гетерогенных данных, зависит от источника и получателей данных:

  • На приведенной ниже схеме показана репликация данных из SQL Server в IBM DB2 и Oracle.
    Репликация данных в базы данных, отличные от SQL Server
  • На следующей схеме показана репликация данных из базы данных Oracle в другие базы данных. Данные вначале реплицируются в базу данных SQL Server, а затем их можно реплицировать в другие базы данных, включая SQL Server, IBM DB2 и Oracle.
    Репликация данных из Oracle

Пример компании Adventure Works Cycles

Adventure Works Cycles — это вымышленная производственная компания, которая используется для демонстрации концепций баз данных и сценариев работы с ними. Дополнительные сведения см. в разделе Примеры и образцы баз данных.

Компания Adventure Works Cycles недавно приобрела мексиканскую компанию Importadores Neptuno с целью расширения своей инфраструктуры и поддержки ожидаемого роста компании. Importadores Neptuno использует базу данных Oracle для хранения производственных и финансовых данных. Однако ключевые элементы данных необходимо использовать совместно для поддержания точных данных о расписаниях и запасах в приложении «Планирование производственных ресурсов» (MRP) Adventure Works Cycles.

Поскольку в настоящее время нет плана перемещения баз данных Importadores Neptuno, компании Adventure Works Cycles не нужно передавать и получать данные ежедневно и переносить эти сведения в существующие базы данных оперативной обработки транзакций SQL Server (OLTP) и интерактивной аналитической обработки (OLAP). Adventure Works Cycles будет реплицировать данные из базы данных Oracle в базы данных SQL Server в центральном офисе.

Общие требования для этого сценария

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

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

Типы репликации, доступные для использования в этом сценарии

SQL Server использует метафору издательского дела для описания компонентов системы репликации. Компоненты включают издатель, распространитель, подписчики, публикации, статьи и подписки.

  • На первой вышеприведенной схеме база данных Oracle является издателем. Некоторые или все данные из базы данных Oracle включаются в публикацию, при этом каждая таблица данных является статьей. Данные реплицируются в первую базу данных SQL Server (настроенную в качестве распространителя), затем распространяются в другую базу данных SQL Server, а также в базы данных IBM и Oracle. Каждая из этих баз данных является подписчиком публикации, получающим схему и данные в виде подписки.
  • На второй вышеприведенной схеме база данных SQL Server является издателем, а базы данных IBM и Oracle являются подписчиками.

Дополнительные сведения о компонентах системы см. в разделе Обзор модели публикации репликации.

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

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

По своей структуре репликация моментальных снимков и репликация транзакций выполняют основные требования этого сценария:

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

Репликация транзакций соответствует дополнительным требованиям систем, для которых требуются добавочные обновления:

  • небольшая задержка;
  • высокая пропускная способность.

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

Шаги по реализации этого сценария

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

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

См. также

Другие ресурсы

Репликация данных в серверной среде

Справка и поддержка

Получение помощи по SQL Server 2005