Stretch Database

Область применения: SQL Server 2016 (13.x) и более поздних версий — только для Windows

Важно!

Stretch Database устарел в SQL Server 2022 (16.x) и База данных SQL Azure. Эта функция будет удалена в будущей версии ядро СУБД. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется.

Stretch Database прозрачно и безопасно переносит холодные данные в облако Microsoft Azure.

Если к работе с Stretch Database нужно приступить немедленно, см. статью Запуск мастера включения растяжения для базы данных.

Каковы преимущества Stretch Database?

Stretch Database предоставляет следующие преимущества.

  • Экономичный доступ к "холодным" данным. SQL Server Stretch Database позволяет динамически переносить горячие и холодные данные о транзакциях в Microsoft Azure. В отличие от обычного хранилища холодных данных ваши данные всегда будут подключены и доступны для запроса. Вы можете указать более длительный срок хранения данных без ущерба для больших таблиц, таких как история заказов клиента. Используйте недорогое хранилище Azure вместо того, чтобы масштабировать дорогое локальное хранилище. Выберите ценовую категорию и настройте параметры на портале Azure, чтобы контролировать стоимость и затраты. Увеличьте или уменьшите масштаб, если это необходимо. Дополнительные сведения см. на странице с ценами на SQL Server Stretch Database .

  • Не требует изменений в запросах или приложениях. Получите полный доступ к данным SQL Server, будь то локальным или распространенным на облако. Вы устанавливаете политику, которая определяет место хранения данных, а SQL Server обрабатывает перемещение данных в фоновом режиме. Вся таблица всегда подключена к сети и доступна для запросов. Кроме того, Stretch Database не требует изменений в существующих запросах или приложениях — место хранения данных абсолютно прозрачно для приложения.

  • Упрощает локальное обслуживание данных. Сократите объем локального обслуживания и хранилища данных. Резервные копии локальных данных выполняются быстрее и создаются в течение периода обслуживания. Резервные копии данных, хранящихся в облаке, создаются автоматически. При этом потребности в локальном хранилище значительно сокращаются. Хранилище Azure может стоить на 80 % дешевле, чем при добавлении на локальной SSD.

  • Защищает данные даже во время миграции. Обеспечьте себе душевное спокойствие, безопасно разместив наиболее важные приложения в облаке. Функция Always Encrypted SQL Server обеспечивает шифрование данных на ходу. Безопасность на уровне строк и другие дополнительные функции безопасности SQL Server также работают с Stretch Database, защищая ваши данные.

Что делает Stretch Database?

После того как вы включите Stretch Database для экземпляра SQL Server, базы данных и, как минимум, одной таблицы, она начнет автоматически переносить статистические данные в Azure.

  • Если холодные данные хранятся в отдельной таблице, эту таблицу можно перенести полностью.

  • Если таблица содержит как горячие, так и холодные данные, строки для переноса можно выбрать с помощью функции фильтров.

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

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

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

Diagram showing the Stretch Database overview.

Подходит ли вам Stretch Database?

Важно!

Stretch Database устарел в SQL Server 2022 (16.x) и База данных SQL Azure. Эта функция будет удалена в будущей версии ядро СУБД. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется.

Если у вас есть возможность выполнения следующих инструкций, Stretch Database может помочь вам выполнить требования и решить ваши проблемы.

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

Какие базы данных и таблицы подходят для Stretch Database?

Stretch Database ориентирована на транзакционные базы данных с большим объемом "холодных" данных, которые обычно хранятся в нескольких таблицах. Эти таблицы могут содержать более миллиарда строк.

Если в SQL Server вы используете функцию временной таблицы, Stretch Database позволит вам перенести всю связанную таблицу с данными за прошедшие периоды или ее часть в низкозатратное хранилище в Azure. Дополнительные сведения см. в статье Управление хранением данных журнала в темпоральных таблицах с системным управлением версиями.

Дополнительные сведения о возможных проблемах с блокировкой см. в статье Ограничения для Stretch Database.

Проверка Stretch Database

Важно!

Stretch Database устарел в SQL Server 2022 (16.x) и База данных SQL Azure. Эта функция будет удалена в будущей версии ядро СУБД. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется.

Применение Stretch Database на примере базы данных AdventureWorks. Чтобы получить образец базы данных AdventureWorks, скачайте по крайней мере файл базы данных и примеры сценариев здесь. После восстановления образца базы данных в экземпляре SQL Server 2016 распакуйте файлы образцов и откройте файл образцов базы данных Stretch в папке базы данных Stretch. Выполните сценарии в этом файле, чтобы проверить объем пространства, занимаемый данными, до и после включения Stretch Database, для отслеживания хода выполнения миграции данных. Убедитесь, что вы можете запрашивать существующие и вставлять новые данные во время и после миграции данных.

Следующие шаги