Хотите узнать больше о внутренностях AWS DMS (Служба переноса данных)?

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

Так что просто хотел узнать больше о том, как этот сервис работает внутри?

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

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

Мне нужно больше разъяснений по этому

3 ответа

Этот документ содержит обзор высокого уровня работы DMS:

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

  • Создайте сервер репликации.

  • Создайте исходную и целевую конечные точки, которые имеют информацию о подключении к вашим хранилищам данных.

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

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

Принцип работы DMS CDC зависит от исходной базы данных и часто требует настройки исходной базы данных и параметров управления в задаче DMS.

Этот процесс работает путем сбора изменений в журналах базы данных с использованием собственного API ядра базы данных.

Каждый исходный механизм имеет особые требования к конфигурации для предоставления этого потока изменений определенной учетной записи пользователя. Большинству механизмов требуется дополнительная конфигурация, чтобы процесс захвата мог эффективно использовать данные изменений без потери данных. Например, Oracle требует добавления дополнительных журналов, а MySQL требует двоичного журналирования на уровне строк (журналирование бинов).

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

(Продолжить чтение по адресу: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Task.CDC.html).

Чтобы найти конкретную исходную базу данных, начните здесь, выберите свой источник и погрузитесь в детали.

Для сервера MsSQL:

  • Использование службы репликации sql
  • Использование захвата изменений данных

Когда вы активируете один из этих сервисов, в файле ldf будут созданы более подробные записи.

Работает в двух видах:

  1. Предотвращая усечение файла журнала, он непрерывно читает файл журнала и передает новые операции целевым объектам.
  2. Читает резервные копии транзакций и передает новые записи в места назначения

Проверьте это: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html

Другие вопросы по тегам