0

У любого есть идея, которая является наилучшим способом реализации непрерывной репликации некоторых таблиц DB из Azure SQL DB в Azure SQL DB (PaaS) инкрементным способом.Azure SQL DB для Azure SQL DB replication

Я попытался выполнить предварительный просмотр данных (схема не загружается даже после нескольких часов), Data Factory (Копировать данные) - Быстро, но он всегда копирует целые данные (дубликаты записей) - не инкрементным способом.

Просьба предложить.

+0

вы проверить это уже? https://blogs.msdn.microsoft.com/sql_server_team/transactional-replication-to-azure-sql-db-is-now-in-public-preview/ – Aravind

+0

@ Aravind, я проверил его, его между на-prem и Azure SQL (PaaS), –

+0

Мне нужна репликация между Azure SQL (PaaS) и Azure SQL (PaaS) –

ответ

0

Я могу для того чтобы достигнуть облака к облаку миграции с использованием данных синхронизации Preview из Azure ASM Portal Ниже приведены ограничения

  • Максимальное количество групп синхронизации любой базы данных может принадлежать: 5
  • символов, которые не могут используется в именах объектов: имена объектов (базы данных, таблицы, столбцы) не могут содержать период печатаемых символов (.), левую квадратную скобку ([) или правую квадратную скобку (]).

Supported limits on DB Dimensions

Ссылка: http://download.microsoft.com/download/4/E/3/4E394315-A4CB-4C59-9696-B25215A19CEF/SQL_Data_Sync_Preview.pdf

0

Если вы хотите использовать Azure Data Factory, чтобы сделать инкрементные обновления, вам нужно будет изменить свой запрос, чтобы посмотреть созданную/измененную дату в исходной таблице. Затем вы можете взять эти данные и поместить их в «промежуточную таблицу» на стороне назначения, а затем использовать сохраненную операцию proc для выполнения вашей вставки/обновления в «Реальная таблица» и, наконец, усечь промежуточную таблицу.

Надеюсь, это поможет.

1

Что такое требование бизнеса за этого запроса?

1 - У вас есть справочные данные в базе данных 1 и вы хотите реплицировать эти данные в базу данных 2?

Если это так, используйте запрос кросс-базы данных, если вы находитесь на одном логическом сервере. См. Мой article об этом для деталей.

2 - У вас есть дублирующая копия базы данных в другом регионе? Если это так, используйте активную георепликацию, чтобы синхронизировать базу данных. См. Мои article об этом для деталей.

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

Запланируйте программу в Azure Automation по выбору времени. Я бы использовал флаг, чтобы указать, какие записи были реплицированы.

Вставьте вставку в цель и обновите флаг источника в транзакции, чтобы гарантировать согласованность. Этот шаблон представляет собой строку из-за агонистической структуры строк.

Вы даже можете заказать записи. Изучите использование SQLBulkCopy в библиотеке system.data.sqlclient .Net.

4 - И последнее, но не менее важное: база данных Azure SQL теперь поддерживает команду OPENROWSET. К сожалению, эта функция является прочитанной только из шаблона файла памяти blob, когда вы находитесь в облаке.Более старые версии команды on premise позволяют вам записывать в файл.

Надеюсь, эти предложения помогут.

Счастливое кодирование.

Джон лукавых DBA

Смежные вопросы