Рекомендуем, 2024

Выбор редакции

Разница между зеркалированием и репликацией

Зеркалирование и репликация - это термины, так или иначе связанные с копированием данных в СУБД. Предыдущее различие между зеркалированием и репликацией заключается в том, что зеркалирование относится к копированию базы данных в другое место, тогда как репликация включает в себя копирование данных и объектов базы данных из одной базы данных в другую базу данных.

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

Сравнительная таблица

Основа для сравненияЗеркальноекопирование
основнойСоздание копии базы данных в другом месте (машине).Создание данных и объекта базы данных для улучшения операций распределения.
Выполнены наБаза данныхТолько данные и объекты базы данных
Расположен наДругая машинаДругая база данных
СтоимостьОчень дорогонедорогой
Распределенная база данныхНет предоставления для поддержки распределенной базы данныхПоддерживает распределенную базу данных

Определение зеркального отражения

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

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

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

Определение репликации

Репликация - это процесс создания избыточных данных и объектов базы данных в разных базах данных для повышения доступности данных. Он способен объединять корпоративные данные с географически распределенных сайтов и распространять их среди удаленных пользователей в локальных сетях или Интернете. Это увеличивает выполнение параллельных команд.

На сервере Microsoft SQL издатель - это объект, который предоставляет данные для репликации на другие серверы. Подписчик - это сервер, который обычно получает реплицированные данные от издателя.

Существует три типа параметров, доступных на сервере Microsoft SQL для операции репликации: репликация моментальных снимков, репликация транзакций и репликация слиянием.

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

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

Основные различия между зеркалированием и репликацией

  1. Зеркальное отображение включает в себя дублирование базы данных, хранящейся на разных компьютерах, где исходная база данных называется основной базой данных, а скопированная база данных называется зеркалом. С другой стороны, репликация - это дублирование данных и объектов базы данных, хранящихся в другом месте, для повышения производительности базы данных распространителя.
  2. Зеркальное отображение выполняется в базе данных, а репликация - для данных и объектов базы данных.
  3. Зеркальная база данных обычно находится на другом компьютере, а не на его основной базе данных. В отличие от этого, реплицированные данные и объекты базы данных хранятся в другой базе данных.
  4. Зеркальное отображение базы данных стоит дороже, чем репликация.
  5. Зеркальное отображение не поддерживает распределенную среду, тогда как для распределенной базы данных была разработана репликация.

Заключение

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

Top