Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Обновите выделенный пул SQL (ранее — хранилище данных SQL) до последнего поколения оборудования и архитектуры хранилища Azure.
Зачем выполнять обновление
Вы можете легко перейти на оптимизированный для вычислений выделенный пул SQL 2-го поколения (ранее — хранилище данных SQL) на портале Azure, если такая возможность поддерживается в вашем регионе. Если ваш регион не поддерживает самостоятельное обновление, можно перейти на поддерживаемый регион или дождаться, когда функция самостоятельного обновления станет доступна в вашем регионе. Выполните обновление сейчас, чтобы воспользоваться преимуществами последнего поколения оборудования Azure и усовершенствованной архитектуры хранилища, включая повышенную производительность, масштабируемость и неограниченное хранение по столбцам.
Внимание
Это обновление применимо к выделенным пулам SQL уровня Compute Optimized Gen1 (ранее SQL DW) в поддерживаемых регионах.
Перед началом
Проверьте, поддерживает ли ваш регион перенос хранилища 1-го поколения в хранилище 2-го поколения. Обратите внимание на даты автоматического переноса. Чтобы избежать конфликтов с автоматизированным процессом, запланируйте ручной перенос на дату, предшествующую дате запуска автоматизированного процесса.
Если вы находитесь в регионе, который еще не поддерживается, регулярно проверяйте, не был ли ваш регион добавлен в список поддерживаемых, или выполните обновление с помощью восстановления в поддерживаемый регион.
Если ваш регион не поддерживается, выполните обновление на портале Azure.
Выберите предлагаемый уровень производительности для выделенного пула SQL (ранее SQL DW) на основе текущего уровня производительности в категории Compute Optimized Gen1, используя приведенное ниже соответствие:
Compute Optimized Gen1 tier Compute Optimized Gen2 tier DW100 DW100c DW200 DW200c DW300 DW300c DW400 DW400c DW500 DW500c. DW600 DW500c. DW1000 DW1000c DW1200 DW1000c DW1500 DW1500c DW2000 DW2000c DW3000 DW3000c DW6000 DW6000c
Примечание.
Предлагаемые уровни производительности не являются прямым преобразованием. Например, мы рекомендуем перейти с DW600 на DW500c.
Обновление в поддерживаемом регионе с помощью портала Azure
- Миграцию из хранилища 1-го поколения в хранилище 2-го поколения на портале Azure невозможно отменить. Нет процедуры для возврата к первому поколению.
- Dedicated SQL pool (formerly SQL DW) must be running to migrate to Gen2
Перед началом
Примечание.
Мы рекомендуем использовать модуль Azure Az PowerShell для взаимодействия с Azure. Чтобы начать работу, см. статью Установка Azure PowerShell. Чтобы узнать, как перейти на модуль Az PowerShell, см. статью Перенос Azure PowerShell с AzureRM на Az.
- Войдите на портал Azure.
- Убедитесь, что выделенный пул SQL (ранее — SQL DW) запущен — это необходимо для выполнения миграции на Gen2.
Команды обновления PowerShell
If the Compute Optimized Gen1 tier dedicated SQL pool (formerly SQL DW) to be upgraded is paused, resume dedicated SQL pool (formerly SQL DW).
Будьте готовы к непродолжительному простою.
Определите все ссылки на код, связанные с уровнями производительности 1-го поколения "Оптимизировано для вычислений" и измените их на эквивалентный уровень производительности 2-го поколения "Оптимизировано для вычислений" Ниже представлены два примера, в которых нужно обновить ссылки на код перед обновлением:
Исходная команда PowerShell 1-го поколения:
Set-AzSqlDatabase -ResourceGroupName "myResourceGroup" -DatabaseName "mySampleDataWarehouse" -ServerName "mynewserver-20171113" -RequestedServiceObjectiveName "DW300"
Изменено на:
Set-AzSqlDatabase -ResourceGroupName "myResourceGroup" -DatabaseName "mySampleDataWarehouse" -ServerName "mynewserver-20171113" -RequestedServiceObjectiveName "DW300c"
Примечание.
-RequestedServiceObjectiveName "DW300" изменено на -RequestedServiceObjectiveName "DW300c"
Исходная команда T-SQL 1-го поколения:
ALTER DATABASE mySampleDataWarehouse MODIFY (SERVICE_OBJECTIVE = 'DW300') ;
Изменено на:
ALTER DATABASE mySampleDataWarehouse MODIFY (SERVICE_OBJECTIVE = 'DW300c') ;
Примечание.
SERVICE_OBJECTIVE = 'DW300' изменено на SERVICE_OBJECTIVE = 'DW300c'
Начало обновления
На портале Azure перейдите к оптимизированному для вычислений выделенному пулу SQL 1-го поколения (ранее — хранилище данных SQL). If the Compute Optimized Gen1 tier dedicated SQL pool (formerly SQL DW) to be upgraded is paused, resume dedicated SQL pool.
Select Upgrade to Gen2 card under the Tasks tab:
Примечание.
Если карта Повысить до Gen2 не отображается на вкладке "Задачи", для типа вашей подписки действуют ограничения в текущем регионе. Отправьте запрос в службу поддержки для утверждения вашей подписки.
Ensure your workload has completed running and quiesced before upgrading. Вы испытаете простой в течение нескольких минут, прежде чем ваш выделенный пул SQL (ранее SQL DW) снова станет доступен в качестве выделенного пула SQL уровня Compute Optimized Gen2 (ранее SQL DW).
Выберите Обновить.
Отслеживайте обновление, проверяя состояние в портале Azure. Скорее всего, появится баннер сообщения, указывающий на "Это хранилище данных обновляется до 2-го поколения".
Первым шагом процесса обновления является масштабирование ("Обновление — автономный режим"), при котором все сеансы будут прерваны, а соединение разорвано.
Второй шаг процесса обновления — перенос данных ("Обновление — в сети"). Перенос данных является малозаметным фоновым сетевым процессом. This process slowly moves columnar data from the old storage architecture to the new storage architecture using a local SSD cache. В течение этого времени выделенный пул SQL (ранее — хранилище данных SQL) будет подключен к сети для выполнения запросов и загрузки. При этом все данные будут доступны для запросов, вне зависимости от того, были ли они перенесены. Перенос данных происходит с разной скоростью в зависимости от их размера, уровня производительности и количества сегментов columnstore.
Дополнительная рекомендация. После завершения операции масштабирования можно ускорить фоновый процесс переноса данных. You can force data movement by running ALTER INDEX ... REBUILD on all primary columnstore tables you'd be querying at a larger SLO and resource class. This operation is offline, it will degrade or block other queries, but will finish faster compared to the trickle background process, which can take hours to complete depending on the number and sizes of your tables. Тем не менее после завершения этой операции перенос данных будет происходить намного быстрее благодаря новой улучшенной архитектуре хранилища с высококачественными группами строк.
Примечание.
Операция "Alter Index rebuild" — это автономная операция. Таблицы будут недоступны до завершения повторной сборки.
Следующий запрос создает необходимые ALTER INDEX ... REBUILD
команды для ускорения миграции данных:
SELECT 'ALTER INDEX [' + idx.NAME + '] ON ['
+ Schema_name(tbl.schema_id) + '].['
+ Object_name(idx.object_id) + '] REBUILD ' + ( CASE
WHEN (
(SELECT Count(*)
FROM sys.partitions
part2
WHERE part2.index_id
= idx.index_id
AND
idx.object_id =
part2.object_id)
> 1 ) THEN
' PARTITION = '
+ Cast(part.partition_number AS NVARCHAR(256))
ELSE ''
END ) + '; SELECT ''[' +
idx.NAME + '] ON [' + Schema_name(tbl.schema_id) + '].[' +
Object_name(idx.object_id) + '] ' + (
CASE
WHEN ( (SELECT Count(*)
FROM sys.partitions
part2
WHERE
part2.index_id =
idx.index_id
AND idx.object_id
= part2.object_id) > 1 ) THEN
' PARTITION = '
+ Cast(part.partition_number AS NVARCHAR(256))
+ ' completed'';'
ELSE ' completed'';'
END )
FROM sys.indexes idx
INNER JOIN sys.tables tbl
ON idx.object_id = tbl.object_id
LEFT OUTER JOIN sys.partitions part
ON idx.index_id = part.index_id
AND idx.object_id = part.object_id
WHERE idx.type_desc = 'CLUSTERED COLUMNSTORE';
Upgrade from an Azure geographical region using restore through the Azure portal
Создание определяемой пользователем точки восстановления с помощью портала Azure
- Войдите на портал Azure.
- Перейдите к выделенному пулу SQL (ранее — хранилище данных SQL), для которого необходимо создать точку восстановления.
- На панели инструментов страницы "Обзор" нажмите кнопку "Создать точку восстановления".
- Укажите имя точки восстановления.
Восстановление активной или приостановленной базы данных с помощью портала Azure
Войдите на портал Azure.
Перейдите к выделенному пулу SQL (ранее — хранилище данных SQL), из которого требуется выполнить восстановление.
На панели инструментов раздела "Обзор " выберите " Восстановить".
Выберите Точки автоматического восстановления или Пользовательские точки восстановления. Для пользовательских точек восстановления выберите имеющуюся точку восстановления или создайте новую. Для сервера выберите Создать, затем выберите сервер в географическом регионе, где поддерживается 2-е поколение.
Восстановление из географического региона Azure с помощью PowerShell
Примечание.
Мы рекомендуем использовать модуль Azure Az PowerShell для взаимодействия с Azure. Чтобы начать работу, см. статью Установка Azure PowerShell. Чтобы узнать, как перейти на модуль Az PowerShell, см. статью Перенос Azure PowerShell с AzureRM на Az.
Для восстановления базы данных используйте командлет Restore-AzSqlDatabase.
Примечание.
You can perform a geo-restore to Gen2! Для этого в качестве необязательного параметра укажите имя ServiceObjectiveName 2-го поколения (например, DW1000c).
- Откройте Windows PowerShell.
- Подключитесь к своей учетной записи Azure и выведите список всех подписок, связанных с ней.
- Выберите подписку, содержащую базу данных, которую нужно восстановить.
- Получите базу данных, которую требуется восстановить.
- Создайте запрос на восстановление для базы данных, указав ServiceObjectiveName 2-го поколения.
- Проверьте состояние геовосстановленной базы данных.
Connect-AzAccount
Get-AzSubscription
Select-AzSubscription -SubscriptionName "<Subscription_name>"
# Get the database you want to recover
$GeoBackup = Get-AzSqlDatabaseGeoBackup -ResourceGroupName "<YourResourceGroupName>" -ServerName "<YourServerName>" -DatabaseName "<YourDatabaseName>"
# Recover database
$GeoRestoredDatabase = Restore-AzSqlDatabase –FromGeoBackup -ResourceGroupName "<YourResourceGroupName>" -ServerName "<YourTargetServer>" -TargetDatabaseName "<NewDatabaseName>" –ResourceId $GeoBackup.ResourceID -ServiceObjectiveName "<YourTargetServiceLevel>" -RequestedServiceObjectiveName "DW300c"
# Verify that the geo-restored database is online
$GeoRestoredDatabase.status
Примечание.
Чтобы настроить базу данных после восстановления, см. раздел Настройка базы данных после восстановления.
The recovered database will be TDE-enabled if the source database is TDE-enabled.
Если у вас возникли проблемы с выделенным пулом SQL, создайте запрос в службу поддержки и укажите "Обновление до 2-го поколения" в качестве возможной причины.
Обновленный выделенный пул SQL (ранее — хранилище данных SQL) подключен к сети. Чтобы воспользоваться преимуществами расширенной архитектуры, ознакомьтесь с дополнительными сведениями о классах ресурсов.