Область применения: SQL Server 2016 (13.x) и более поздних версий
PolyBase и связанные серверы
В следующей таблице показаны различия между возможностями PolyBase и связанного сервера.
PolyBase | Связанные серверы |
---|---|
Объект в области базы данных | Объект в области экземпляра |
Использует драйверы ODBC | Использует поставщики OLEDB |
Поддерживает операции только для чтения для всех источников данных и запись в некоторые внешние источники данных | Поддерживает как операции чтения, так и записи |
Запросы к удаленному источнику данных из одного соединения могут масштабироваться | Запросы к удаленному источнику данных из одного соединения не могут масштабироваться |
Поддерживается принудительная отправка предикатов | Поддерживается принудительная отправка предикатов |
Для группы доступности не требуется отдельная конфигурация | Для каждого экземпляра в группе доступности требуется отдельная конфигурация |
Только обычная проверка подлинности | Обычная и встроенная проверка подлинности |
Подходит для аналитических запросов с обработкой большого числа строк | Подходит для OLTP-запросов, возвращающих одну или несколько строк |
Запросы с использованием внешней таблицы не могут участвовать в распределенной транзакции | Распределенные запросы могут участвовать в распределенной транзакции |
Новые возможности PolyBase в SQL Server 2022?
SQL Server 2022 (16.x) теперь поддерживает ФАЙЛЫ CSV, Parquet и Delta, хранящиеся в учетной записи служба хранилища Azure версии 2, Azure Data Lake Storage 2-го поколения или любом хранилище объектов, совместимое с S3, с помощью REST API S3, локальной или в облаке.
SQL Server 2022 (16.x) теперь может использовать CREATE EXTERNAL TABLE as SELECT (CETAS), а также команды, такие как OPENROWSET, CREATE EXTERNAL TABLE (CET) и все новые улучшения T-SQL.
В настоящее время поддержка внешних источников данных Hadoop была удалена в SQL Server 2022 (16.x).
Накопительное обновление 2 для SQL Server 2022 (16.x) теперь предоставляет поддержку файлов TNS Oracle. Дополнительные сведения и примеры см. в статье CREATE EXTERNAL DATA SOURCE .
Дополнительные сведения о виртуализации данных с помощью PolyBase для SQL Server 2022 и ознакомьтесь с усовершенствованиями PolyBase SQL Server 2022.
Новые возможности PolyBase в SQL Server 2019?
PolyBase в SQL Server 2019 (15.x) теперь может считывать данные из большего количества источников данных. Данные из этих внешних источников данных можно хранить в виде внешних таблиц в SQL Server. PolyBase также поддерживает передачу вычислений pushdown в эти внешние источники данных, исключая универсальные типы ODBC.
Совместимые источники данных
- SQL Server
- Oracle;
- Teradata
- MongoDB
- Совместимые универсальные типы ODBC
Накопительное обновление 19 sql Server 2019 (15.x) теперь предоставляет поддержку файлов TNS Oracle. Дополнительные сведения и примеры см. в статье CREATE EXTERNAL DATA SOURCE .
Примечание.
PolyBase может разрешить подключение к внешним источникам данных с помощью сторонних драйверов ODBC. Эти драйверы не предоставляются вместе с PolyBase и могут не работать как положено. Дополнительные сведения см. в статье Настройка PolyBase для доступа к внешним данным с помощью универсальных типов ODBC.
Какие CONNECTION_OPTIONS можно указать для подключения к сторонним источникам данных?
Ознакомьтесь с CONNECTION_OPTIONS CREATE EXTERNAL DATA SOURCE (Transact-SQL) для поддерживаемых параметров подключения поставщика данных для SQL Server, Oracle, Teradata, API MongoDB для Cosmos DB и универсальных поставщиков данных ODBC.
Как просмотреть план выполнения удаленного запроса для вычисления pushdown PolyBase?
Это можно сделать несколькими способами в зависимости от версии SQL Server. См. раздел Устранение неполадок PolyBase: просмотр плана запроса PolyBase.
Как определить, происходит ли вычисление pushdown PolyBase?
См. раздел Как определить, произошел ли внешний pushdown.
Поддерживается ли PolyBase в База данных SQL Azure?
Нет, но вы можете запрашивать данные в файлах, размещенных на Хранилище BLOB-объектов Azure с помощью функции OPENROWSET, или использовать CREATE EXTERNAL TABLE для чтения из бессерверного пула SQL в Synapse Analytics. Дополнительные сведения см. в статье о том, как считывать файлы хранилища Azure Data Lake с помощью внешних таблиц Synapse SQL.
Поддерживается ли PolyBase в Управляемый экземпляр SQL Azure?
Управляемый экземпляр SQL Azure имеет собственные возможности виртуализации данных для Azure Data Lake служба хранилища (ADLS) и Хранилище BLOB-объектов Azure в качестве источников данных. Дополнительные сведения см. в статье о виртуализации данных с помощью Управляемый экземпляр SQL Azure.
Какие порты следует разрешить через брандмауэр для PolyBase?
Для PolyBase не нужно открывать дополнительные порты, если только не используется группа горизонтального увеличения масштаба PolyBase. В таком случае для службы PolyBase правила брандмауэра не должны требоваться.
На серверах Windows PolyBase будет использовать порты, используемые SQL Server (раздел IPAll параметров TCP/IP в диспетчере конфигурации SQL Server). Дополнительные сведения см. в статье Свойства TCP/IP. На серверах Linux PolyBase будет использовать параметр network.tcpport. Дополнительные сведения см. в разделе TCP-порт.
Если группа горизонтального увеличения масштаба PolyBase используется на нескольких серверах Windows, см. сведения о порте в следующем разделе.
Но для взаимодействия с различными внешними источниками данных, используемыми PolyBase, необходимо разрешить другие порты. См. документацию по конфигурации ODBC, конфигурации ресурсов Azure или документацию по используемым источникам данных. Например:
Исходная платформа | Ссылка |
---|---|
Microsoft SQL Server | Порты, используемые SQL Server |
Hortonworks HDP | Администрирование HDFS |
Cloudera CDH | Порты, используемые компонентами CDH |
Какие порты используются для группы горизонтального увеличения масштаба PolyBase?
По умолчанию служба перемещения данных PolyBase подключается к головному узлу группы горизонтального увеличения масштаба через диапазон TCP-портов 16450–16460 (обычно это порты 16450–16453), а также через порт 17001. Эти порты используются только при настройке группы горизонтального увеличения масштаба PolyBase и должны быть разрешены через брандмауэры сервера. Программа установки SQL Server должна автоматически создать локальное правило брандмауэра, разрешающее эти порты при установке компонентов. Дополнительные сведения см. в статье Настройка групп горизонтального увеличения масштаба PolyBase в Windows.
Примечание.
Поддержка для групп горизонтального увеличения масштаба Microsoft SQL Server PolyBase будет прекращена. Функции группы горизонтального масштабирования будут удалены из продукта в SQL Server 2022 (16.x).
PolyBase в Кластеры больших данных и PolyBase в автономных экземплярах
Дополнительные сведения о подключениях с помощью универсального соединителя ODBC см. в руководстве по настройке универсальных типов ODBC.
В следующей таблице перечислены функции PolyBase, доступные в автономном кластере данных SQL Server 2019 (15.x) и кластер больших данных SQL Server 2019 (15.x):
Компонент | Кластер больших данных | Изолированный экземпляр |
---|---|---|
Создание внешнего источника данных для SQL Server, Oracle, Teradata и Mongo DB | X | X |
Создание внешнего источника данных с помощью совместимого стороннего драйвера ODBC | X | |
Создание внешнего источника данных для источника данных Hadoop | X | X |
Создание внешнего источника данных для хранилища BLOB-объектов Azure | X | X |
Создание внешней таблицы в пуле данных SQL Server | X | |
Создание внешней таблицы в пуле хранилищ SQL Server | X | |
Масштабирование выполнения запроса | X | X (только Windows) |
Важно!
Поддержка надстройки "Кластеры больших данных" Microsoft SQL Server 2019 будет прекращена. Мы прекратим поддержку Кластеров больших данных SQL Server 2019 28 февраля 2025 г. Все существующие пользователи SQL Server 2019 с Software Assurance будут полностью поддерживаться на платформе, и программное обеспечение будет продолжать поддерживаться с помощью накопительных обновлений SQL Server до этого времени. Дополнительные сведения см. в записи блога объявлений и в статье о параметрах больших данных на платформе Microsoft SQL Server.