Перемещение данных в Управляемый экземпляр SQL
Многие миграции используют отрезок времени, в течение которого локальная и облачная база данных должны быть синхронизированы. Например, может быть отрезок времени, в течение которого клиенты могут вносить изменения в обе базы данных.
Вы перенесли базу данных спортивных розничных продуктов в Управляемый экземпляр SQL Azure. Веб-сайт уже использует облачную базу данных. Нужно начать перенастройку клиентов для использования новой базы данных. Вы решили перейти пользователей в новую систему в пакетах. Для каждой группы потребуется время на устранение проблем перед переносом следующих пользователей. Такой подход позволяет устранять неполадки и устранять проблемы, не нарушая одновременно всех пользователей. Далее необходимо перенастроить систему анализа данных для использования новой базы данных в Azure. В это время необходимо каждый час обеспечить синхронизацию облачных и локальных баз данных.
Вы изучите различные методы реализации синхронизации данных. Эти методы также можно использовать для выборочной миграции данных, если необходимо передать только подмножество таблиц. Эта гибкость позволяет более адаптированным подходом к миграции данных.
Варианты подключения к локальным серверам
Часто требуется хранить данные в локальных базах данных, синхронизированных с Управляемый экземпляр SQL Azure. Может потребоваться выполнить миграцию клиентских приложений в новую базу данных, например когда клиенты подключаются к обеим базам данных.
Прежде чем выбрать метод синхронизации данных, важно обеспечить безопасность подключения. Существует три разных варианта подключения для установления связи между локальными компьютерами и ресурсами в Azure.
- Точка — сеть. Подключение типа "точка — сеть" через VPN-шлюз позволяет создать безопасное подключение к виртуальной сети с отдельного клиентского компьютера.
- Сеть — сеть. VPN-шлюз типа «сеть — сеть» используется для подключения всей локальной сети к сети Azure.
- ExpressRoute. Azure ExpressRoute используется для создания частного подключения между центрами обработки данных Azure и инфраструктурой вашей локальной среды или среды для совместного размещения. Подключения ExpressRoute не осуществляются через общедоступный Интернет и обеспечивают повышенный уровень безопасности, надежности и быстродействия с низким уровнем задержки по сравнению с типичными подключениями через Интернет.
Общедоступная конечная точка
Общедоступная конечная точка для Управляемый экземпляр SQL помогает подключаться к базе данных из Интернета без использования VPN и предназначена только для обмена данными. Общедоступная конечная точка для данных может использоваться одновременно с частной конечной точкой. По соображениям безопасности при включении общедоступной конечной точки реализация позволяет разделить обязанности (SoD) между администратором базы данных и администратором сети.
Чтобы включить общедоступную конечную точку для управляемого экземпляра, требуется выполнить два действия. Для разделения обязанностей вам потребуются две отдельные роли со следующими разрешениями базы данных и сети, чтобы выполнить следующие действия.
- Администратор базы данных с разрешениями управления доступом на основе ролей в области Microsoft.Sql/managedInstances/* должен запустить скрипт PowerShell, чтобы включить общедоступную конечную точку для управляемого экземпляра.
- Администратор сети, имеющий разрешения на управление доступом на основе ролей в области Microsoft.Network/*, должен открыть порт 3342, используемый общедоступной конечной точкой в группе безопасности сети (NSG), и предоставить маршрут UDR, чтобы избежать асимметричной маршрутизации.
Выбор метода синхронизации
Для синхронизации данных из управляемого экземпляра База данных SQL с локальным сервером и обратно можно использовать множество методов.
Собственное резервное копирование и восстановление
Базу данных можно восстановить в Управляемый экземпляр SQL Azure из файла Хранилище BLOB-объектов Azure с помощью подписанного URL-адреса (SAS).
Это включает создание учетных данных с доступом к Хранилище BLOB-объектов Azure, а затем с помощью BACKUP DATABASE
команды с параметромCOPY_ONLY
. Если размер базы данных превышает 200 ГБ, можно использовать полостую резервную копию, предоставив несколько расположений URL-адресов.
BACKUP DATABASE YourDatabase TO URL = 'https://youraccount.blob.core.windows.net/yourcontainer/yourdatabase.bak' WITH COPY_ONLY
Чтобы восстановить базу данных в Управляемый экземпляр SQL, выполните следующие действия.
RESTORE DATABASE YourDatabase FROM URL = 'https://youraccount.blob.core.windows.net/yourcontainer/yourdatabase.bak'
Файл BACPAC с использованием SqlPackage
BACPAC-файл , по сути, является архивной версией метаданных и данных базы данных. Хотя этот метод развертывания совместим с База данных SQL, Управляемый экземпляр SQL не поддерживает миграцию через BACPAC в портал Azure. В качестве альтернативы служебная программа SQLPackage должна использоваться с BACPAC-файлом.
Программа массового копирования (BCP)
Программа BCP — это средство командной строки, которое экспортирует таблицы в файлы, чтобы их можно было импортировать. Используйте этот подход для миграции с одного База данных SQL на Управляемый экземпляр SQL и обратно.
Фабрика данных Azure (ADF)
Фабрика данных Azure создается для перемещения и оркестрации данных, при этом основное внимание уделяется приему. ADF поддерживает среду выполнения интеграции для запуска пакетов служб SSIS, а также общедоступную поддержку Интернета для Управляемый экземпляр SQL.
Репликация транзакций
Репликация транзакций — это способ перемещения данных между постоянно подключенными серверами баз данных.
Процесс начинается с моментального снимка объектов и данных базы данных публикации. После создания начального моментального снимка все последующие изменения данных или схемы издателя обычно доставляются в Управляемый экземпляр SQL Azure практически в режиме реального времени.
Управляемый экземпляр SQL является гибким, так как это может быть издатель, распространитель и подписчик.
Репликация — одна из нескольких технологий, позволяющих реплицировать части таблицы. Мы ссылаемся на эти части таблицы как статьи. Затем эти данные отправляются дистрибьютору, который является поставщиком данных любому количеству подписчиков.
Требования
- При подключении используется аутентификация SQL между участниками репликации.
- Общий ресурс учетной записи хранения Azure для рабочей папки, используемой для репликации.
- Откройте порт 445 (исходящий TCP) в правилах безопасности подсети управляемого экземпляра для доступа к общей папке Azure.
- Откройте порт 1433 (исходящий TCP), если издатель или распространитель находится в управляемом экземпляре, а подписчик находится в локальной среде.
Подключение приложений к управляемому экземпляру SQL
Управляемый экземпляр SQL должен размещаться в подсети виртуальной сети Azure, выделенной для управляемых экземпляров. Такое развертывание предоставляет защищенный частный IP-адрес и возможность подключения к локальным сетям.
Пользователи и клиентские приложения могут подключаться к базе данных управляемого экземпляра через портал Azure, PowerShell, Azure CLI и REST API.
Все взаимодействия шифруются и подписываются с использованием сертификатов. Для гарантии надежности взаимодействующих сторон управляемые экземпляры постоянно проверяют эти сертификаты с помощью списков отзыва сертификатов. Если сертификаты отозваны, управляемый экземпляр SQL закрывает подключения для защиты данных.