Общие сведения о внешних таблицах Azure SQL Server - PullRequest
0 голосов
/ 22 апреля 2019

Мы пытаемся создать кросс-запрос к базе данных, используя предварительный просмотр Azure Elastic Query.Поэтому мы будем создавать внешнюю таблицу, чтобы эти запросы выполнялись.

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

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

Версия внешних таблиц Oracle - это просто плоские файлы, на которые ссылаются. SQL * Loader загружает данные из внешних файлов в таблицы базы данных Oracle.Я не смог найти никаких документов о том, что Azure делает то же самое.(Это подразумевается, что они одинаковы? Это глупый вопрос?)

Если это так (внешние плоские файлы), когда обновляется внешняя таблица, обновляет ли SQL Server плоские файлы, чтобы нашвнешняя таблица остается актуальной?Или мне придется снова удалять / создавать ссылку каждый раз, когда я хочу выполнить запрос для получения актуальной информации?

1 Ответ

0 голосов
/ 23 апреля 2019

По поддержке Microsoft: эластичные запросы в основном работают как удаленные запросы, что означает, что данные не хранятся локально, а извлекаются из исходной базы данных каждый раз, когда вы запускаете запрос.Когда вы выполняете запрос к внешней таблице, он устанавливает соединение с исходной базой данных и получает данные.При этом вам не нужно удалять / создавать ссылки.Выполнив эти шаги, вы можете получить доступ к горизонтально разделенной таблице «mytable», как если бы это была локальная таблица.База данных SQL Azure автоматически открывает несколько параллельных подключений к удаленным базам данных, где физически хранятся таблицы, обрабатывает запросы к удаленным базам данных и возвращает результаты.

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

...